diff --git a/Test/TestChain/pom.xml b/Test/TestChain/pom.xml index d8170cd1..3a5f47c1 100644 --- a/Test/TestChain/pom.xml +++ b/Test/TestChain/pom.xml @@ -20,110 +20,127 @@ audit-sdk system 1.5.4 - - ${project.basedir}/src/main/resources/lib/audit-sdk-1.5.4-jar-with-dependencies.jar + ${project.basedir}/src/main/resources/lib/audit-sdk-1.6.0.jar + + + + io.netty + netty-tcnative-openssl-static + system + 2.0.39.Final + ${project.basedir}/src/main/resources/lib/netty-tcnative-openssl-static-2.0.39.Final.jar + + + + org.chainmaker.sdk + shanghai + system + 1.0.0 + ${project.basedir}/src/main/resources/lib/chainmaker-sdk-2.3.2.jar + + org.bouncycastle bcpkix-jdk15on 1.60 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + ch.qos.logback + logback-classic + 1.2.3 + + + + org.apache.commons + commons-pool2 + 2.11.1 + + + + org.yaml + snakeyaml + 1.33 + + + + + commons-collections + commons-collections + 3.2.2 + + + io.netty + netty-handler + 4.1.53.Final + + + io.grpc + grpc-api + 1.40.1 + + + io.grpc + grpc-netty + 1.40.1 + + + io.grpc + grpc-stub + 1.40.1 + + + io.grpc + grpc-protobuf + 1.40.1 + + + + org.apache.commons + commons-lang3 + 3.14.0 + + + + cn.hutool + hutool-core + 5.8.18 + + + + com.alibaba + fastjson + 2.0.32 + + + + + com.github.houbb + sensitive-word + 0.16.1 + + + + com.googlecode.aviator + aviator + 5.4.1 + + + + org.apache.httpcomponents + httpmime + 4.5.14 + + + + org.web3j + abi + 5.0.0 + - - - - org.springframework.boot - spring-boot-maven-plugin - - - \ No newline at end of file diff --git a/Test/TestChain/src/main/java/com/renchao/Demo01.java b/Test/TestChain/src/main/java/com/renchao/Demo01.java index 684a8c30..b40daa79 100644 --- a/Test/TestChain/src/main/java/com/renchao/Demo01.java +++ b/Test/TestChain/src/main/java/com/renchao/Demo01.java @@ -5,109 +5,162 @@ import cn.dreamdt.audit.domain.ChainMessage; import cn.dreamdt.audit.domain.MessageBean; import cn.dreamdt.audit.main.DataAudit; import cn.dreamdt.audit.maker.chain.ChainConsumer; -import cn.dreamdt.audit.util.AuditUtil; import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import io.netty.handler.ssl.OpenSsl; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStreamReader; +import java.lang.reflect.Field; +import java.net.MalformedURLException; import java.net.URL; -import java.nio.charset.StandardCharsets; -import java.security.Security; -import java.util.ArrayList; -import java.util.Enumeration; import java.util.HashMap; import java.util.Map; + /** * @author ren_chao */ public class Demo01 { // uniTrust.clientDid private static final String CLIENT_DID = "did:unitrust:6r5eR9TPcSNRCGYjfEsDxbXjm9Cm"; + public static void main(String[] args) { + + // setParent(Demo01.class.getClassLoader()); + + DataAudit dataAudit = DataAudit.create(AuditConfig.builder() .appCode("jtktph").appKey("240710105317v53eyAsWrsQRXYYAMWm").serverUrl("https://116.128.191.6:2031/DreamWeb") .logFilePath("C:\\Users\\RENCHAO\\Desktop\\temp-sss\\log").chainConsumer(new MyChainConsumerImpl()).build()); + dataAudit.subscribeChain(null,null,null); // 数据上链 测试数据 JSONObject bizData = new JSONObject(); - bizData.put("behaviorId", "00570000000000000000121"); + bizData.put("behaviorId", "20240701798445635972400"); bizData.put("platformCid", "did:unitrust:6r5eR9TPcSNRCGYjfEsDxbXjm9Cm"); bizData.put("ccid", "did:unitrust:7CXMdXzSmNrGk3mWPe9jpsHg2HmU"); bizData.put("sceneCode", "77"); bizData.put("startTime", "2024-07-05 16:43:52"); - bizData.put("endTime", "2024-07-05 16:43:52"); + // bizData.put("endTime", "2024-07-05 16:43:52"); + // bizData.put("endTime", ""); bizData.put("tripDistance", "5544.000"); bizData.put("hashData", "5f89452b52a9df1fe0060c8ac3de5b6ffea3e6855cf307db31ac0359d67d7888"); - bizData.put("state", "1"); + bizData.put("state", 1); //调用合约 MessageBean messageBean = dataAudit.invoke("CAMC", "saveAssetData", bizData,"00570000000000000000121"); - System.out.println("=========================\n"); - System.out.println(messageBean); - System.out.println("\n========================="); - System.out.println("=============json============\n"); System.out.println(JSON.toJSONString(messageBean)); System.out.println("\n========================="); Map map = new HashMap<>(); - map.put("behaviorId", "00570000000000000000121"); + map.put("behaviorId", "20240701798445635972400"); // 失败的 + // map.put("behaviorId", "00571000000000000000126"); // 成功d MessageBean query = dataAudit.query("CAMC", "findAssetData", map); + // MessageBean query = dataAudit.query("CAMC", "findAssetData", "17e38900edca0112ca9f2132c60492a758760b1099c8451dbcdf8d666cf447ba"); System.out.println("=============query============\n"); System.out.println(query); System.out.println("\n========================="); // 数据批量上链 测试数据 - JSONArray bizDataArray = new JSONArray(); - JSONObject bizData1 = new JSONObject(); - bizData1.put("behaviorId", "00470000000000000000171"); - bizData1.put("platformCid", "did:unitrust:6r5eR9TPcSNRCGYjfEsDxbXjm9Cm"); - bizData1.put("ccid", "did:unitrust:7CXMdXzSmNrGk3mWPe9jpsHg2HmU"); - bizData1.put("sceneCode", "77"); - bizData1.put("startTime", "2024-07-05 16:43:52"); - bizData1.put("endTime", "2024-07-05 16:43:52"); - bizData1.put("tripDistance", "5544.000"); - bizData1.put("hashData", "099513e015663a8b1d9183a8beae1ccb286893092e597669ca015dee9a8a89ee"); - bizData1.put("state", "1"); - bizDataArray.add(bizData1); - - - JSONObject bizData2 = new JSONObject(); - bizData2.put("behaviorId", "00470000000000000000125"); - bizData2.put("platformCid", "did:unitrust:6r5eR9TPcSNRCGYjfEsDxbXjm9Cm"); - bizData2.put("ccid", "did:unitrust:7CXMdXzSmNrGk3mWPe9jpsHg2HmU"); - bizData2.put("sceneCode", "77"); - bizData2.put("startTime", "2024-07-05 16:43:52"); - bizData2.put("endTime", "2024-07-05 16:43:52"); - bizData2.put("tripDistance", "5544.000"); - bizData2.put("hashData", "fd238cf96c983d68684e17c867d01192355df3f12bb69a954300b4ed608b61cf"); - bizData2.put("state", "1"); - bizDataArray.add(bizData2); + // JSONArray bizDataArray = new JSONArray(); + // JSONObject bizData1 = new JSONObject(); + // bizData1.put("behaviorId", "00470000000000000000171"); + // bizData1.put("platformCid", "did:unitrust:6r5eR9TPcSNRCGYjfEsDxbXjm9Cm"); + // bizData1.put("ccid", "did:unitrust:7CXMdXzSmNrGk3mWPe9jpsHg2HmU"); + // bizData1.put("sceneCode", "77"); + // bizData1.put("startTime", "2024-07-05 16:43:52"); + // bizData1.put("endTime", "2024-07-05 16:43:52"); + // bizData1.put("tripDistance", "5544.000"); + // bizData1.put("hashData", "099513e015663a8b1d9183a8beae1ccb286893092e597669ca015dee9a8a89ee"); + // bizData1.put("state", "1"); + // bizDataArray.add(bizData1); + // + // + // JSONObject bizData2 = new JSONObject(); + // bizData2.put("behaviorId", "00470000000000000000125"); + // bizData2.put("platformCid", "did:unitrust:6r5eR9TPcSNRCGYjfEsDxbXjm9Cm"); + // bizData2.put("ccid", "did:unitrust:7CXMdXzSmNrGk3mWPe9jpsHg2HmU"); + // bizData2.put("sceneCode", "77"); + // bizData2.put("startTime", "2024-07-05 16:43:52"); + // bizData2.put("endTime", "2024-07-05 16:43:52"); + // bizData2.put("tripDistance", "5544.000"); + // bizData2.put("hashData", "fd238cf96c983d68684e17c867d01192355df3f12bb69a954300b4ed608b61cf"); + // bizData2.put("state", "1"); + // bizDataArray.add(bizData2); + // + // //调用合约 + // ArrayList bizIndexList = new ArrayList<>(); + // bizIndexList.add("00470000000000000000171"); + // bizIndexList.add("00470000000000000000125"); + // + // MessageBean messageBean2 = dataAudit.batchInvoke("CAMC", "findAssetData", bizDataArray, bizIndexList); + + while (true) { + System.out.println("===================="); + try { + Thread.sleep(1000); + } catch (InterruptedException e) { + e.printStackTrace(); + } + } - //调用合约 - ArrayList bizIndexList = new ArrayList<>(); - bizIndexList.add("00470000000000000000171"); - bizIndexList.add("00470000000000000000125"); - MessageBean messageBean2 = dataAudit.batchInvoke("CAMC", "findAssetData", bizDataArray, bizIndexList); + } + + private static void setParent(ClassLoader classLoader) { + try { + Field parent = ClassLoader.class.getDeclaredField("parent"); + parent.setAccessible(true); + CustomClassLoader loader = new CustomClassLoader(classLoader.getParent()); + parent.set(classLoader,loader); + } catch (Exception e) { + e.printStackTrace(); + } + } + + + + public static class CustomClassLoader extends ClassLoader { + + public CustomClassLoader(ClassLoader parent) { + super(parent); + } + + @Override + public URL getResource(String name) { + + try { + if (name.endsWith("sdk_config.yml") + || name.endsWith("crypto.yml") + || name.endsWith("OrgSignCert.crt") + || name.endsWith("SignCert.crt") + || name.endsWith("SignKey.key") + || name.endsWith("TlsCert.crt") + || name.endsWith("TlsKey.key")) { + return new URL("file:C:/Users/RENCHAO/Desktop/temp-sss/cc/" + name); + } + } catch (MalformedURLException e) { + e.printStackTrace(); + } + return getParent().getResource(name); + } + + + @Override + public Class loadClass(String name) throws ClassNotFoundException { + return getParent().loadClass(name); + } } static class MyChainConsumerImpl implements ChainConsumer { @Override public void onMessage(ChainMessage chainMessage) { - System.out.println("============回掉结果=============\n\n"); - System.out.println(chainMessage); - System.out.println("\n\n========================="); - System.out.println("============回掉结果json=============\n\n"); + System.out.println("============回调结果json=============\n"); System.out.println(JSON.toJSONString(chainMessage)); - System.out.println("\n\n========================="); + System.out.println("\n========================="); } } diff --git a/Test/TestChain/src/main/java/com/renchao/Demo02.java b/Test/TestChain/src/main/java/com/renchao/Demo02.java new file mode 100644 index 00000000..63e22e76 --- /dev/null +++ b/Test/TestChain/src/main/java/com/renchao/Demo02.java @@ -0,0 +1,77 @@ +package com.renchao; + +import java.io.BufferedReader; +import java.io.FileReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.lang.reflect.Field; +import java.net.MalformedURLException; +import java.net.URL; +import java.net.URLClassLoader; +import java.nio.file.Path; +import java.nio.file.Paths; + +/** + * @author ren_chao + */ +public class Demo02 { + public static void main(String[] args) throws IOException { + String root = "./abc/dd/"; + String file = "tt.txt"; + + Path path = Paths.get(root, file); + System.out.println(path.toString()); + + + // setParent(Demo02.class.getClassLoader()); + // + // + // URL resource = Demo02.class.getClassLoader().getResource("crypto.yml"); + // + // + // try(InputStream inputStream = resource.openStream(); + // BufferedReader br = new BufferedReader(new InputStreamReader(inputStream))) { + // String line; + // while ((line = br.readLine()) != null) { + // System.out.println(line); + // } + // + // } + // System.out.println(resource); + } + + + private static void setParent(ClassLoader classLoader) { + + try { + Field parent = ClassLoader.class.getDeclaredField("parent"); + parent.setAccessible(true); + CustomClassLoader loader = new CustomClassLoader(classLoader.getParent()); + parent.set(classLoader,loader); + } catch (Exception e) { + e.printStackTrace(); + } + } + + + public static class CustomClassLoader extends ClassLoader { + + public CustomClassLoader(ClassLoader parent) { + super(parent); + } + + @Override + public URL getResource(String name) { + try { + if ("crypto.yml".equals(name)) { + return new URL("file:C:/Users/RENCHAO/Desktop/temp-sss/bb/" + name); + } + } catch (MalformedURLException e) { + e.printStackTrace(); + } + return super.getResource(name); + } + + } +} diff --git a/Test/TestChain/src/main/resources/cert/zxzj/org/OrgSignCert.crt b/Test/TestChain/src/main/resources/cert/org/OrgSignCert.crt similarity index 100% rename from Test/TestChain/src/main/resources/cert/zxzj/org/OrgSignCert.crt rename to Test/TestChain/src/main/resources/cert/org/OrgSignCert.crt diff --git a/Test/TestChain/src/main/resources/cert/user/EncTlsCert.crt b/Test/TestChain/src/main/resources/cert/user/EncTlsCert.crt new file mode 100644 index 00000000..df13d09b --- /dev/null +++ b/Test/TestChain/src/main/resources/cert/user/EncTlsCert.crt @@ -0,0 +1,21 @@ +-----BEGIN CERTIFICATE----- +MIIDbzCCAxagAwIBAgIQWKQdbIzXXGI0HyTMVQqaSDAKBggqgRzPVQGDdTCBhzEL +MAkGA1UEBhMCQ04xMzAxBgNVBAoMKuW4guWkp+aVsOaNruS4reW/gy3nm5HnrqHp +k74uY20tMzl1cWhoazloMzELMAkGA1UECwwCY2ExNjA0BgNVBAMMLWNhLuW4guWk +p+aVsOaNruS4reW/gy3nm5HnrqHpk74uY20tMzl1cWhoazloMzAeFw0yNDA0MDMw +NTIxNTRaFw0yOTA0MDIwNTIxNTRaMIHCMQswCQYDVQQGEwJDTjEPMA0GA1UECAwG +5LiK5rW3MQ8wDQYDVQQHDAbkuIrmtbcxMzAxBgNVBAoMKuW4guWkp+aVsOaNruS4 +reW/gy3nm5HnrqHpk74uY20tMzl1cWhoazloMzEOMAwGA1UECxMFYWRtaW4xTDBK +BgNVBAMMQ+Wkp+aVsOaNruS4reW/g+euoeeQhuWRmC3luILlpKfmlbDmja7kuK3l +v4Mt55uR566h6ZO+LmNtLTM5dXFoaGs5aDMwWTATBgcqhkjOPQIBBggqgRzPVQGC +LQNCAARRDwc9DKv7hy24Zn6tdnaK7vJjFSHK7Y/OZW6jx8RoE5E/AzcxtmBYtHMr +B10cuTs/aEnqtI7sIO5bnkLFzEx0o4IBJTCCASEwHQYDVR0OBBYEFAVn3B0+DHsp +6b4mPtaqOjbzNZk9MA4GA1UdDwEB/wQEAwIDODAJBgNVHRMEAjAAMB8GA1UdIwQY +MBaAFJSwbf0W4Y1mITjqfSm22chUqkK0MEEGCCsGAQUFBwEBBDUwMzAxBggrBgEF +BQcwAYYlaHR0cDovL29zY3AxLmJsb2NrY2hhaW4uc2guY2Vnbi5jbi92MTA+BgNV +HR8ENzA1MDOgMaAvhi1odHRwOi8vbGRhcDEuYmxvY2tjaGFpbi5zaC5jZWduLmNu +L3YxL2FsbC5jcmwwQQYDVR0gBDowODA2BggqgRyG7zqBFTAqMCgGCCsGAQUFBwIB +FhxodHRwOi8vd3d3LnNoZWNhLmNvbS9wb2xpY3kvMAoGCCqBHM9VAYN1A0cAMEQC +ID2SIp0MsD7ImramHmazo6gjQdLxq5hUILVsFRUMz8+pAiAHCdZ6OwASFamka0Bn +rdfj97z29ERgrsJ6gSnL2D9Meg== +-----END CERTIFICATE----- diff --git a/Test/TestChain/src/main/resources/cert/user/EncTlsKey.key b/Test/TestChain/src/main/resources/cert/user/EncTlsKey.key new file mode 100644 index 00000000..269c01df --- /dev/null +++ b/Test/TestChain/src/main/resources/cert/user/EncTlsKey.key @@ -0,0 +1,6 @@ +-----BEGIN PRIVATE KEY----- +MIGTAgEAMBMGByqGSM49AgEGCCqBHM9VAYItBHkwdwIBAQQg2e6nVOJwcfqXZO20 +OK+4SAbLlIqoivBGTGHUuge9FaagCgYIKoEcz1UBgi2hRANCAARRDwc9DKv7hy24 +Zn6tdnaK7vJjFSHK7Y/OZW6jx8RoE5E/AzcxtmBYtHMrB10cuTs/aEnqtI7sIO5b +nkLFzEx0 +-----END PRIVATE KEY----- \ No newline at end of file diff --git a/Test/TestChain/src/main/resources/cert/zxzj/user/SignCert.crt b/Test/TestChain/src/main/resources/cert/user/SignCert.crt similarity index 100% rename from Test/TestChain/src/main/resources/cert/zxzj/user/SignCert.crt rename to Test/TestChain/src/main/resources/cert/user/SignCert.crt diff --git a/Test/TestChain/src/main/resources/cert/zxzj/user/SignKey.key b/Test/TestChain/src/main/resources/cert/user/SignKey.key similarity index 100% rename from Test/TestChain/src/main/resources/cert/zxzj/user/SignKey.key rename to Test/TestChain/src/main/resources/cert/user/SignKey.key diff --git a/Test/TestChain/src/main/resources/cert/zxzj/user/TlsCert.crt b/Test/TestChain/src/main/resources/cert/user/TlsCert.crt similarity index 100% rename from Test/TestChain/src/main/resources/cert/zxzj/user/TlsCert.crt rename to Test/TestChain/src/main/resources/cert/user/TlsCert.crt diff --git a/Test/TestChain/src/main/resources/cert/zxzj/user/TlsKey.key b/Test/TestChain/src/main/resources/cert/user/TlsKey.key similarity index 100% rename from Test/TestChain/src/main/resources/cert/zxzj/user/TlsKey.key rename to Test/TestChain/src/main/resources/cert/user/TlsKey.key diff --git a/Test/TestChain/src/main/resources/lib/chainmaker-sdk-java-2.3.2.jar00 b/Test/TestChain/src/main/resources/lib/chainmaker-sdk-java-2.3.2.jar00 new file mode 100644 index 00000000..ed8e7a28 Binary files /dev/null and b/Test/TestChain/src/main/resources/lib/chainmaker-sdk-java-2.3.2.jar00 differ diff --git a/Test/TestChain/src/main/resources/lib/chainmaker-sdk-java-2.3.2.jar44 b/Test/TestChain/src/main/resources/lib/chainmaker-sdk-java-2.3.2.jar44 new file mode 100644 index 00000000..e2a2e1d5 Binary files /dev/null and b/Test/TestChain/src/main/resources/lib/chainmaker-sdk-java-2.3.2.jar44 differ diff --git a/Test/TestChain/src/main/resources/sdk_config.yml b/Test/TestChain/src/main/resources/sdk_config.yml index 2ab47fb6..f3bfcb39 100644 --- a/Test/TestChain/src/main/resources/sdk_config.yml +++ b/Test/TestChain/src/main/resources/sdk_config.yml @@ -1,20 +1,24 @@ enableRemoteConfig: false #是否启用远程配置 logLevel: fine #日志级别 info error +version: v2 chainConfigList: - # 链ID chainId: "ZW_C8458AD_002" # 组织ID orgId: "测试514-碳普惠测试链2.cm-l7wv90h523" #组织证书路径 - orgCrtPath: "cert/zxzj/org/OrgSignCert.crt" + orgCrtPath: "cert/org/OrgSignCert.crt" # 客户端用户交易私钥路径 - userTlsKeyPath: "cert/zxzj/user/TlsKey.key" + userTlsKeyPath: "cert/user/TlsKey.key" # 客户端用户交易证书路径 - userTlsCrtPath: "cert/zxzj/user/TlsCert.crt" + userTlsCrtPath: "cert/user/TlsCert.crt" # 客户端用户交易签名私钥路径(若未设置,将使用user_key_file_path) - userSignKeyPath: "cert/zxzj/user/SignKey.key" + userSignKeyPath: "cert/user/SignKey.key" # 客户端用户交易签名证书路径(若未设置,将使用user_crt_file_path) - userSignCrtPath: "cert/zxzj/user/SignCert.crt" + userSignCrtPath: "cert/user/SignCert.crt" + + userEncTlsKeyPath: "cert/user/EncTlsKey.key" + userEncTlsCrtPath: "cert/user/EncTlsCert.crt" # grpc客户端最大接受容量(MB) rpcMaxReceiveMessageSize: 32 # 交易结果是否订阅获取 @@ -24,11 +28,13 @@ chainConfigList: caConfigPath: "crypto.yml" nodeList: - # 节点地址,格式为:IP:端口:连接数,有两个端口,使用rpc的端口 - addr: "116.128.190.190:9020" + addr: "116.128.191.6:2032" +# addr: "116.128.190.190:9020" # 节点连接数 connectCount: 10 # RPC连接是否启用双向TLS认证 enableTls: true # TLS hostname tlsHostName: "consensus1-69vkhheorg.cm-l7wv90h523" + chainTlsHostName: "consensus1-69vkhheorg.cm-l7wv90h523" diff --git a/agile-bacth/agile-batch-service/pom.xml b/agile-bacth/agile-batch-service/pom.xml index 1978510f..38338404 100644 --- a/agile-bacth/agile-batch-service/pom.xml +++ b/agile-bacth/agile-batch-service/pom.xml @@ -194,7 +194,6 @@ false - src/main/resources/libx BOOT-INF/lib/ diff --git a/carbon-dataprocess/carbon-dataprocess-api/pom.xml b/carbon-dataprocess/carbon-dataprocess-api/pom.xml index 0f7cd754..f0c40629 100644 --- a/carbon-dataprocess/carbon-dataprocess-api/pom.xml +++ b/carbon-dataprocess/carbon-dataprocess-api/pom.xml @@ -3,7 +3,7 @@ com.jiuyv.sptcc carbon-dataprocess - 0.4.2-SNAPSHOT + 0.4.4-SNAPSHOT carbon-dataprocess-api diff --git a/carbon-dataprocess/carbon-dataprocess-api/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/api/CarbonDataApi.java b/carbon-dataprocess/carbon-dataprocess-api/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/api/CarbonDataApi.java index 5487419b..c3906cc5 100644 --- a/carbon-dataprocess/carbon-dataprocess-api/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/api/CarbonDataApi.java +++ b/carbon-dataprocess/carbon-dataprocess-api/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/api/CarbonDataApi.java @@ -1,5 +1,6 @@ package com.jiuyv.sptcc.carbon.dataprocess.api; +import com.jiuyv.sptcc.carbon.dataprocess.dto.ReqChainResultDTO; import com.jiuyv.sptcc.carbon.dataprocess.dto.ReqSignResultDTO; import com.jiuyv.sptcc.carbon.dataprocess.dto.ResultDTO; import org.springframework.web.bind.annotation.PostMapping; @@ -19,4 +20,10 @@ public interface CarbonDataApi { */ @PostMapping(PREFIX + "/sign") ResultDTO signResult(@RequestBody ReqSignResultDTO signResultDTO); + + /** + * 上链结果回调 + */ + @PostMapping(PREFIX + "/chainResult") + ResultDTO chainResultCallback(@RequestBody ReqChainResultDTO chainResultDTO); } diff --git a/carbon-dataprocess/carbon-dataprocess-api/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/dto/ReqChainResultDTO.java b/carbon-dataprocess/carbon-dataprocess-api/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/dto/ReqChainResultDTO.java new file mode 100644 index 00000000..31c5ce8a --- /dev/null +++ b/carbon-dataprocess/carbon-dataprocess-api/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/dto/ReqChainResultDTO.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.carbon.dataprocess.dto; + +import java.io.Serializable; + +/** + * @author ren_chao + */ +public class ReqChainResultDTO implements Serializable { + private static final long serialVersionUID = 1L; + private String txId; + + public String getTxId() { + return txId; + } + + public void setTxId(String txId) { + this.txId = txId; + } +} diff --git a/carbon-dataprocess/carbon-dataprocess-service/pom.xml b/carbon-dataprocess/carbon-dataprocess-service/pom.xml index 681aa99e..a94d85e7 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/pom.xml +++ b/carbon-dataprocess/carbon-dataprocess-service/pom.xml @@ -4,7 +4,7 @@ com.jiuyv.sptcc carbon-dataprocess - 0.4.2-SNAPSHOT + 0.4.4-SNAPSHOT carbon-dataprocess-service @@ -87,15 +87,6 @@ spring-boot-starter-security - - org.springframework.boot - spring-boot-starter-cache - - - com.github.ben-manes.caffeine - caffeine - - org.springframework.boot spring-boot-configuration-processor diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/DataProcessProperties.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/DataProcessProperties.java new file mode 100644 index 00000000..d67e78bf --- /dev/null +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/DataProcessProperties.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.carbon.dataprocess.config; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +/** + * @author ren_chao + */ +@Component +@ConfigurationProperties(prefix = "carbon-data-process") +public class DataProcessProperties { + /** + * 是否开启上链 + */ + private boolean enableUpChain = true; + + public boolean getEnableUpChain() { + return enableUpChain; + } + + public void setEnableUpChain(boolean enableUpChain) { + this.enableUpChain = enableUpChain; + } +} diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/FeignConfiguration.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/FeignConfiguration.java index cb74c87d..7a0daef9 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/FeignConfiguration.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/FeignConfiguration.java @@ -1,19 +1,27 @@ package com.jiuyv.sptcc.carbon.dataprocess.config; import com.jiuyv.sptcc.carbon.dataprocess.exception.ServiceException; -import feign.Logger; import feign.codec.ErrorDecoder; +import org.apache.commons.io.IOUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import java.io.IOException; +import java.nio.charset.StandardCharsets; + /** * @author ren_chao */ @Configuration public class FeignConfiguration { + private static final Logger LOGGER = LoggerFactory.getLogger(FeignConfiguration.class); + + @Bean - Logger.Level feignLoggerLevel() { - return Logger.Level.FULL; + feign.Logger.Level feignLoggerLevel() { + return feign.Logger.Level.FULL; } @@ -23,6 +31,16 @@ public class FeignConfiguration { */ @Bean public ErrorDecoder errorDecoder() { - return (methodKey, response) -> new ServiceException("系统服务调用异常"); + return (methodKey, response) -> { + String res; + try { + res = IOUtils.toString(response.body().asReader(StandardCharsets.UTF_8)); + } catch (IOException e) { + LOGGER.info("读取服务调用异常body出错", e); + res = ""; + } + LOGGER.info("Feign服务{}调用异常:{}", methodKey, res); + return new ServiceException("系统服务调用异常:" + res); + }; } } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/SmsProperties.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/SmsProperties.java new file mode 100644 index 00000000..feb0860d --- /dev/null +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/config/SmsProperties.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.carbon.dataprocess.config; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @author ren_chao + */ +@Component +@ConfigurationProperties(prefix = "sms") +public class SmsProperties { + private boolean enable = false; + private String sendUrl; + private List phoneList; + + public boolean isEnable() { + return enable; + } + + public void setEnable(boolean enable) { + this.enable = enable; + } + + public String getSendUrl() { + return sendUrl; + } + + public void setSendUrl(String sendUrl) { + this.sendUrl = sendUrl; + } + + public List getPhoneList() { + return phoneList; + } + + public void setPhoneList(List phoneList) { + this.phoneList = phoneList; + } +} diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/controller/CarbonDataController.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/controller/CarbonDataController.java index c9b66662..82c00288 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/controller/CarbonDataController.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/controller/CarbonDataController.java @@ -3,8 +3,10 @@ package com.jiuyv.sptcc.carbon.dataprocess.controller; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.jiuyv.sptcc.carbon.dataprocess.api.CarbonDataApi; +import com.jiuyv.sptcc.carbon.dataprocess.dto.ReqChainResultDTO; import com.jiuyv.sptcc.carbon.dataprocess.dto.ReqSignResultDTO; import com.jiuyv.sptcc.carbon.dataprocess.dto.ResultDTO; +import com.jiuyv.sptcc.carbon.dataprocess.service.IDataAuditService; import com.jiuyv.sptcc.carbon.dataprocess.service.ISignResultService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -21,11 +23,15 @@ public class CarbonDataController implements CarbonDataApi { private static final Logger LOGGER = LoggerFactory.getLogger(CarbonDataController.class); private final ISignResultService signResultService; + private final IDataAuditService dataAuditService; private final ObjectMapper objectMapper; - public CarbonDataController(ISignResultService signResultService, ObjectMapper objectMapper) { + public CarbonDataController(ISignResultService signResultService, + IDataAuditService dataAuditService, + ObjectMapper objectMapper) { this.signResultService = signResultService; + this.dataAuditService = dataAuditService; this.objectMapper = objectMapper; } @@ -40,6 +46,15 @@ public class CarbonDataController implements CarbonDataApi { return ResultDTO.success(); } + /** + * 上链结果回调 + */ + @Override + public ResultDTO chainResultCallback(ReqChainResultDTO chainResultDTO) { + dataAuditService.callback(chainResultDTO.getTxId()); + return ResultDTO.success(); + } + private String objectToString(Object o) { try { diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/controller/TestController.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/controller/TestController.java index 0afc7e72..4c124543 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/controller/TestController.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/controller/TestController.java @@ -1,67 +1,29 @@ package com.jiuyv.sptcc.carbon.dataprocess.controller; -import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.carbon.dataprocess.domain.BcCalcFactor; import com.jiuyv.sptcc.carbon.dataprocess.exception.ServiceException; +import com.jiuyv.sptcc.carbon.dataprocess.feign.SmsSendFeign; import com.jiuyv.sptcc.carbon.dataprocess.service.ICalculateReductionService; +import com.jiuyv.sptcc.carbon.dataprocess.service.IDataAuditService; import com.jiuyv.sptcc.carbon.dataprocess.service.IPushReductionService; import com.jiuyv.sptcc.carbon.dataprocess.service.IReadFileService; import com.jiuyv.sptcc.carbon.dataprocess.service.ISignResultService; -import io.netty.buffer.ByteBuf; -import io.netty.buffer.ByteBufAllocator; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.validation.annotation.Validated; +import org.springframework.beans.factory.support.DefaultSingletonBeanRegistry; +import org.springframework.context.ApplicationContext; import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; -import sun.net.www.protocol.https.Handler; - -import javax.net.ssl.HostnameVerifier; -import javax.net.ssl.HttpsURLConnection; -import javax.net.ssl.KeyManager; -import javax.net.ssl.SSLContext; -import javax.net.ssl.SSLSession; -import javax.net.ssl.SSLSocketFactory; -import javax.net.ssl.TrustManager; -import javax.net.ssl.X509TrustManager; -import javax.validation.Constraint; -import javax.validation.ConstraintValidator; -import javax.validation.ConstraintValidatorContext; -import javax.validation.Payload; -import javax.validation.constraints.Email; -import javax.validation.constraints.Max; -import javax.validation.constraints.Min; -import javax.validation.constraints.NotBlank; -import java.io.BufferedReader; -import java.io.IOException; -import java.io.InputStream; -import java.io.InputStreamReader; -import java.io.OutputStream; -import java.lang.annotation.Documented; -import java.lang.annotation.Retention; -import java.lang.annotation.Target; -import java.net.HttpURLConnection; -import java.net.URL; -import java.security.KeyManagementException; -import java.security.NoSuchAlgorithmException; -import java.security.SecureRandom; -import java.security.cert.CertificateException; -import java.security.cert.X509Certificate; + +import java.lang.reflect.Field; import java.text.DecimalFormat; -import java.util.Arrays; -import java.util.Base64; -import java.util.HashSet; -import java.util.Set; -import java.util.concurrent.locks.Condition; -import java.util.concurrent.locks.ReentrantLock; -import java.util.stream.Collectors; - -import static java.lang.annotation.ElementType.*; -import static java.lang.annotation.ElementType.TYPE_USE; -import static java.lang.annotation.RetentionPolicy.RUNTIME; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.HashMap; +import java.util.Map; /** * @author ren_chao @@ -83,14 +45,12 @@ public class TestController { private ISignResultService signResultService; @Autowired - private ObjectMapper objectMapper; - + private IDataAuditService dataAuditService; + @Autowired + private SmsSendFeign smsSendFeign; - @GetMapping("test000") - public String test000(@RequestParam("date") String date) { - // readFileService.readFileAndInsertDatabase(date); - return "OK!!!"; - } + @Autowired + private ApplicationContext applicationContext; @GetMapping("test00") public String test00(@RequestParam("date") String date) { @@ -123,117 +83,58 @@ public class TestController { } - @PostMapping("/test44") - public String test44(@Validated(GroupA.class) @RequestBody User user) { - - return "GroupA OK!!!"; - } - - - @PostMapping("/test55") - public String test55(@Validated(GroupB.class) @RequestBody User user) { - - return "GroupB OK!!!"; - } - @GetMapping("/test66") public String test66() { - + dataAuditService.upChain(); return "OK OK OK!!!"; } - public static class User { - - @NotBlank(message = "名称不能为空", groups = GroupA.class) - private String name; - - @Email(message = "email格式不正确", groups = GroupB.class) - private String email; - - @Max(message = "年龄必须小于100", value = 100) - @Min(message = "年龄必须大于5", value = 5) - private Integer age; - - @ListValue(message = "请输入0或1", values = {0, 1}, groups = {GroupA.class, GroupB.class}) - private Integer sex; - - public String getName() { - return name; - } - - public void setName(String name) { - this.name = name; - } - - public String getEmail() { - return email; - } - - public void setEmail(String email) { - this.email = email; - } - - public Integer getAge() { - return age; - } - - public void setAge(Integer age) { - this.age = age; - } - - public Integer getSex() { - return sex; - } - - public void setSex(Integer sex) { - this.sex = sex; - } + @GetMapping("/test77") + public String test77() { + dataAuditService.queryUpChainResult(); + return "OK OK OK!!!"; } + @GetMapping("/test888") + public String test888(@RequestParam("sms") String sms, @RequestParam("code") String code, @RequestParam("phoneNo") String phoneNo) { + System.out.println("================================="); + System.out.println(sms); + System.out.println(code); + System.out.println(phoneNo); + System.out.println("================================="); - @Documented - // 指定校验器 - @Constraint(validatedBy = {ListValueConstraintValidator.class}) - @Target({METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE}) - @Retention(RUNTIME) - public @interface ListValue { - String message() default "请输入指定的值!"; - - Class[] groups() default {}; - - Class[] payload() default {}; + return smsSendFeign.send(phoneNo, sms, code); - int[] values() default {}; } - public static class ListValueConstraintValidator implements ConstraintValidator { - private final Set set = new HashSet<>(); - // 初始化方法 - @Override - public void initialize(ListValue constraintAnnotation) { - set.addAll(Arrays.stream(constraintAnnotation.values()).boxed().collect(Collectors.toList())); - } + public static void main(String[] args) { + BcCalcFactor calcFactor = new BcCalcFactor(); + calcFactor.setEnd(LocalDateTime.parse("20240801000000", REQ_SDF)); + calcFactor.setStart(LocalDateTime.parse("20240820000000", REQ_SDF)); - // 校验逻辑,value就是需要校验的值 - @Override - public boolean isValid(Integer value, ConstraintValidatorContext context) { - return set.contains(value); + long l = System.currentTimeMillis(); + for (int i = 0; i < 20000; i++) { + getCalcFactor("20240809000000", calcFactor); } - } + System.out.println(":::" + (System.currentTimeMillis() - l)); - interface GroupA { } - interface GroupB { - } + private static final DateTimeFormatter REQ_SDF = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); + private static BcCalcFactor getCalcFactor(String intoTransTime, BcCalcFactor calcFactor) { - public static void main(String[] args) throws InterruptedException { - final Base64.Decoder decoder = Base64.getDecoder(); - final byte[] aa = decoder.decode("dW5tYXJzaGFsIGFyZ3MgZXJyb3I6IGludmFsaWQgY2hhcmFjdGVyICciJyBhZnRlciBhcnJheSBlbGVtZW50"); - System.out.println(new String(aa)); + LocalDateTime time = LocalDateTime.parse(intoTransTime, REQ_SDF); + if (calcFactor == null || time.isAfter(calcFactor.getEnd()) || time.isBefore(calcFactor.getStart())) { + if (calcFactor == null) { + LOGGER.error("未查询到排放因子数据:{}", intoTransTime); + throw new ServiceException("未查询到排放因子数据"); + } + } + return calcFactor; } + } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/domain/BcCalcFactor.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/domain/BcCalcFactor.java index c230fc52..c7e66f21 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/domain/BcCalcFactor.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/domain/BcCalcFactor.java @@ -1,6 +1,7 @@ package com.jiuyv.sptcc.carbon.dataprocess.domain; import java.io.Serializable; +import java.time.LocalDateTime; /** * @@ -41,16 +42,13 @@ public class BcCalcFactor implements Serializable { */ private String factor; - /** - * - */ private String startTime; - /** - * - */ private String endTime; + private LocalDateTime start; + private LocalDateTime end; + public Long getFactorId() { return factorId; } @@ -122,4 +120,20 @@ public class BcCalcFactor implements Serializable { public void setEndTime(String endTime) { this.endTime = endTime; } + + public LocalDateTime getStart() { + return start; + } + + public void setStart(LocalDateTime start) { + this.start = start; + } + + public LocalDateTime getEnd() { + return end; + } + + public void setEnd(LocalDateTime end) { + this.end = end; + } } \ No newline at end of file diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/domain/BcTravelNotice.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/domain/BcTravelNotice.java index 24982544..a3cb8c76 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/domain/BcTravelNotice.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/domain/BcTravelNotice.java @@ -152,14 +152,15 @@ public class BcTravelNotice implements Serializable { /** * 上链状态 * INIT:提交上链, - * AUDIT_FAILED:稽核规则校验失败, - * UP_CHAIN_FAILED:上链失败失败, - * SUCCESS:上链成功 + * AUDIT_SUCCESS("调用合约成功"), + * AUDIT_FAILED("调用合约失败"), + * CHAIN_SUCCESS("上链成功"), + * CHAIN_FAILED("上链失败"); */ private String chainStatus; /** - * 上链ID + * 上链事务ID */ private String chainTxId; @@ -215,7 +216,7 @@ public class BcTravelNotice implements Serializable { private Integer sendCount; /** - * 签发结果,-1:抽检不通过,1:已签发,2: ?动签发不通过,3:??签发不通过 + * 签发结果,-1:抽检不通过,1:已签发,2: 自动签发不通过,3:人工签发不通过 */ private Integer signStatus; diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/enums/ChainStatusEnum.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/enums/ChainStatusEnum.java index f7aff50e..fe4a0ad2 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/enums/ChainStatusEnum.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/enums/ChainStatusEnum.java @@ -6,10 +6,11 @@ package com.jiuyv.sptcc.carbon.dataprocess.enums; * @author ren_chao */ public enum ChainStatusEnum { - INIT("提交上链"), - AUDIT_FAILED("稽核规则校验失败"), - UP_CHAIN_FAILED("上链失败失败"), - SUCCESS("上链成功"); + INIT("初始化"), + AUDIT_SUCCESS("调用合约成功"), + AUDIT_FAILED("调用合约失败"), + CHAIN_SUCCESS("上链成功"), + CHAIN_FAILED("上链失败"); private final String msg; diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/feign/SmsSendFeign.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/feign/SmsSendFeign.java new file mode 100644 index 00000000..c45731c5 --- /dev/null +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/feign/SmsSendFeign.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.carbon.dataprocess.feign; + +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 短信发送 + * + * @author ren_chao + */ +@FeignClient(url = "${sms.sendUrl}", name = "msgSendFeign") +public interface SmsSendFeign { + @GetMapping + String send(@RequestParam("phoneNo") String phoneNo, @RequestParam("sms") String sms, @RequestParam("code") String code); +} diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/mapper/BcTravelNoticeMapper.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/mapper/BcTravelNoticeMapper.java index f9f8e5b2..61a45ad9 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/mapper/BcTravelNoticeMapper.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/mapper/BcTravelNoticeMapper.java @@ -6,6 +6,7 @@ import org.apache.ibatis.annotations.Param; import java.util.List; import java.util.Map; +import java.util.Set; /** * 针对表【TBL_BC_TRAVEL_NOTICE】的数据库操作Mapper @@ -15,16 +16,14 @@ import java.util.Map; @Mapper public interface BcTravelNoticeMapper { - int insert(BcTravelNotice record); + int updateBySeqNo(BcTravelNotice travelNotice); - BcTravelNotice selectBySeqNo(@Param("seqNo") Long seqNo); + List selectPageByStatus(@Param("status") String status, + @Param("chainStatus") String chainStatus, + @Param("start") Integer start, + @Param("end") Integer end); - int updateBySeqNo(BcTravelNotice record); - - List selectPageByStatus(@Param("status") String status, @Param("start") Integer start, - @Param("count") Integer count); - - Integer selectCountByStatus(@Param("status") String status); + Integer selectCountByStatus(@Param("status") String status, @Param("chainStatus") String chainStatus); List selectListByBatchNo(@Param("batchNo") String batchNo); @@ -33,7 +32,28 @@ public interface BcTravelNoticeMapper { List selectPageBySignStatus(@Param("signStatus") Integer signStatus, @Param("start") Integer start, @Param("count") Integer count); - Long selectCountByFileName(@Param("fileName") String fileName); + List selectTravelNoticeList(Map queryMap); + + int selectCountByFileName(@Param("fileName") String fileName); + + void updateChainStatusByTxId(@Param("chainStatus") String chainStatus, @Param("txId") String txId); + + int updateChainStatusByTravelNos(@Param("list") List list, + @Param("chainStatus") String chainStatus, + @Param("txId") String txId); + + int updateStatusBySeqNos(@Param("list") List list, + @Param("status") String status, + @Param("batchNo") String batchNo); + + Integer selectTxIdCountByChainStatus(@Param("chainStatus") String chainStatus); + + List selectTxIdLimitByChainStatus(@Param("chainStatus") String chainStatus, + @Param("count") Integer count); + + void batchInsert(List list); + + Set selectTravelNoListByTravelNoList(@Param("list") List list); - List selectTravelNoticePage(Map queryMap); + void updateBatchBySeqNo(@Param("list") List list); } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/quartz/CarbonDataTask.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/quartz/CarbonDataTask.java index 66da0a20..87bc9448 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/quartz/CarbonDataTask.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/quartz/CarbonDataTask.java @@ -1,7 +1,10 @@ package com.jiuyv.sptcc.carbon.dataprocess.quartz; +import com.jiuyv.sptcc.carbon.dataprocess.config.SmsProperties; import com.jiuyv.sptcc.carbon.dataprocess.exception.ServiceException; +import com.jiuyv.sptcc.carbon.dataprocess.feign.SmsSendFeign; import com.jiuyv.sptcc.carbon.dataprocess.service.ICalculateReductionService; +import com.jiuyv.sptcc.carbon.dataprocess.service.IDataAuditService; import com.jiuyv.sptcc.carbon.dataprocess.service.IPushReductionService; import com.jiuyv.sptcc.carbon.dataprocess.service.IReadFileService; import com.jiuyv.sptcc.carbon.dataprocess.service.ISignResultService; @@ -10,6 +13,9 @@ import com.xxl.job.core.handler.annotation.XxlJob; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; + +import java.util.List; /** * xxl任务调度入口 @@ -18,20 +24,31 @@ import org.springframework.stereotype.Component; @Component public class CarbonDataTask { private static final Logger LOGGER = LoggerFactory.getLogger(CarbonDataTask.class); + private static final String CODE = "utf-8"; private final IReadFileService readFileService; private final ICalculateReductionService calculateReductionService; private final IPushReductionService pushReductionService; private final ISignResultService signResultService; + private final IDataAuditService dataAuditService; + + private final SmsSendFeign smsSendFeign; + private final SmsProperties smsProperties; public CarbonDataTask(IReadFileService readFileService, ICalculateReductionService calculateReductionService, IPushReductionService pushReductionService, - ISignResultService signResultService) { + ISignResultService signResultService, + IDataAuditService dataAuditService, + SmsSendFeign smsSendFeign, + SmsProperties smsProperties) { this.readFileService = readFileService; this.calculateReductionService = calculateReductionService; this.pushReductionService = pushReductionService; this.signResultService = signResultService; + this.dataAuditService = dataAuditService; + this.smsSendFeign = smsSendFeign; + this.smsProperties = smsProperties; } /** @@ -56,12 +73,15 @@ public class CarbonDataTask { @XxlJob(value = "readFileTask") public void readFileTask() { try { - readFileService.readFileAndInsertDatabase(XxlJobHelper.getJobParam()); + int count = readFileService.readFileAndInsertDatabase(XxlJobHelper.getJobParam()); + smsSend("中台数据读取成功,记录数:" + count); } catch (ServiceException e) { LOGGER.error(e.getMessage(), e); + smsSend("中台数据读取异常:" + e.getMessage()); throw e; } catch (Exception e) { LOGGER.error("未知异常", e); + smsSend("中台数据读取异常:" + e.getMessage()); throw e; } } @@ -115,4 +135,50 @@ public class CarbonDataTask { } } + /** + * 上链 + */ + @XxlJob(value = "upChainTask") + public void upChainTask() { + try { + dataAuditService.upChain(); + } catch (ServiceException e) { + LOGGER.error(e.getMessage(), e); + throw e; + } catch (Exception e) { + LOGGER.error("未知异常", e); + throw e; + } + } + + /** + * 上链结果查询 + */ + @XxlJob(value = "queryUpChainResultTask") + public void queryUpChainResultTask() { + try { + dataAuditService.queryUpChainResult(); + } catch (ServiceException e) { + LOGGER.error(e.getMessage(), e); + throw e; + } catch (Exception e) { + LOGGER.error("未知异常", e); + throw e; + } + } + + private void smsSend(String sms) { + List phoneList = smsProperties.getPhoneList(); + if (smsProperties.isEnable() && !CollectionUtils.isEmpty(phoneList)) { + for (String phone : phoneList) { + String res = smsSendFeign.send(phone, sms, CODE); + if ("success".equals(res)) { + LOGGER.info("短信发送成功,手机[{}],消息[{}]", phone, sms); + } else { + LOGGER.error("短信发送失败:[{}]", res); + } + } + } + } + } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/ICalculateReductionService.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/ICalculateReductionService.java index ecc61d57..9fa63d4d 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/ICalculateReductionService.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/ICalculateReductionService.java @@ -1,8 +1,5 @@ package com.jiuyv.sptcc.carbon.dataprocess.service; -import com.jiuyv.sptcc.carbon.pushgate.dto.GResultDTO; -import com.jiuyv.sptcc.carbon.pushgate.dto.reduction.ResBatchComputationDTO; - /** * 计算碳减排量 * @@ -15,8 +12,4 @@ public interface ICalculateReductionService { */ void calculate(); - /** - * 更新 - */ - void updateReduction(GResultDTO resultDTO); } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IDataAuditService.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IDataAuditService.java index d373213d..38e46351 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IDataAuditService.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IDataAuditService.java @@ -1,9 +1,7 @@ package com.jiuyv.sptcc.carbon.dataprocess.service; -import com.jiuyv.sptcc.carbon.pushgate.dto.GResultDTO; -import com.jiuyv.sptcc.carbon.pushgate.dto.chain.ChainInfoDTO; - import java.util.List; +import java.util.Map; /** * @author ren_chao @@ -18,13 +16,11 @@ public interface IDataAuditService { /** * 接收区块链系统回调 更新上链结果 */ - void callback(); + void callback(String txId); /** * 主动查询一直没有回调的数据 */ void queryUpChainResult(); - - void updateReduction(GResultDTO> resultDTO); } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IPushReductionService.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IPushReductionService.java index af91837b..47018bf8 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IPushReductionService.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IPushReductionService.java @@ -17,8 +17,4 @@ public interface IPushReductionService { */ void escalation(); - /** - * 更新状态 - */ - void updateStatus(List bcTravelNoticeList, String status, String currentTime, String batchNo); } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IReadFileService.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IReadFileService.java index f87da693..6926e710 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IReadFileService.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/IReadFileService.java @@ -9,10 +9,11 @@ public interface IReadFileService { /** * 读取文件并插入数据库 */ - void readFileAndInsertDatabase(String dateStr); + int readFileAndInsertDatabase(String dateStr); /** * 获取里程数据 */ void getDictionary(); + } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/CalculateReductionServiceImpl.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/CalculateReductionServiceImpl.java index 588b3305..0bbd982f 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/CalculateReductionServiceImpl.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/CalculateReductionServiceImpl.java @@ -1,7 +1,14 @@ package com.jiuyv.sptcc.carbon.dataprocess.service.impl; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; import com.jiuyv.sptcc.carbon.dataprocess.domain.BcTravelNotice; +import com.jiuyv.sptcc.carbon.dataprocess.domain.BusSpotCheck; +import com.jiuyv.sptcc.carbon.dataprocess.domain.SubwaySpotCheck; import com.jiuyv.sptcc.carbon.dataprocess.enums.CarbonDataEnum; +import com.jiuyv.sptcc.carbon.dataprocess.enums.ChainStatusEnum; +import com.jiuyv.sptcc.carbon.dataprocess.enums.IndustryCodeEnum; import com.jiuyv.sptcc.carbon.dataprocess.exception.ServiceException; import com.jiuyv.sptcc.carbon.dataprocess.feign.CarbonDataProcessFeign; import com.jiuyv.sptcc.carbon.dataprocess.mapper.BcTravelNoticeMapper; @@ -12,13 +19,16 @@ import com.jiuyv.sptcc.carbon.pushgate.dto.GResultDTO; import com.jiuyv.sptcc.carbon.pushgate.dto.reduction.BatchComputationReqVo; import com.jiuyv.sptcc.carbon.pushgate.dto.reduction.ResBatchComputationDTO; import com.jiuyv.sptcc.carbon.pushgate.dto.reduction.ResComputationDTO; +import org.bouncycastle.crypto.digests.SM3Digest; +import org.bouncycastle.util.encoders.Hex; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; +import java.nio.charset.StandardCharsets; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -36,16 +46,20 @@ public class CalculateReductionServiceImpl implements ICalculateReductionService private final CarbonDataProcessFeign carbonDataProcessFeign; - private final ICalculateReductionService calculateReductionService; + /** + * 单独给 原始数据使用,如果需要特殊配置,直接配置这个objectMapper + */ + private final ObjectMapper objectMapper; public CalculateReductionServiceImpl(BcTravelNoticeMapper travelNoticeMapper, SysDateMapper sysDateMapper, - CarbonDataProcessFeign carbonDataProcessFeign, - @Lazy ICalculateReductionService calculateReductionService) { + CarbonDataProcessFeign carbonDataProcessFeign) { this.travelNoticeMapper = travelNoticeMapper; this.sysDateMapper = sysDateMapper; this.carbonDataProcessFeign = carbonDataProcessFeign; - this.calculateReductionService = calculateReductionService; + this.objectMapper = new ObjectMapper(); + objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); + objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); } @@ -54,13 +68,22 @@ public class CalculateReductionServiceImpl implements ICalculateReductionService */ @Override public synchronized void calculate() { - Integer count = travelNoticeMapper.selectCountByStatus(CarbonDataEnum.PROCESSING.getCode()); + Integer count = travelNoticeMapper.selectCountByStatus(CarbonDataEnum.PROCESSING.getCode(), null); LOGGER.info(">>>> 开始计算碳减排量,总记录数:{}", count); + if (count == 0) { + return; + } long startTime = System.currentTimeMillis(); - for (int i = 0; i < count; i += PAGE_COUNT) { - LOGGER.info(">>>> 计算第{}页,{}-{}", i / PAGE_COUNT + 1, i + 1, i + PAGE_COUNT); + int pageCount = count / PAGE_COUNT + 1; + for (int i = 1; i <= pageCount; i++) { + LOGGER.info(">>>> 计算第{}页", i); List bcTravelNoticeList = travelNoticeMapper - .selectPageByStatus(CarbonDataEnum.PROCESSING.getCode(), i, PAGE_COUNT); + .selectPageByStatus(CarbonDataEnum.PROCESSING.getCode(), null, 1, PAGE_COUNT); + if (CollectionUtils.isEmpty(bcTravelNoticeList)) { + break; + } + // 计算hash + bcTravelNoticeList.forEach(this::spotCheckHash); List collect = bcTravelNoticeList.stream().map(bcTravelNotice -> { BatchComputationReqVo.RawData rawData = new BatchComputationReqVo.RawData(); rawData.setBaseFactor(bcTravelNotice.getBaseFactor()); @@ -79,29 +102,75 @@ public class CalculateReductionServiceImpl implements ICalculateReductionService throw new ServiceException("计算错误"); } - // 更新计算结果 - calculateReductionService.updateReduction(resultDTO); + Map hashDataMap = bcTravelNoticeList.stream() + .collect(Collectors.toMap(BcTravelNotice::getSeqNo, BcTravelNotice::getHashData)); + + List tnList = getUpdateTravelNoticeList(resultDTO.getContent().getEmissionReductions(), hashDataMap); + + travelNoticeMapper.updateBatchBySeqNo(tnList); } LOGGER.info(">>>> 计算完成,耗时:{}秒", (System.currentTimeMillis() - startTime) / 1000); } + private List getUpdateTravelNoticeList(List ers, Map hashDataMap) { + String currentTime = sysDateMapper.currentTime(); + return ers.stream().map(res -> { + BcTravelNotice tn = new BcTravelNotice(); + String seqNo = res.getDataId(); + tn.setSeqNo(seqNo); + tn.setHashData(hashDataMap.get(seqNo)); + tn.setCarbonFootprint(res.getEmissionReduction()); + tn.setReductionCalculateTime(currentTime); + tn.setStatus(CarbonDataEnum.WAIT_FOR_SEND.getCode()); + tn.setChainStatus(ChainStatusEnum.INIT.toString()); + return tn; + }).collect(Collectors.toList()); + } + /** - * 更新 + * 抽检字段hash */ - @Transactional - @Override - public void updateReduction(GResultDTO resultDTO) { - List emissionReductions = resultDTO.getContent().getEmissionReductions(); - String currentTime = sysDateMapper.currentTime(); - emissionReductions.forEach(res -> { - BcTravelNotice bcTravelNotice = new BcTravelNotice(); - bcTravelNotice.setSeqNo(res.getDataId()); - bcTravelNotice.setCarbonFootprint(res.getEmissionReduction()); - bcTravelNotice.setReductionCalculateTime(currentTime); - bcTravelNotice.setStatus(CarbonDataEnum.WAIT_FOR_SEND.getCode()); - travelNoticeMapper.updateBySeqNo(bcTravelNotice); - }); + private void spotCheckHash(BcTravelNotice travelNotice) { + if (IndustryCodeEnum.SUBWAY.getCode().equals(travelNotice.getIndustryCode())) { + SubwaySpotCheck spotCheck = new SubwaySpotCheck(); + spotCheck.setTravelNo(travelNotice.getTravelNo()); + spotCheck.setIntoTransTime(travelNotice.getIntoTransTime()); + spotCheck.setInDeviceNo(travelNotice.getInDeviceNo()); + spotCheck.setInStationName(travelNotice.getInStationName()); + spotCheck.setOutTransTime(travelNotice.getOutTransTime()); + spotCheck.setOutDeviceNo(travelNotice.getOutDeviceNo()); + spotCheck.setOutStationName(travelNotice.getOutStationName()); + spotCheck.setMileage(travelNotice.getMileage()); + travelNotice.setHashData(sm3Hash(spotCheck)); + } else { + BusSpotCheck spotCheck = new BusSpotCheck(); + spotCheck.setTravelNo(travelNotice.getTravelNo()); + spotCheck.setIntoTransTime(travelNotice.getIntoTransTime()); + spotCheck.setLineNo(travelNotice.getLineNo()); + spotCheck.setMileage(travelNotice.getMileage()); + travelNotice.setHashData(sm3Hash(spotCheck)); + } } + private String sm3Hash(Object data) { + byte[] bytes = convertToJson(data).getBytes(StandardCharsets.UTF_8); + SM3Digest digest = new SM3Digest(); + digest.update(bytes, 0, bytes.length); + byte[] output = new byte[digest.getDigestSize()]; + digest.doFinal(output, 0); + return Hex.toHexString(output); + } + + + private String convertToJson(Object o) { + try { + return objectMapper.writeValueAsString(o); + } catch (Exception e) { + LOGGER.error("原始数据序列化错误", e); + throw new ServiceException("原始数据序列化错误"); + } + } + + } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/DataAuditServiceImpl.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/DataAuditServiceImpl.java index 3d3d20ba..675a256c 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/DataAuditServiceImpl.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/DataAuditServiceImpl.java @@ -1,24 +1,25 @@ package com.jiuyv.sptcc.carbon.dataprocess.service.impl; import com.jiuyv.sptcc.carbon.dataprocess.domain.BcTravelNotice; -import com.jiuyv.sptcc.carbon.dataprocess.enums.CarbonDataEnum; import com.jiuyv.sptcc.carbon.dataprocess.enums.ChainStatusEnum; +import com.jiuyv.sptcc.carbon.dataprocess.enums.IndustryCodeEnum; import com.jiuyv.sptcc.carbon.dataprocess.exception.ServiceException; import com.jiuyv.sptcc.carbon.dataprocess.feign.DataAuditFeign; import com.jiuyv.sptcc.carbon.dataprocess.mapper.BcTravelNoticeMapper; import com.jiuyv.sptcc.carbon.dataprocess.service.IDataAuditService; +import com.jiuyv.sptcc.carbon.pushgate.api.DataAuditApi; +import com.jiuyv.sptcc.carbon.pushgate.dto.chain.ChainResultDTO; import com.jiuyv.sptcc.carbon.pushgate.common.ResultCode; import com.jiuyv.sptcc.carbon.pushgate.dto.GResultDTO; import com.jiuyv.sptcc.carbon.pushgate.dto.chain.AssetDataVo; import com.jiuyv.sptcc.carbon.pushgate.dto.chain.BatchAssetDataVo; -import com.jiuyv.sptcc.carbon.pushgate.dto.chain.ChainInfoDTO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** @@ -30,16 +31,13 @@ import java.util.stream.Collectors; public class DataAuditServiceImpl implements IDataAuditService { private static final Logger LOGGER = LoggerFactory.getLogger(DataAuditServiceImpl.class); - private static final Integer PAGE_COUNT = 500; + private static final Integer PAGE_COUNT = 1000; private final BcTravelNoticeMapper travelNoticeMapper; private final DataAuditFeign dataAuditFeign; - private final IDataAuditService dataAuditService; - public DataAuditServiceImpl(BcTravelNoticeMapper travelNoticeMapper, DataAuditFeign dataAuditFeign, - @Lazy IDataAuditService dataAuditService) { + public DataAuditServiceImpl(BcTravelNoticeMapper travelNoticeMapper, DataAuditFeign dataAuditFeign) { this.travelNoticeMapper = travelNoticeMapper; this.dataAuditFeign = dataAuditFeign; - this.dataAuditService = dataAuditService; } /** @@ -47,47 +45,51 @@ public class DataAuditServiceImpl implements IDataAuditService { */ @Override public void upChain() { - Integer count = travelNoticeMapper.selectCountByStatus(CarbonDataEnum.PROCESSING.getCode()); - LOGGER.info(">>>> 开始上链,总记录数:{}", count); + Integer count = travelNoticeMapper.selectCountByStatus(null, ChainStatusEnum.INIT.toString()); + LOGGER.info(">>>> 开始调用合约,总记录数:{}", count); + if (count == 0) { + return; + } long startTime = System.currentTimeMillis(); - for (int i = 0; i < count; i += PAGE_COUNT) { - LOGGER.info(">>>> 上链第{}页,{}-{}", i / PAGE_COUNT + 1, i + 1, i + PAGE_COUNT); + int pageCount = count / PAGE_COUNT + 1; + for (int i = 1; i <= pageCount; i++) { + LOGGER.info(">>>> 调用合约第{}页", i); List bcTravelNoticeList = travelNoticeMapper - .selectPageByStatus(CarbonDataEnum.PROCESSING.getCode(), i, PAGE_COUNT); + .selectPageByStatus(null, ChainStatusEnum.INIT.toString(), 1, PAGE_COUNT); + if (CollectionUtils.isEmpty(bcTravelNoticeList)) { + break; + } List collect = bcTravelNoticeList.stream().map(bcTravelNotice -> { AssetDataVo rawData = new AssetDataVo(); rawData.setBehaviorId(bcTravelNotice.getTravelNo()); - // TODO 确定所属场景方cid - rawData.setPlatformId("???"); rawData.setCcid(bcTravelNotice.getCcid()); rawData.setSceneCode(bcTravelNotice.getIndustryCode()); - - // TODO 时间转换 如果缺少进站时间或出站时间? rawData.setStartTime(bcTravelNotice.getIntoTransTime()); - rawData.setEndTime(bcTravelNotice.getOutTransTime()); - - rawData.setTripDistance(Double.valueOf(bcTravelNotice.getMileage())); + if (IndustryCodeEnum.SUBWAY.getCode().equals(bcTravelNotice.getIndustryCode())) { + rawData.setEndTime(bcTravelNotice.getOutTransTime()); + } + rawData.setTripDistance(bcTravelNotice.getMileage()); rawData.setHashData(bcTravelNotice.getHashData()); - - // TODO 确定状态 - rawData.setState(0); + rawData.setState(1); return rawData; }).collect(Collectors.toList()); BatchAssetDataVo batchAssetDataVo = new BatchAssetDataVo(); batchAssetDataVo.setAssetDataVoList(collect); - GResultDTO> resultDTO = dataAuditFeign.batchUpChain(batchAssetDataVo); - + GResultDTO>> resultDTO = dataAuditFeign.concurrentBatchUpChain(batchAssetDataVo); if (!ResultCode.SUCCESS.getCode().equals(resultDTO.getRespCode())) { - LOGGER.error("上链出错"); - throw new ServiceException("上链出错"); + throw new ServiceException("网关服务异常"); } - - // 更新计算结果 - // TODO 如果这步失败,重复上链? - dataAuditService.updateReduction(resultDTO); + Map> content = resultDTO.getContent(); + content.forEach((k, v) -> { + if (DataAuditApi.AUDIT_FAIL.equals(k)) { + travelNoticeMapper.updateChainStatusByTravelNos(v, ChainStatusEnum.AUDIT_FAILED.toString(), null); + } else { + travelNoticeMapper.updateChainStatusByTravelNos(v, ChainStatusEnum.AUDIT_SUCCESS.toString(), k); + } + }); } - LOGGER.info(">>>> 初始上链完成,耗时:{}秒", (System.currentTimeMillis() - startTime) / 1000); + LOGGER.info(">>>> 调用合约完成,耗时:{}秒", (System.currentTimeMillis() - startTime) / 1000); } @@ -95,8 +97,9 @@ public class DataAuditServiceImpl implements IDataAuditService { * 接收区块链系统回调 更新上链结果 */ @Override - public void callback() { - // TODO 接收区块链系统回调 更新上链结果 + public void callback(String txId) { + LOGGER.info("上链成功回调:{}", txId); + travelNoticeMapper.updateChainStatusByTxId(ChainStatusEnum.CHAIN_SUCCESS.toString(), txId); } /** @@ -104,24 +107,37 @@ public class DataAuditServiceImpl implements IDataAuditService { */ @Override public void queryUpChainResult() { - // TODO 主动查询一直没有回调的数据 - } - - /** - * 更新 - */ - @Transactional - @Override - public void updateReduction(GResultDTO> resultDTO) { - List content = resultDTO.getContent(); - content.forEach(info -> { - BcTravelNotice bcTravelNotice = new BcTravelNotice(); - bcTravelNotice.setChainStatus(ChainStatusEnum.INIT.toString()); - bcTravelNotice.setSeqNo(info.getBehaviorId()); - bcTravelNotice.setChainTxId(info.getTxId()); - travelNoticeMapper.updateBySeqNo(bcTravelNotice); - }); + Integer count = travelNoticeMapper.selectTxIdCountByChainStatus(ChainStatusEnum.AUDIT_SUCCESS.toString()); + LOGGER.info(">>>> 开始查询上链结果,需要查询的总记录数:{}", count); + if (count == 0) { + return; + } + long startTime = System.currentTimeMillis(); + int pageCount = count / PAGE_COUNT + 1; + for (int i = 1; i <= pageCount; i++) { + LOGGER.info(">>>> 查询第{}页", i); + List travelNoList = travelNoticeMapper + .selectTxIdLimitByChainStatus(ChainStatusEnum.AUDIT_SUCCESS.toString(), PAGE_COUNT); + if (CollectionUtils.isEmpty(travelNoList)) { + break; + } + GResultDTO resultDTO = dataAuditFeign.query(travelNoList); + if (!ResultCode.SUCCESS.getCode().equals(resultDTO.getRespCode())) { + throw new ServiceException("网关服务异常"); + } + ChainResultDTO res = resultDTO.getContent(); + // 更新成功的 + if (!CollectionUtils.isEmpty(res.getSuccessTravelNoList())) { + travelNoticeMapper.updateChainStatusByTravelNos(res.getSuccessTravelNoList(), + ChainStatusEnum.CHAIN_SUCCESS.toString(), null); + } + // 更新失败的 + if (!CollectionUtils.isEmpty(res.getFailTravelNoList())) { + travelNoticeMapper.updateChainStatusByTravelNos(res.getFailTravelNoList(), + ChainStatusEnum.CHAIN_FAILED.toString(), null); + } + } + LOGGER.info(">>>> 查询上链结果完成,耗时:{}秒", (System.currentTimeMillis() - startTime) / 1000); } - } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/DataManageServiceImpl.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/DataManageServiceImpl.java index b1d1c912..40d31e9c 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/DataManageServiceImpl.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/DataManageServiceImpl.java @@ -32,7 +32,7 @@ public class DataManageServiceImpl implements IDataManageService { @Override public List getTravelNoticePage(Map queryMap) { - return travelNoticeMapper.selectTravelNoticePage(queryMap); + return travelNoticeMapper.selectTravelNoticeList(queryMap); } @Override diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/PushReductionServiceImpl.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/PushReductionServiceImpl.java index 848c7fd3..58f3a3f6 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/PushReductionServiceImpl.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/PushReductionServiceImpl.java @@ -1,9 +1,10 @@ package com.jiuyv.sptcc.carbon.dataprocess.service.impl; +import com.jiuyv.sptcc.carbon.dataprocess.config.DataProcessProperties; import com.jiuyv.sptcc.carbon.dataprocess.domain.BcTravelNotice; import com.jiuyv.sptcc.carbon.dataprocess.enums.CarbonDataEnum; +import com.jiuyv.sptcc.carbon.dataprocess.enums.ChainStatusEnum; import com.jiuyv.sptcc.carbon.dataprocess.enums.IndustryCodeEnum; -import com.jiuyv.sptcc.carbon.dataprocess.enums.SignStatusEnum; import com.jiuyv.sptcc.carbon.dataprocess.exception.ServiceException; import com.jiuyv.sptcc.carbon.dataprocess.feign.CarbonDataProcessFeign; import com.jiuyv.sptcc.carbon.dataprocess.mapper.BcTravelNoticeMapper; @@ -14,9 +15,8 @@ import com.jiuyv.sptcc.carbon.pushgate.dto.GResultDTO; import com.jiuyv.sptcc.carbon.pushgate.dto.reduction.DeliveryReqVo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; @@ -41,15 +41,15 @@ public class PushReductionServiceImpl implements IPushReductionService { private final SysDateMapper sysDateMapper; private final CarbonDataProcessFeign carbonDataProcessFeign; - private final IPushReductionService pushReductionService; + private final boolean isUpChain; public PushReductionServiceImpl(BcTravelNoticeMapper travelNoticeMapper, SysDateMapper sysDateMapper, CarbonDataProcessFeign carbonDataProcessFeign, - @Lazy IPushReductionService pushReductionService) { + DataProcessProperties dataProcessProperties) { this.travelNoticeMapper = travelNoticeMapper; this.sysDateMapper = sysDateMapper; this.carbonDataProcessFeign = carbonDataProcessFeign; - this.pushReductionService = pushReductionService; + this.isUpChain = dataProcessProperties.getEnableUpChain(); } @@ -58,16 +58,23 @@ public class PushReductionServiceImpl implements IPushReductionService { */ @Override public synchronized void escalation() { - Integer count = travelNoticeMapper.selectCountByStatus(CarbonDataEnum.WAIT_FOR_SEND.getCode()); + String chainStatus = isUpChain ? ChainStatusEnum.CHAIN_SUCCESS.toString() : null; + Integer count = travelNoticeMapper.selectCountByStatus(CarbonDataEnum.WAIT_FOR_SEND.getCode(), chainStatus); LOGGER.info(">>>> 开始上报数据,总记录数:{}", count); + if (count == 0) { + return; + } long startTime = System.currentTimeMillis(); - - for (int i = 0; i < count; i += PAGE_COUNT) { - LOGGER.info(">>>> 上报第{}页,{}-{}", i / PAGE_COUNT + 1, i + 1, i + PAGE_COUNT); + int pageCount = count / PAGE_COUNT + 1; + for (int i = 1; i <= pageCount; i++) { + LOGGER.info(">>>> 上报第{}页", i); String currentTime = sysDateMapper.currentTime(); - // 有重复推送问题 String batchNo = sysDateMapper.getTravelNoticeBatchNo(); - List bcTravelNoticeList = travelNoticeMapper.selectPageByStatus(CarbonDataEnum.WAIT_FOR_SEND.getCode(), i, PAGE_COUNT); + List bcTravelNoticeList = travelNoticeMapper + .selectPageByStatus(CarbonDataEnum.WAIT_FOR_SEND.getCode(), chainStatus, 1, PAGE_COUNT); + if (CollectionUtils.isEmpty(bcTravelNoticeList)) { + break; + } List collect = bcTravelNoticeList.stream().map(bcTravelNotice -> { DeliveryReqVo.Info info = new DeliveryReqVo.Info(); info.setSerialNo(bcTravelNotice.getTravelNo()); @@ -77,7 +84,7 @@ public class PushReductionServiceImpl implements IPushReductionService { info.setReduction(bcTravelNotice.getCarbonFootprint()); info.setDeliveryCount(bcTravelNotice.getSendCount()); - info.setDataConfirmationTime(LocalDateTime.parse(bcTravelNotice.getDataConfirmationTime(),SDF_14).format(SDF)); + info.setDataConfirmationTime(LocalDateTime.parse(bcTravelNotice.getDataConfirmationTime(), SDF_14).format(SDF)); info.setReductionCalculateTime(LocalDateTime.parse(bcTravelNotice.getReductionCalculateTime(), SDF_14).format(SDF)); info.setDataDeliveryTime(LocalDateTime.parse(currentTime, SDF_14).format(SDF)); @@ -100,39 +107,19 @@ public class PushReductionServiceImpl implements IPushReductionService { deliveryReqVo.setData(collect); GResultDTO resultDTO = carbonDataProcessFeign.delivery(deliveryReqVo); + List seqNoList = bcTravelNoticeList.stream().map(BcTravelNotice::getSeqNo).collect(Collectors.toList()); if (ResultCode.SUCCESS.getCode().equals(resultDTO.getRespCode())) { // 推送成功 - pushReductionService.updateStatus(bcTravelNoticeList, CarbonDataEnum.SUCCESS.getCode(), currentTime, batchNo); + travelNoticeMapper.updateStatusBySeqNos(seqNoList, CarbonDataEnum.SUCCESS.getCode(), batchNo); } else { - LOGGER.info(">>>> 第{}页推送失败,{}-{}", i / PAGE_COUNT + 1, i + 1, i + PAGE_COUNT); + LOGGER.info(">>>> 第{}页推送失败", i); // 推送失败 - pushReductionService.updateStatus(bcTravelNoticeList, CarbonDataEnum.FAILED.getCode(), currentTime, batchNo); + travelNoticeMapper.updateStatusBySeqNos(seqNoList, CarbonDataEnum.FAILED.getCode(), null); } } LOGGER.info(">>>> 推送完成,耗时:{}秒", (System.currentTimeMillis() - startTime) / 1000); } - /** - * 更新状态 - */ - @Transactional - @Override - public void updateStatus(List bcTravelNoticeList, String status, String currentTime, String batchNo) { - bcTravelNoticeList.forEach(travelNotice -> { - BcTravelNotice bcTravelNotice = new BcTravelNotice(); - bcTravelNotice.setSeqNo(travelNotice.getSeqNo()); - bcTravelNotice.setStatus(status); - bcTravelNotice.setDataDeliveryTime(currentTime); - bcTravelNotice.setSendCount(travelNotice.getSendCount() + 1); - if (CarbonDataEnum.SUCCESS.getCode().equals(status)) { - bcTravelNotice.setBusinessCompletionTime(travelNotice.getBusinessCompletionTime()); - bcTravelNotice.setBatchNo(batchNo); - bcTravelNotice.setSignStatus(SignStatusEnum.ISSUING.getCode()); - } - travelNoticeMapper.updateBySeqNo(bcTravelNotice); - }); - } - private String getBusinessCompletionTime(BcTravelNotice travelNotice) { String industryCode = travelNotice.getIndustryCode(); if (IndustryCodeEnum.SUBWAY.getCode().equals(industryCode)) { diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/ReadFileServiceImpl.java b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/ReadFileServiceImpl.java index 5cc71466..251f8c5c 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/ReadFileServiceImpl.java +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/java/com/jiuyv/sptcc/carbon/dataprocess/service/impl/ReadFileServiceImpl.java @@ -1,23 +1,18 @@ package com.jiuyv.sptcc.carbon.dataprocess.service.impl; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.databind.DeserializationFeature; -import com.fasterxml.jackson.databind.ObjectMapper; import com.jcraft.jsch.ChannelSftp; import com.jcraft.jsch.SftpException; import com.jiuyv.sptcc.carbon.auth.common.enums.OrgCodeEnum; import com.jiuyv.sptcc.carbon.auth.common.enums.ScenCodeEnum; -import com.jiuyv.sptcc.carbon.auth.web.request.GetUserRequest; +import com.jiuyv.sptcc.carbon.auth.web.request.GetUserBatchRequest; import com.jiuyv.sptcc.carbon.auth.web.response.R; import com.jiuyv.sptcc.carbon.auth.web.response.ResultCode; -import com.jiuyv.sptcc.carbon.auth.web.response.UserHistoryResponse; +import com.jiuyv.sptcc.carbon.auth.web.response.UserHistoryBatchResponse; import com.jiuyv.sptcc.carbon.dataprocess.config.sftp.SftpChannelPool; import com.jiuyv.sptcc.carbon.dataprocess.config.sftp.SftpProperties; import com.jiuyv.sptcc.carbon.dataprocess.domain.BcCalcFactor; import com.jiuyv.sptcc.carbon.dataprocess.domain.BcSubwayMileage; import com.jiuyv.sptcc.carbon.dataprocess.domain.BcTravelNotice; -import com.jiuyv.sptcc.carbon.dataprocess.domain.BusSpotCheck; -import com.jiuyv.sptcc.carbon.dataprocess.domain.SubwaySpotCheck; import com.jiuyv.sptcc.carbon.dataprocess.enums.CarbonDataEnum; import com.jiuyv.sptcc.carbon.dataprocess.enums.IndustryCodeEnum; import com.jiuyv.sptcc.carbon.dataprocess.exception.ServiceException; @@ -33,14 +28,13 @@ import com.jiuyv.sptcc.carbon.pushgate.dto.reduction.DictionaryReqVo; import com.jiuyv.sptcc.carbon.pushgate.dto.reduction.ResDictionaryDTO; import org.apache.commons.io.IOUtils; import org.apache.commons.lang3.StringUtils; -import org.bouncycastle.crypto.digests.SM3Digest; -import org.bouncycastle.util.encoders.Hex; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.io.BufferedReader; +import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; @@ -48,14 +42,17 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.nio.charset.StandardCharsets; import java.nio.file.Files; -import java.nio.file.Paths; import java.text.DecimalFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Objects; +import java.util.Set; +import java.util.stream.Collectors; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; @@ -66,6 +63,7 @@ import java.util.zip.ZipInputStream; @Service public class ReadFileServiceImpl implements IReadFileService { private static final Logger LOGGER = LoggerFactory.getLogger(ReadFileServiceImpl.class); + private static final int BATCH_SIZE = 2000; /** * 获取里程数据类型 @@ -82,7 +80,10 @@ public class ReadFileServiceImpl implements IReadFileService { private static final DateTimeFormatter SDF = DateTimeFormatter.ofPattern("yyyyMMdd"); private static final DateTimeFormatter REQ_SDF = DateTimeFormatter.ofPattern("yyyyMMddHHmmss"); - private static final DecimalFormat DF = new DecimalFormat("#.000"); + private static final DecimalFormat MILEAGE_DF = new DecimalFormat("#.000"); + private static final DecimalFormat STATION_ID_DF = new DecimalFormat("0000"); + + private final Map calcFactorCache = new HashMap<>(); private final BcTravelNoticeMapper bcTravelNoticeMapper; private final BcSubwayMileageMapper subwayMileageMapper; @@ -94,11 +95,6 @@ public class ReadFileServiceImpl implements IReadFileService { private final SftpChannelPool sftpChannelPool; - /** - * 单独给 原始数据使用,如果需要特殊配置,直接配置这个objectMapper - */ - private final ObjectMapper objectMapper; - private final String remoteDir; private final String fileSuffix; private final String tempDir; @@ -121,73 +117,62 @@ public class ReadFileServiceImpl implements IReadFileService { this.remoteDir = sftpProperties.getRemoteDir(); this.fileSuffix = sftpProperties.getFileSuffix(); this.tempDir = sftpProperties.getTempDir(); - this.objectMapper = new ObjectMapper(); - objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); - objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); } /** * 读取文件并插入数据库 */ @Override - public synchronized void readFileAndInsertDatabase(String dateStr) { + public synchronized int readFileAndInsertDatabase(String dateStr) { String currentTime = sysDateMapper.currentTime(); - if (StringUtils.isBlank(dateStr)) { - dateStr = LocalDate.parse(currentTime.substring(0, 8), SDF).minusDays(1).format(SDF); - } - String fileName = dateStr + fileSuffix; - - // 下载并解压文件 - ChannelSftp sftpChannel = sftpChannelPool.getSftpChannel(); - LOGGER.info(">>>> 获取sftpChannel成功"); - try (InputStream inputStream = sftpChannel.get(remoteDir + fileName); - ZipInputStream zipInputStream = new ZipInputStream(inputStream)) { - ZipEntry nextEntry; - while ((nextEntry = zipInputStream.getNextEntry()) != null && !nextEntry.isDirectory()) { - String filePath = tempDir + nextEntry.getName(); - LOGGER.info(">>>> 下载并解压:{}", filePath); - try (FileOutputStream fileOutputStream = new FileOutputStream(filePath)) { - IOUtils.copy(zipInputStream, fileOutputStream); - } - } - LOGGER.info(">>>> 文件下载成功"); - } catch (IOException | SftpException e) { - LOGGER.error("获取文件出错", e); - throw new ServiceException("获取文件出错"); - } finally { - sftpChannelPool.closeChannel(sftpChannel); - } - - // 读取文件入库 - String csvName = fileName.replace("zip", "csv"); - String csvPath = tempDir + csvName; - LOGGER.info(">>>> 开始读取文件:{}", csvPath); + File file = getFile(dateStr, currentTime); + String csvName = file.getName(); + long startTime = System.currentTimeMillis(); + // 是否第一次读取 + boolean notFirst = bcTravelNoticeMapper.selectCountByFileName(csvName) != 0; - Long count = bcTravelNoticeMapper.selectCountByFileName(csvName); - try (FileInputStream fis = new FileInputStream(csvPath); + try (FileInputStream fis = new FileInputStream(file); InputStreamReader isr = new InputStreamReader(fis, StandardCharsets.UTF_8); BufferedReader br = new BufferedReader(isr)) { - // 跳到指定行开始读取 - seek(br, count); - - String line; - while ((line = br.readLine()) != null) { - LOGGER.debug("插入数据:{}", line); - insertData(line, currentTime, csvName); + int count = 0; + while (true) { + List list = getBcTravelNoticeList(br, csvName); + if (CollectionUtils.isEmpty(list)) { + break; + } + if (notFirst) { + list = filterDuplicates(list); + if (CollectionUtils.isEmpty(list)) { + continue; + } + } + // 授权校验及其他信息配置 + authVerify(list, currentTime); + bcTravelNoticeMapper.batchInsert(list); + count += list.size(); } - LOGGER.info(">>>> 文件入库成功"); + LOGGER.info(">>>> 文件入库成功。记录数{},耗时:{}秒", count, (System.currentTimeMillis() - startTime) / 1000); + return count; } catch (IOException e) { LOGGER.error("读取文件出错", e); throw new ServiceException("读取文件出错"); } finally { try { - Files.delete(Paths.get(csvPath)); + Files.delete(file.toPath()); } catch (IOException e) { LOGGER.error("文件删除失败", e); } } } + /** + * 过滤掉已插入记录 + */ + private List filterDuplicates(List list) { + Set TravelNoList = bcTravelNoticeMapper.selectTravelNoListByTravelNoList(list); + return list.stream().filter(tn -> !TravelNoList.contains(tn.getTravelNo())).collect(Collectors.toList()); + } + /** * 获取里程数据 */ @@ -214,6 +199,42 @@ public class ReadFileServiceImpl implements IReadFileService { } + + /** + * 下载并解压文件 + */ + private File getFile(String dateStr, String currentTime) { + if (StringUtils.isBlank(dateStr)) { + dateStr = LocalDate.parse(currentTime.substring(0, 8), SDF).minusDays(1).format(SDF); + } + String fileName = dateStr + fileSuffix; + + // 下载并解压文件 + ChannelSftp sftpChannel = sftpChannelPool.getSftpChannel(); + LOGGER.info(">>>> 获取sftpChannel成功"); + try (InputStream inputStream = sftpChannel.get(remoteDir + fileName); + ZipInputStream zipInputStream = new ZipInputStream(inputStream)) { + ZipEntry nextEntry; + while ((nextEntry = zipInputStream.getNextEntry()) != null && !nextEntry.isDirectory()) { + String filePath = tempDir + nextEntry.getName(); + LOGGER.info(">>>> 下载并解压:{}", filePath); + try (FileOutputStream fileOutputStream = new FileOutputStream(filePath)) { + IOUtils.copy(zipInputStream, fileOutputStream); + } + } + LOGGER.info(">>>> 文件下载成功"); + } catch (IOException | SftpException e) { + LOGGER.error("获取文件出错", e); + throw new ServiceException("获取文件出错"); + } finally { + sftpChannelPool.closeChannel(sftpChannel); + } + + final File file = new File(tempDir, fileName.replace("zip", "csv")); + LOGGER.info(">>>> 开始读取文件:{}", file.getAbsolutePath()); + return file; + } + private List buildSubwayMileageList(Map data) { List list = new ArrayList<>(); for (Map.Entry entry : data.entrySet()) { @@ -221,7 +242,7 @@ public class ReadFileServiceImpl implements IReadFileService { String[] split = entry.getKey().split("-"); subwayMileage.setInStationId(split[0]); subwayMileage.setOutStationId(split[1]); - subwayMileage.setMileage(DF.format(entry.getValue())); + subwayMileage.setMileage(MILEAGE_DF.format(entry.getValue())); list.add(subwayMileage); } return list; @@ -230,28 +251,51 @@ public class ReadFileServiceImpl implements IReadFileService { private BcCalcFactor getCalcFactor(String intoTransTime, String sceneCode) { - BcCalcFactor bcCalcFactor = bcCalcFactorMapper.selectByTime(intoTransTime, sceneCode); - if (bcCalcFactor == null) { - LOGGER.error("未查询到排放因子数据:{}", intoTransTime); - throw new ServiceException("未查询到排放因子数据"); + BcCalcFactor calcFactor = calcFactorCache.get(sceneCode); + LocalDateTime time = LocalDateTime.parse(intoTransTime, REQ_SDF); + if (calcFactor == null || time.isAfter(calcFactor.getEnd()) || time.isBefore(calcFactor.getStart())) { + calcFactor = bcCalcFactorMapper.selectByTime(intoTransTime, sceneCode); + if (calcFactor == null) { + LOGGER.error("未查询到排放因子数据:{}", intoTransTime); + throw new ServiceException("未查询到排放因子数据"); + } + calcFactor.setStart(LocalDateTime.parse(calcFactor.getStartTime(), REQ_SDF)); + calcFactor.setEnd(LocalDateTime.parse(calcFactor.getEndTime(), REQ_SDF)); + calcFactorCache.put(sceneCode, calcFactor); } - return bcCalcFactor; + return calcFactor; } + private List getBcTravelNoticeList(BufferedReader br, String fileName) throws IOException { + List list = new ArrayList<>(); + String line; + while ((line = br.readLine()) != null && list.size() < BATCH_SIZE) { + LOGGER.debug("获取记录:{}", line); + BcTravelNotice travelNotice = getBcTravelNotice(line, fileName); + if (travelNotice != null) { + checkAbnormalData(travelNotice); + list.add(travelNotice); + } + } + return list; + } - /** - * 插入数据库 - */ - private void insertData(String line, String dataConfirmationTime, String fileName) { + private BcTravelNotice getBcTravelNotice(String line, String fileName) { String[] split = line.split(","); BcTravelNotice travelNotice = new BcTravelNotice(); travelNotice.setSourceFileName(fileName); - travelNotice.setTravelNo(handleValue(split[0])); + String travelNo = handleValue(split[0]); + if (StringUtils.isBlank(travelNo)) { + LOGGER.info("该条记录缺少流水号:{}", line); + return null; + } + travelNotice.setSeqNo("CARBON" + travelNo); + travelNotice.setTravelNo(travelNo); travelNotice.setIndustryCode(handleValue(split[1])); travelNotice.setUserId(handleValue(split[2])); travelNotice.setCcid(handleValue(split[3])); - travelNotice.setInStationId(handleValue(split[4])); - travelNotice.setOutStationId(handleValue(split[5])); + travelNotice.setInStationId(handleStationId(split[4])); + travelNotice.setOutStationId(handleStationId(split[5])); travelNotice.setOpenChannel(handleValue(split[6])); travelNotice.setIntoTransTime(handleTime(split[7])); travelNotice.setOutTransTime(handleTime(split[8])); @@ -266,118 +310,124 @@ public class ReadFileServiceImpl implements IReadFileService { travelNotice.setOutStationName(handleValue(split[17])); travelNotice.setOutDeviceNo(handleValue(split[18])); travelNotice.setOutDeviceSerialNo(handleValue(split[19])); - - // 检查异常数据 - if (isAbnormalData(travelNotice)) { - return; - } - - BcCalcFactor bcCalcFactor; - if (IndustryCodeEnum.SUBWAY.getCode().equals(travelNotice.getIndustryCode())) { - bcCalcFactor = getCalcFactor(travelNotice.getOutTransTime(), IndustryCodeEnum.SUBWAY.getCode()); - // 计算里程 查不到里程,设置 里程计算错误 - if (!calculateMileage(travelNotice)) { - travelNotice.setStatus(CarbonDataEnum.MILEAGE_ERROR.getCode()); - bcTravelNoticeMapper.insert(travelNotice); - return; - } - } else { - bcCalcFactor = getCalcFactor(travelNotice.getIntoTransTime(), IndustryCodeEnum.BUS.getCode()); - // 计算里程 - travelNotice.setMileage(String.format("%.3f", bcCalcFactor.getAverageMileage())); - } - - if (authVerify(travelNotice, dataConfirmationTime)) { - travelNotice.setStatus(CarbonDataEnum.PROCESSING.getCode()); - travelNotice.setMethodId(bcCalcFactor.getMethodId()); - travelNotice.setBaseFactor(bcCalcFactor.getBaseFactor()); - travelNotice.setFactor(bcCalcFactor.getFactor()); - // 计算hash - spotCheckHash(travelNotice); - } else { - travelNotice.setStatus(CarbonDataEnum.UNAUTHORIZED.getCode()); - } - travelNotice.setDataConfirmationTime(dataConfirmationTime); - bcTravelNoticeMapper.insert(travelNotice); + return travelNotice; } /** * 检查异常数据 */ - private boolean isAbnormalData(BcTravelNotice travelNotice) { + private void checkAbnormalData(BcTravelNotice travelNotice) { String industryCode = travelNotice.getIndustryCode(); if (!IndustryCodeEnum.SUBWAY.getCode().equals(industryCode) && !IndustryCodeEnum.BUS.getCode().equals(industryCode)) { - insertAbnormalData(travelNotice, "既不是公交也不是地铁"); - return true; + travelNotice.setStatus(CarbonDataEnum.INIT.getCode()); + travelNotice.setRemark("既不是公交也不是地铁"); + return; } if (IndustryCodeEnum.SUBWAY.getCode().equals(industryCode)) { if (travelNotice.getInStationId() == null) { - insertAbnormalData(travelNotice, "地铁没有进站编码"); - return true; + travelNotice.setStatus(CarbonDataEnum.INIT.getCode()); + travelNotice.setRemark("地铁没有进站编码"); + return; } if (travelNotice.getOutTransTime() == null) { - insertAbnormalData(travelNotice, "地铁没有出站时间"); - return true; + travelNotice.setStatus(CarbonDataEnum.INIT.getCode()); + travelNotice.setRemark("地铁没有出站时间"); + return; } } if (IndustryCodeEnum.BUS.getCode().equals(industryCode) && travelNotice.getIntoTransTime() == null) { - insertAbnormalData(travelNotice, "公交没有进站时间"); - return true; + travelNotice.setStatus(CarbonDataEnum.INIT.getCode()); + travelNotice.setRemark("公交没有进站时间"); } - return false; - } - - private void insertAbnormalData(BcTravelNotice travelNotice, String remark) { - travelNotice.setStatus(CarbonDataEnum.INIT.getCode()); - travelNotice.setRemark(remark); - bcTravelNoticeMapper.insert(travelNotice); } /** * 授权校验 - * - * @return 通过返回true */ - private boolean authVerify(BcTravelNotice travelNotice, String currentTime) { - GetUserRequest request = new GetUserRequest(); - request.setCcid(travelNotice.getCcid()); - String industryCode = travelNotice.getIndustryCode(); - if (IndustryCodeEnum.BUS.getCode().equals(industryCode)) { - request.setScenCode(ScenCodeEnum.BUS.getCode()); - request.setTransTime(LocalDateTime.parse(travelNotice.getIntoTransTime(), REQ_SDF)); - } else if (IndustryCodeEnum.SUBWAY.getCode().equals(industryCode)) { - request.setScenCode(ScenCodeEnum.SUBLINE.getCode()); - request.setTransTime(LocalDateTime.parse(travelNotice.getOutTransTime(), REQ_SDF)); - } else { - return false; - } - request.setRequestId(travelNotice.getTravelNo()); + private void authVerify(List tnList, String currentTime) { + GetUserBatchRequest request = new GetUserBatchRequest(); + request.setRequestId("RequestId"); request.setReqTime(currentTime); request.setOrgCode(OrgCodeEnum.DATAPROCESS.getCode()); + + List list = tnList.stream().map(this::buildAuthRequest) + .filter(Objects::nonNull).collect(Collectors.toList()); + request.setList(list); + LOGGER.debug(">>>> 开始授权查询"); - R r = carbonAuthFeign.getUserByCid(request); + R r = carbonAuthFeign.getUserByCidBatch(request); LOGGER.debug(">>>> 授权查询结果:{}", r.getCode()); if (!ResultCode.SUCCESS.getCode().equals(r.getCode())) { - return false; + throw new ServiceException("授权查询异常"); } - return !CollectionUtils.isEmpty(r.getData().getList()); + + Set passSet = r.getData().getList().stream().filter(UserHistoryBatchResponse.AuthRecord::getAuthFlag) + .map(UserHistoryBatchResponse.AuthRecord::getTravelNo).collect(Collectors.toSet()); + + for (BcTravelNotice tn : tnList) { + if (tn.getStatus() != null) { + continue; + } + if (passSet.contains(tn.getTravelNo())) { + tn.setStatus(CarbonDataEnum.PROCESSING.getCode()); + // 其他信息(里程和因子) + appendInfo(tn); + } else { + tn.setStatus(CarbonDataEnum.UNAUTHORIZED.getCode()); + } + tn.setDataConfirmationTime(currentTime); + } + } + + /** + * 其他信息配置(里程和因子) + */ + private void appendInfo(BcTravelNotice tn) { + BcCalcFactor calcFactor = getCalcFactor(tn.getIntoTransTime(), tn.getIndustryCode()); + tn.setMethodId(calcFactor.getMethodId()); + tn.setBaseFactor(calcFactor.getBaseFactor()); + tn.setFactor(calcFactor.getFactor()); + if (IndustryCodeEnum.SUBWAY.getCode().equals(tn.getIndustryCode())) { + calculateMileage(tn); + } else { + tn.setMileage(MILEAGE_DF.format(calcFactor.getAverageMileage())); + } + } + + private GetUserBatchRequest.AuthRequest buildAuthRequest(BcTravelNotice tn) { + if (tn.getStatus() != null) { + return null; + } + GetUserBatchRequest.AuthRequest authRequest = new GetUserBatchRequest.AuthRequest(); + authRequest.setCcid(tn.getCcid()); + authRequest.setTravelNo(tn.getTravelNo()); + String industryCode = tn.getIndustryCode(); + if (IndustryCodeEnum.BUS.getCode().equals(industryCode)) { + authRequest.setScenCode(ScenCodeEnum.BUS.getCode()); + authRequest.setTransTime(LocalDateTime.parse(tn.getIntoTransTime(), REQ_SDF)); + return authRequest; + } + if (IndustryCodeEnum.SUBWAY.getCode().equals(industryCode)) { + authRequest.setScenCode(ScenCodeEnum.SUBLINE.getCode()); + authRequest.setTransTime(LocalDateTime.parse(tn.getOutTransTime(), REQ_SDF)); + return authRequest; + } + return null; } /** * 计算里程 查询不到返回false * */ - private boolean calculateMileage(BcTravelNotice travelNotice) { + private void calculateMileage(BcTravelNotice travelNotice) { // 只有地铁计算里程 查不到里程,记里程异常状态 LOGGER.debug(">>>> 计算里程"); - String mileage = subwayMileageMapper - .selectMileage(travelNotice.getInStationId(), travelNotice.getOutStationId()); + String mileage = subwayMileageMapper.selectMileage(travelNotice.getInStationId(), travelNotice.getOutStationId()); if (mileage == null) { - return false; + travelNotice.setStatus(CarbonDataEnum.MILEAGE_ERROR.getCode()); } else { travelNotice.setMileage(mileage); - return true; } } @@ -403,63 +453,13 @@ public class ReadFileServiceImpl implements IReadFileService { } /** - * 抽检字段hash + * 处理进出站编码 */ - private void spotCheckHash(BcTravelNotice travelNotice) { - if (IndustryCodeEnum.SUBWAY.getCode().equals(travelNotice.getIndustryCode())) { - SubwaySpotCheck spotCheck = new SubwaySpotCheck(); - spotCheck.setTravelNo(travelNotice.getTravelNo()); - spotCheck.setIntoTransTime(travelNotice.getIntoTransTime()); - spotCheck.setInDeviceNo(travelNotice.getInDeviceNo()); - spotCheck.setInStationName(travelNotice.getInStationName()); - spotCheck.setOutTransTime(travelNotice.getOutTransTime()); - spotCheck.setOutDeviceNo(travelNotice.getOutDeviceNo()); - spotCheck.setOutStationName(travelNotice.getOutStationName()); - spotCheck.setMileage(travelNotice.getMileage()); - travelNotice.setHashData(sm3Hash(spotCheck)); - } else { - BusSpotCheck spotCheck = new BusSpotCheck(); - spotCheck.setTravelNo(travelNotice.getTravelNo()); - spotCheck.setIntoTransTime(travelNotice.getIntoTransTime()); - spotCheck.setLineNo(travelNotice.getLineNo()); - spotCheck.setMileage(travelNotice.getMileage()); - travelNotice.setHashData(sm3Hash(spotCheck)); - } - } - - private String sm3Hash(Object data) { - byte[] bytes = convertToJson(data).getBytes(StandardCharsets.UTF_8); - SM3Digest digest = new SM3Digest(); - digest.update(bytes, 0, bytes.length); - byte[] output = new byte[digest.getDigestSize()]; - digest.doFinal(output, 0); - return Hex.toHexString(output); - } - - /** - * 跳到指定行 - */ - private void seek(BufferedReader br, Long offset) throws IOException { - if (offset == null) { - return; - } - String line; - for (int i = 0; i < offset; i++) { - line = br.readLine(); - if (line == null) { - break; - } - } - } - - - private String convertToJson(Object o) { - try { - return objectMapper.writeValueAsString(o); - } catch (Exception e) { - LOGGER.error("原始数据序列化错误", e); - throw new ServiceException("原始数据序列化错误"); + private String handleStationId(String value) { + if ("\\N".equals(value) || StringUtils.isBlank(value)) { + return null; } + return STATION_ID_DF.format(Integer.parseInt(value)); } } diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/application.yml b/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/application.yml index cce620a7..9caf0f4a 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/application.yml +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/application.yml @@ -7,11 +7,23 @@ server: connection-timeout: 60000 threads: max: 200 +eureka: + instance: + appname: ${spring.application.name} + lease-expiration-duration-in-seconds: 90 + lease-renewal-interval-in-seconds: 10 + prefer-ip-address: true + instance-id: ${spring.cloud.client.ip-address}:${server.port} + client: + enabled: true + register-with-eureka: true + fetch-registry: true + serviceUrl: + defaultZone: http://192.168.10.165:18888/eureka/ spring: datasource: type: com.zaxxer.hikari.HikariDataSource - #url: jdbc:oracle:thin:@(DESCRIPTION=(FAILOVER=on)(LOAD_BALANCE=off)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=130.252.200.62)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=130.252.200.62)(PORT=1521)))(CONNECT_DATA=(SERVER = DEDICATED)(SID = orcl))) url: jdbc:oracle:thin:@(DESCRIPTION=(FAILOVER=on)(LOAD_BALANCE=off)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.10.201)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.10.201)(PORT=1521)))(CONNECT_DATA=(SERVER = DEDICATED)(SID = jyorcl))) username: tanphdev password: tanphdev @@ -28,14 +40,6 @@ spring: user: password: markettest name: markettest - cache: - type: caffeine - cache-names: - - changeStationCache - - mileageCache - - calcFactorCache - caffeine: - spec: initialCapacity=10,maximumSize=500,expireAfterWrite=60s jackson: default-property-inclusion: non_null @@ -57,6 +61,7 @@ mybatis: carbon-data-process: + enableUpChain: true sftp: host: 172.16.12.108 port: 22 @@ -96,6 +101,12 @@ xxl: #执行器Log文件定期清理功能,指定日志保存天数,日志文件过期自动删除。限制至少保持3天,否则功能不生效; #-1表示永不删除 logretentiondays: -1 -logging: - level: - com.jiuyv.sptcc.carbon.dataprocess: debug \ No newline at end of file +#logging: +# level: +# com.jiuyv.sptcc.carbon.dataprocess.mapper: debug + +sms: + enable: false + sendUrl: http://localhost:18878/smsBridge/wl/SmsServlet + phone-list: + - 13900000000 diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/bootstrap.yml b/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/bootstrap.yml index bccf8261..a4b5eaed 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/bootstrap.yml +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/bootstrap.yml @@ -1,18 +1,5 @@ server: port: 18818 -eureka: - instance: - appname: ${spring.application.name} - lease-expiration-duration-in-seconds: 90 - lease-renewal-interval-in-seconds: 10 - prefer-ip-address: true - instance-id: ${spring.cloud.client.ip-address}:${server.port} - client: - enabled: true - register-with-eureka: true - fetch-registry: true - serviceUrl: - defaultZone: http://192.168.10.165:18888/eureka/ spring: config: diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/mapper/BcSubwayMileageMapper.xml b/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/mapper/BcSubwayMileageMapper.xml index 4e603833..ef39b8d8 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/mapper/BcSubwayMileageMapper.xml +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/mapper/BcSubwayMileageMapper.xml @@ -3,7 +3,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -17,7 +17,7 @@ IN_STATION_NAME,OUT_STATION_NAME - select from TBL_BC_SUBWAY_MILEAGE diff --git a/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/mapper/BcTravelNoticeMapper.xml b/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/mapper/BcTravelNoticeMapper.xml index dfa0bc8b..89d1558f 100644 --- a/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/mapper/BcTravelNoticeMapper.xml +++ b/carbon-dataprocess/carbon-dataprocess-service/src/main/resources/mapper/BcTravelNoticeMapper.xml @@ -70,176 +70,7 @@ CREATE_TIME,LST_UPD_USER,LST_UPD_TIME - - - - - - - - - - - - - - - - - - - select TO_CHAR(SYSDATE, 'YYYYMMDD') || TO_CHAR(SEQ_BC_TRAVEL.nextVal, 'FM00000000') from dual - - insert into TBL_BC_TRAVEL_NOTICE - - SEQ_NO, - METHOD_ID, - BASE_FACTOR, - FACTOR, - TRAVEL_NO, - INDUSTRY_CODE, - USER_ID, - CCID, - IN_STATION_ID, - OUT_STATION_ID, - OPEN_CHANNEL, - INTO_TRANS_TIME, - OUT_TRANS_TIME, - CARD_NO, - IN_TRANSACTION_SERIAL_NO, - IN_STATION_NAME, - IN_DEVICE_NO, - IN_DEVICE_SERIAL_NO, - LINE_NO, - LINE_NAME, - OUT_TRANSACTION_SERIAL_NO, - OUT_STATION_NAME, - OUT_DEVICE_NO, - OUT_DEVICE_SERIAL_NO, - BATCH_NO, - MILEAGE, - DATA_CONFIRMATION_TIME, - CARBON_FOOTPRINT, - CHAIN_STATUS, - CHAIN_TX_ID, - HASH_DATA, - SOURCE_FILE_NAME, - REDUCTION_CALCULATE_TIME, - DATA_DELIVERY_TIME, - STATUS, - REMARK, - BUSINESS_COMPLETION_TIME, - NEXT_SEND_TIME, - SEND_COUNT, - SIGN_STATUS, - SIGN_QUERY_COUNT, - CREATE_USER, - CREATE_TIME, - LST_UPD_USER, - LST_UPD_TIME - - - #{seqNo,jdbcType=CHAR}, - #{methodId,jdbcType=VARCHAR}, - #{baseFactor,jdbcType=VARCHAR}, - #{factor,jdbcType=VARCHAR}, - #{travelNo,jdbcType=VARCHAR}, - #{industryCode,jdbcType=VARCHAR}, - #{userId,jdbcType=VARCHAR}, - #{ccid,jdbcType=VARCHAR}, - #{inStationId,jdbcType=VARCHAR}, - #{outStationId,jdbcType=VARCHAR}, - #{openChannel,jdbcType=VARCHAR}, - #{intoTransTime,jdbcType=CHAR}, - #{outTransTime,jdbcType=CHAR}, - #{cardNo,jdbcType=VARCHAR}, - #{inTransactionSerialNo,jdbcType=VARCHAR}, - #{inStationName,jdbcType=VARCHAR}, - #{inDeviceNo,jdbcType=VARCHAR}, - #{inDeviceSerialNo,jdbcType=VARCHAR}, - #{lineNo,jdbcType=VARCHAR}, - #{lineName,jdbcType=VARCHAR}, - #{outTransactionSerialNo,jdbcType=VARCHAR}, - #{outStationName,jdbcType=VARCHAR}, - #{outDeviceNo,jdbcType=VARCHAR}, - #{outDeviceSerialNo,jdbcType=VARCHAR}, - #{batchNo,jdbcType=VARCHAR}, - #{mileage,jdbcType=VARCHAR}, - #{dataConfirmationTime,jdbcType=CHAR}, - #{carbonFootprint,jdbcType=VARCHAR}, - #{chainStatus,jdbcType=VARCHAR}, - #{chainTxId,jdbcType=VARCHAR}, - #{hashData,jdbcType=VARCHAR}, - #{sourceFileName,jdbcType=VARCHAR}, - #{reductionCalculateTime,jdbcType=CHAR}, - #{dataDeliveryTime,jdbcType=CHAR}, - #{status,jdbcType=VARCHAR}, - #{remark,jdbcType=VARCHAR}, - #{businessCompletionTime,jdbcType=CHAR}, - #{nextSendTime,jdbcType=CHAR}, - #{sendCount,jdbcType=DECIMAL}, - #{signStatus,jdbcType=DECIMAL}, - #{signQueryCount,jdbcType=DECIMAL}, - 'admin', to_char(current_timestamp,'YYYYMMDDHH24MISS'), - 'admin', to_char(current_timestamp,'YYYYMMDDHH24MISS') - - - - - update TBL_BC_TRAVEL_NOTICE + METHOD_ID = #{methodId,jdbcType=VARCHAR}, @@ -374,8 +205,255 @@ LST_UPD_TIME = #{lstUpdTime,jdbcType=CHAR}, + + + + + + + + + + + + + + + + + + + + + + + + insert into TBL_BC_TRAVEL_NOTICE ( + SEQ_NO, + METHOD_ID, + BASE_FACTOR, + FACTOR, + TRAVEL_NO, + INDUSTRY_CODE, + USER_ID, + CCID, + IN_STATION_ID, + OUT_STATION_ID, + OPEN_CHANNEL, + INTO_TRANS_TIME, + OUT_TRANS_TIME, + CARD_NO, + IN_TRANSACTION_SERIAL_NO, + IN_STATION_NAME, + IN_DEVICE_NO, + IN_DEVICE_SERIAL_NO, + LINE_NO, + LINE_NAME, + OUT_TRANSACTION_SERIAL_NO, + OUT_STATION_NAME, + OUT_DEVICE_NO, + OUT_DEVICE_SERIAL_NO, + MILEAGE, + DATA_CONFIRMATION_TIME, + SOURCE_FILE_NAME, + STATUS, + REMARK, + CREATE_USER, + CREATE_TIME, + LST_UPD_USER, + LST_UPD_TIME + ) + + SELECT + #{tn.seqNo,jdbcType=VARCHAR} AS SEQ_NO, + #{tn.methodId,jdbcType=VARCHAR} AS METHOD_ID, + #{tn.baseFactor,jdbcType=VARCHAR} AS BASE_FACTOR, + #{tn.factor,jdbcType=VARCHAR} AS FACTOR, + #{tn.travelNo,jdbcType=VARCHAR} AS TRAVEL_NO, + #{tn.industryCode,jdbcType=VARCHAR} AS INDUSTRY_CODE, + #{tn.userId,jdbcType=VARCHAR} AS USER_ID, + #{tn.ccid,jdbcType=VARCHAR} AS CCID, + #{tn.inStationId,jdbcType=VARCHAR} AS IN_STATION_ID, + #{tn.outStationId,jdbcType=VARCHAR} AS OUT_STATION_ID, + #{tn.openChannel,jdbcType=VARCHAR} AS OPEN_CHANNEL, + #{tn.intoTransTime,jdbcType=CHAR} AS INTO_TRANS_TIME, + #{tn.outTransTime,jdbcType=CHAR} AS OUT_TRANS_TIME, + #{tn.cardNo,jdbcType=VARCHAR} AS CARD_NO, + #{tn.inTransactionSerialNo,jdbcType=VARCHAR} AS IN_TRANSACTION_SERIAL_NO, + #{tn.inStationName,jdbcType=VARCHAR} AS IN_STATION_NAME, + #{tn.inDeviceNo,jdbcType=VARCHAR} AS IN_DEVICE_NO, + #{tn.inDeviceSerialNo,jdbcType=VARCHAR} AS IN_DEVICE_SERIAL_NO, + #{tn.lineNo,jdbcType=VARCHAR} AS LINE_NO, + #{tn.lineName,jdbcType=VARCHAR} AS LINE_NAME, + #{tn.outTransactionSerialNo,jdbcType=VARCHAR} AS OUT_TRANSACTION_SERIAL_NO, + #{tn.outStationName,jdbcType=VARCHAR} AS OUT_STATION_NAME, + #{tn.outDeviceNo,jdbcType=VARCHAR} AS OUT_DEVICE_NO, + #{tn.outDeviceSerialNo,jdbcType=VARCHAR} AS OUT_DEVICE_SERIAL_NO, + #{tn.mileage,jdbcType=VARCHAR} AS MILEAGE, + #{tn.dataConfirmationTime,jdbcType=CHAR} AS DATA_CONFIRMATION_TIME, + #{tn.sourceFileName,jdbcType=VARCHAR} AS SOURCE_FILE_NAME, + #{tn.status,jdbcType=VARCHAR} AS STATUS, + #{tn.remark,jdbcType=VARCHAR} AS REMARK, + 'admin' AS CREATE_USER, + to_char(current_timestamp,'YYYYMMDDHH24MISS') AS CREATE_TIME, + 'admin' AS LST_UPD_USER, + to_char(current_timestamp,'YYYYMMDDHH24MISS') AS LST_UPD_TIME + FROM dual + + + + + update TBL_BC_TRAVEL_NOTICE + where SEQ_NO = #{seqNo,jdbcType=VARCHAR} + + update TBL_BC_TRAVEL_NOTICE + SET CHAIN_STATUS = #{chainStatus,jdbcType=VARCHAR} + WHERE CHAIN_TX_ID = #{txId,jdbcType=VARCHAR} + + + + update TBL_BC_TRAVEL_NOTICE + SET CHAIN_STATUS = #{chainStatus,jdbcType=VARCHAR} + + ,CHAIN_TX_ID = #{txId,jdbcType=VARCHAR} + + WHERE TRAVEL_NO IN + + #{travelNo} + + + + + update TBL_BC_TRAVEL_NOTICE + SET STATUS = #{status,jdbcType=VARCHAR}, + SEND_COUNT = SEND_COUNT + 1, + DATA_DELIVERY_TIME = to_char(current_timestamp,'YYYYMMDDHH24MISS') + + ,BATCH_NO = #{batchNo,jdbcType=VARCHAR}, + BUSINESS_COMPLETION_TIME = to_char(current_timestamp,'YYYYMMDDHH24MISS'), + SIGN_STATUS = 0 + + WHERE SEQ_NO IN + + #{seqNo} + + + + + MERGE INTO TBL_BC_TRAVEL_NOTICE target + USING ( + SELECT '' AS SEQ_NO, '' AS CARBON_FOOTPRINT, '' AS REDUCTION_CALCULATE_TIME, '' AS STATUS, '' AS CHAIN_STATUS + FROM dual WHERE 1=0 + + UNION ALL + SELECT #{tn.seqNo}, #{tn.carbonFootprint}, #{tn.reductionCalculateTime}, #{tn.status}, #{tn.chainStatus} + FROM dual + + ) source + ON (target.SEQ_NO = source.SEQ_NO) + WHEN MATCHED THEN + UPDATE SET + target.CARBON_FOOTPRINT = source.CARBON_FOOTPRINT, + target.REDUCTION_CALCULATE_TIME = source.REDUCTION_CALCULATE_TIME, + target.STATUS = source.STATUS, + target.CHAIN_STATUS = source.CHAIN_STATUS + + diff --git a/carbon-dataprocess/pom.xml b/carbon-dataprocess/pom.xml index 7408481a..3253cf64 100644 --- a/carbon-dataprocess/pom.xml +++ b/carbon-dataprocess/pom.xml @@ -3,7 +3,7 @@ com.jiuyv.sptcc carbon-dataprocess - 0.4.2-SNAPSHOT + 0.4.4-SNAPSHOT pom carbon-dataprocess @@ -27,8 +27,8 @@ 2021.0.2 1.2.11 2.6.7 - 0.9.0 - 0.3.0 + 0.10.1-SNAPSHOT + 0.8.0 diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/pom.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/pom.xml new file mode 100644 index 00000000..e055f5f1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/pom.xml @@ -0,0 +1,85 @@ + + 4.0.0 + + com.jiuyv.sptcc.agile + agile-datacenter + 0.0.1-SNAPSHOT + + agile-datacenter-api + jar + + + + + com.jiuyv.sptcc.agile + agile-common + ${agile-common.version} + + + + org.springframework + spring-web + + + + com.fasterxml.jackson.core + jackson-annotations + + + + org.springframework.cloud + spring-cloud-openfeign-core + + + io.github.openfeign + feign-okhttp + + + + + org.springframework.boot + spring-boot-starter-validation + + + + + org.apache.commons + commons-lang3 + + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + org.jacoco + jacoco-maven-plugin + + + default-prepare-agent + + prepare-agent + + + + default-report + prepare-package + + report + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/SjztLinePassengerFeginApi.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/SjztLinePassengerFeginApi.java new file mode 100644 index 00000000..51c7350a --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/SjztLinePassengerFeginApi.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptccc.agile.api.fegin; + +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.*; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import feign.Response; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; + + +/** + * 线路客流统计相关接口 + * @author zhoul + * @date 2024-08-14 + */ +public interface SjztLinePassengerFeginApi{ + + /** 查询 t+1线路客流 */ + @PostMapping(value="/sjzt/querySjztLinePassengerNonrtime") + public Response querySjztLinePassengerNonrtime(@RequestBody ReqSjztLinePassengerNonrtimeQueryDTO reqInfo) throws Exception; + + /** 查询 实时线路客流*/ + @PostMapping(value="/sjzt/querySjztLinePassengerRealtime") + public R> querySjztLinePassengerRealtime(@RequestBody ReqSjztLinePassengerRealtimeQueryDTO reqInfo) throws Exception; + + /** 查询 实时线路累计客流 */ + @PostMapping(value="/sjzt/querySjztLinePassengerTotal") + public R> querySjztLinePassengerTotal(@RequestBody ReqSjztLinePassengerTotalQueryDTO reqInfo) throws Exception; + +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ReqSjztLinePassengerNonrtimeQueryDTO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ReqSjztLinePassengerNonrtimeQueryDTO.java new file mode 100644 index 00000000..ed5e942f --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ReqSjztLinePassengerNonrtimeQueryDTO.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger; + +import javax.validation.constraints.NotNull; + + +/** + * t+1线路客流_查询请求体 + * @author zhoul + * @date 2024-08-14 + */ +public class ReqSjztLinePassengerNonrtimeQueryDTO implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 日期|yyyy-MM-dd + */ + @NotNull(message="日期不能为空") + private String txnDate; + + /** + * Get日期 + */ + public String getTxnDate(){ + return txnDate; + } + /** + * Set日期 + */ + public void setTxnDate(String txnDate){ + this.txnDate = txnDate; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ReqSjztLinePassengerRealtimeQueryDTO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ReqSjztLinePassengerRealtimeQueryDTO.java new file mode 100644 index 00000000..96aa8a4e --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ReqSjztLinePassengerRealtimeQueryDTO.java @@ -0,0 +1,54 @@ +package com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger; + +import javax.validation.constraints.NotNull; + + +/** + * 实时线路客流_查询请求体 + * @author zhoul + * @date 2024-08-14 + */ +public class ReqSjztLinePassengerRealtimeQueryDTO implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 日期|yyyy-MM-dd + */ + private String txnDate; + + /** + * 时间段|Y + */ + @NotNull(message="时间段不能为空") + private Integer timeCode; + + + + /** + * Get日期 + */ + public String getTxnDate(){ + return txnDate; + } + /** + * Set日期 + */ + public void setTxnDate(String txnDate){ + this.txnDate = txnDate; + } + + /** + * Get时间段 + */ + public Integer getTimeCode(){ + return timeCode; + } + /** + * Set时间段 + */ + public void setTimeCode(Integer timeCode){ + this.timeCode = timeCode; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ReqSjztLinePassengerTotalQueryDTO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ReqSjztLinePassengerTotalQueryDTO.java new file mode 100644 index 00000000..fc84ac67 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ReqSjztLinePassengerTotalQueryDTO.java @@ -0,0 +1,54 @@ +package com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger; + +import javax.validation.constraints.NotNull; + + +/** + * 实时线路累计客流_查询请求体 + * @author zhoul + * @date 2024-08-14 + */ +public class ReqSjztLinePassengerTotalQueryDTO implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 日期|yyyy-MM-dd + */ + private String txnDate; + + /** + * 时间段|Y + */ + @NotNull(message="时间段不能为空") + private Integer timeCode; + + + + /** + * Get日期 + */ + public String getTxnDate(){ + return txnDate; + } + /** + * Set日期 + */ + public void setTxnDate(String txnDate){ + this.txnDate = txnDate; + } + + /** + * Get时间段 + */ + public Integer getTimeCode(){ + return timeCode; + } + /** + * Set时间段 + */ + public void setTimeCode(Integer timeCode){ + this.timeCode = timeCode; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ResSjztLinePassengerNonrtimeQueryDTO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ResSjztLinePassengerNonrtimeQueryDTO.java new file mode 100644 index 00000000..2671f5db --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ResSjztLinePassengerNonrtimeQueryDTO.java @@ -0,0 +1,276 @@ +package com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger; + +/** + * t+1线路客流_完整返回体 + * @author zhoul + * @date 2024-08-14 + */ +public class ResSjztLinePassengerNonrtimeQueryDTO implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 日期 + */ + private String txnDate; + + /** + * 刷卡行业 + */ + private String settleCenterCode; + + /** + * 时间段 + */ + private Integer timeCode; + + /** + * 地铁车站号/公交线路号 + */ + private String inLineCode; + + /** + * 总交易数 + */ + private Long totalCnt; + + /** + * 总公交上客交易数/地铁出站交易数 + */ + private Long outTxnCnt; + + /** + * 总地铁进站交易数 + */ + private Long inStationCnt; + + /** + * 交通卡刷卡数(地铁只统计进站) + */ + private Long jtkInStationCnt; + + /** + * 交通卡从公交换乘刷卡数 + */ + private Long jtkBusTransferCnt; + + /** + * 交通卡从地铁换乘刷卡数 + */ + private Long jtkMetroTransferCnt; + + /** + * 扫码数 + */ + private Long ewmInStationCnt; + + /** + * 扫码从公交换乘刷卡数 + */ + private Long qrBusTransferCnt; + + /** + * 扫码从地铁换乘刷卡数 + */ + private Long qrMetroTransferCnt; + + + + /** + * Get日期 + */ + public String getTxnDate(){ + return txnDate; + } + /** + * Set日期 + */ + public void setTxnDate(String txnDate){ + this.txnDate = txnDate; + } + + /** + * Get刷卡行业 + */ + public String getSettleCenterCode(){ + return settleCenterCode; + } + /** + * Set刷卡行业 + */ + public void setSettleCenterCode(String settleCenterCode){ + this.settleCenterCode = settleCenterCode; + } + + /** + * Get时间段 + */ + public Integer getTimeCode(){ + return timeCode; + } + /** + * Set时间段 + */ + public void setTimeCode(Integer timeCode){ + this.timeCode = timeCode; + } + + /** + * Get地铁车站号/公交线路号 + */ + public String getInLineCode(){ + return inLineCode; + } + /** + * Set地铁车站号/公交线路号 + */ + public void setInLineCode(String inLineCode){ + this.inLineCode = inLineCode; + } + + /** + * Get总交易数 + */ + public Long getTotalCnt(){ + return totalCnt; + } + /** + * Set总交易数 + */ + public void setTotalCnt(Long totalCnt){ + this.totalCnt = totalCnt; + } + + /** + * Get总公交上客交易数/地铁出站交易数 + */ + public Long getOutTxnCnt(){ + return outTxnCnt; + } + /** + * Set总公交上客交易数/地铁出站交易数 + */ + public void setOutTxnCnt(Long outTxnCnt){ + this.outTxnCnt = outTxnCnt; + } + + /** + * Get总地铁进站交易数 + */ + public Long getInStationCnt(){ + return inStationCnt; + } + /** + * Set总地铁进站交易数 + */ + public void setInStationCnt(Long inStationCnt){ + this.inStationCnt = inStationCnt; + } + + /** + * Get交通卡刷卡数(地铁只统计进站) + */ + public Long getJtkInStationCnt(){ + return jtkInStationCnt; + } + /** + * Set交通卡刷卡数(地铁只统计进站) + */ + public void setJtkInStationCnt(Long jtkInStationCnt){ + this.jtkInStationCnt = jtkInStationCnt; + } + + /** + * Get交通卡从公交换乘刷卡数 + */ + public Long getJtkBusTransferCnt(){ + return jtkBusTransferCnt; + } + /** + * Set交通卡从公交换乘刷卡数 + */ + public void setJtkBusTransferCnt(Long jtkBusTransferCnt){ + this.jtkBusTransferCnt = jtkBusTransferCnt; + } + + /** + * Get交通卡从地铁换乘刷卡数 + */ + public Long getJtkMetroTransferCnt(){ + return jtkMetroTransferCnt; + } + /** + * Set交通卡从地铁换乘刷卡数 + */ + public void setJtkMetroTransferCnt(Long jtkMetroTransferCnt){ + this.jtkMetroTransferCnt = jtkMetroTransferCnt; + } + + /** + * Get扫码数 + */ + public Long getEwmInStationCnt(){ + return ewmInStationCnt; + } + /** + * Set扫码数 + */ + public void setEwmInStationCnt(Long ewmInStationCnt){ + this.ewmInStationCnt = ewmInStationCnt; + } + + /** + * Get扫码从公交换乘刷卡数 + */ + public Long getQrBusTransferCnt(){ + return qrBusTransferCnt; + } + /** + * Set扫码从公交换乘刷卡数 + */ + public void setQrBusTransferCnt(Long qrBusTransferCnt){ + this.qrBusTransferCnt = qrBusTransferCnt; + } + + /** + * Get扫码从地铁换乘刷卡数 + */ + public Long getQrMetroTransferCnt(){ + return qrMetroTransferCnt; + } + /** + * Set扫码从地铁换乘刷卡数 + */ + public void setQrMetroTransferCnt(Long qrMetroTransferCnt){ + this.qrMetroTransferCnt = qrMetroTransferCnt; + } + + + //拼接为文件的格式,方便调整 +// public String toFileString(String splitStr) { +// return txnDate + splitStr + settleCenterCode +// + splitStr + timeCode + splitStr + inLineCode + splitStr + totalCnt +// + splitStr + outTxnCnt + splitStr + inStationCnt + splitStr + jtkInStationCnt +// + splitStr + jtkBusTransferCnt + splitStr + jtkMetroTransferCnt +// + splitStr + ewmInStationCnt + splitStr + qrBusTransferCnt +// + splitStr + qrMetroTransferCnt; +// } +// public String toFileTitle(String splitStr) { +// return "txnDate" + splitStr + "settleCenterCode" +// + splitStr + "timeCode" + splitStr + "inLineCode" + splitStr + "totalCnt" +// + splitStr + "outTxnCnt" + splitStr + "inStationCnt" + splitStr + "jtkInStationCnt" +// + splitStr + "jtkBusTransferCnt" + splitStr + "jtkMetroTransferCnt" +// + splitStr + "ewmInStationCnt" + splitStr + "qrBusTransferCnt" +// + splitStr + "qrMetroTransferCnt"; +// } + public String toFileString(String splitStr) { + return settleCenterCode + splitStr + timeCode + splitStr + inLineCode + splitStr + txnDate + + splitStr + totalCnt + splitStr + outTxnCnt + splitStr + inStationCnt + + splitStr + jtkInStationCnt + splitStr + qrBusTransferCnt+"\n"; + } + public String toFileTitle(String splitStr) { + return "settleCenterCode" + splitStr + "timeCode" + splitStr + "inLineCode" + splitStr +"txnDate" + + splitStr + "totalCnt" + splitStr + "outTxnCnt" + splitStr + "inStationCnt" + + splitStr + "jtkInStationCnt" + splitStr + "qrBusTransferCnt"+"\n"; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ResSjztLinePassengerRealtimeQueryDTO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ResSjztLinePassengerRealtimeQueryDTO.java new file mode 100644 index 00000000..2d38af70 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ResSjztLinePassengerRealtimeQueryDTO.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger; + +/** + * 实时线路客流_完整返回体 + * @author zhoul + * @date 2024-08-14 + */ +public class ResSjztLinePassengerRealtimeQueryDTO implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 日期 + */ + private String txnDate; + + /** + * 刷卡行业 + */ + private String settleCenterCode; + + /** + * 时间段 + */ + private Integer timeCode; + + /** + * 地铁车站号/公交线路号 + */ + private String inLineCode; + + /** + * 总交易数 + */ + private Long totalCnt; + + /** + * 总公交上客交易数/地铁出站交易数 + */ + private Long outTxnCnt; + + /** + * 总地铁进站交易数 + */ + private Long inStationCnt; + + /** + * 交通卡刷卡数(地铁只统计进站) + */ + private Long jtkInStationCnt; + + /** + * 扫码数 + */ + private Long ewmInStationCnt; + + + + /** + * Get日期 + */ + public String getTxnDate(){ + return txnDate; + } + /** + * Set日期 + */ + public void setTxnDate(String txnDate){ + this.txnDate = txnDate; + } + + /** + * Get刷卡行业 + */ + public String getSettleCenterCode(){ + return settleCenterCode; + } + /** + * Set刷卡行业 + */ + public void setSettleCenterCode(String settleCenterCode){ + this.settleCenterCode = settleCenterCode; + } + + /** + * Get时间段 + */ + public Integer getTimeCode(){ + return timeCode; + } + /** + * Set时间段 + */ + public void setTimeCode(Integer timeCode){ + this.timeCode = timeCode; + } + + /** + * Get地铁车站号/公交线路号 + */ + public String getInLineCode(){ + return inLineCode; + } + /** + * Set地铁车站号/公交线路号 + */ + public void setInLineCode(String inLineCode){ + this.inLineCode = inLineCode; + } + + /** + * Get总交易数 + */ + public Long getTotalCnt(){ + return totalCnt; + } + /** + * Set总交易数 + */ + public void setTotalCnt(Long totalCnt){ + this.totalCnt = totalCnt; + } + + /** + * Get总公交上客交易数/地铁出站交易数 + */ + public Long getOutTxnCnt(){ + return outTxnCnt; + } + /** + * Set总公交上客交易数/地铁出站交易数 + */ + public void setOutTxnCnt(Long outTxnCnt){ + this.outTxnCnt = outTxnCnt; + } + + /** + * Get总地铁进站交易数 + */ + public Long getInStationCnt(){ + return inStationCnt; + } + /** + * Set总地铁进站交易数 + */ + public void setInStationCnt(Long inStationCnt){ + this.inStationCnt = inStationCnt; + } + + /** + * Get交通卡刷卡数(地铁只统计进站) + */ + public Long getJtkInStationCnt(){ + return jtkInStationCnt; + } + /** + * Set交通卡刷卡数(地铁只统计进站) + */ + public void setJtkInStationCnt(Long jtkInStationCnt){ + this.jtkInStationCnt = jtkInStationCnt; + } + + /** + * Get扫码数 + */ + public Long getEwmInStationCnt(){ + return ewmInStationCnt; + } + /** + * Set扫码数 + */ + public void setEwmInStationCnt(Long ewmInStationCnt){ + this.ewmInStationCnt = ewmInStationCnt; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ResSjztLinePassengerTotalQueryDTO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ResSjztLinePassengerTotalQueryDTO.java new file mode 100644 index 00000000..e0c44b0c --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/dto/linepassenger/ResSjztLinePassengerTotalQueryDTO.java @@ -0,0 +1,248 @@ +package com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger; + +/** + * 实时线路累计客流_完整返回体 + * @author zhoul + * @date 2024-08-14 + */ +public class ResSjztLinePassengerTotalQueryDTO implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 日期 + */ + private String txnDate; + + /** + * 刷卡行业 + */ + private String settleCenterCode; + + /** + * 时间段 + */ + private Integer timeCode; + + /** + * 地铁车站号/公交线路号 + */ + private String inLineCode; + + /** + * 总交易数 + */ + private Long totalCnt; + + /** + * 总公交上客交易数/地铁出站交易数 + */ + private Long outTxnCnt; + + /** + * 总地铁进站交易数 + */ + private Long inStationCnt; + + /** + * 交通卡刷卡数(地铁只统计进站) + */ + private Long jtkInStationCnt; + + /** + * 交通卡从公交换乘刷卡数 + */ + private Long jtkBusTransferCnt; + + /** + * 交通卡从地铁换乘刷卡数 + */ + private Long jtkMetroTransferCnt; + + /** + * 扫码数 + */ + private Long ewmInStationCnt; + + /** + * 扫码从公交换乘刷卡数 + */ + private Long qrBusTransferCnt; + + /** + * 扫码从地铁换乘刷卡数 + */ + private Long qrMetroTransferCnt; + + + + /** + * Get日期 + */ + public String getTxnDate(){ + return txnDate; + } + /** + * Set日期 + */ + public void setTxnDate(String txnDate){ + this.txnDate = txnDate; + } + + /** + * Get刷卡行业 + */ + public String getSettleCenterCode(){ + return settleCenterCode; + } + /** + * Set刷卡行业 + */ + public void setSettleCenterCode(String settleCenterCode){ + this.settleCenterCode = settleCenterCode; + } + + /** + * Get时间段 + */ + public Integer getTimeCode(){ + return timeCode; + } + /** + * Set时间段 + */ + public void setTimeCode(Integer timeCode){ + this.timeCode = timeCode; + } + + /** + * Get地铁车站号/公交线路号 + */ + public String getInLineCode(){ + return inLineCode; + } + /** + * Set地铁车站号/公交线路号 + */ + public void setInLineCode(String inLineCode){ + this.inLineCode = inLineCode; + } + + /** + * Get总交易数 + */ + public Long getTotalCnt(){ + return totalCnt; + } + /** + * Set总交易数 + */ + public void setTotalCnt(Long totalCnt){ + this.totalCnt = totalCnt; + } + + /** + * Get总公交上客交易数/地铁出站交易数 + */ + public Long getOutTxnCnt(){ + return outTxnCnt; + } + /** + * Set总公交上客交易数/地铁出站交易数 + */ + public void setOutTxnCnt(Long outTxnCnt){ + this.outTxnCnt = outTxnCnt; + } + + /** + * Get总地铁进站交易数 + */ + public Long getInStationCnt(){ + return inStationCnt; + } + /** + * Set总地铁进站交易数 + */ + public void setInStationCnt(Long inStationCnt){ + this.inStationCnt = inStationCnt; + } + + /** + * Get交通卡刷卡数(地铁只统计进站) + */ + public Long getJtkInStationCnt(){ + return jtkInStationCnt; + } + /** + * Set交通卡刷卡数(地铁只统计进站) + */ + public void setJtkInStationCnt(Long jtkInStationCnt){ + this.jtkInStationCnt = jtkInStationCnt; + } + + /** + * Get交通卡从公交换乘刷卡数 + */ + public Long getJtkBusTransferCnt(){ + return jtkBusTransferCnt; + } + /** + * Set交通卡从公交换乘刷卡数 + */ + public void setJtkBusTransferCnt(Long jtkBusTransferCnt){ + this.jtkBusTransferCnt = jtkBusTransferCnt; + } + + /** + * Get交通卡从地铁换乘刷卡数 + */ + public Long getJtkMetroTransferCnt(){ + return jtkMetroTransferCnt; + } + /** + * Set交通卡从地铁换乘刷卡数 + */ + public void setJtkMetroTransferCnt(Long jtkMetroTransferCnt){ + this.jtkMetroTransferCnt = jtkMetroTransferCnt; + } + + /** + * Get扫码数 + */ + public Long getEwmInStationCnt(){ + return ewmInStationCnt; + } + /** + * Set扫码数 + */ + public void setEwmInStationCnt(Long ewmInStationCnt){ + this.ewmInStationCnt = ewmInStationCnt; + } + + /** + * Get扫码从公交换乘刷卡数 + */ + public Long getQrBusTransferCnt(){ + return qrBusTransferCnt; + } + /** + * Set扫码从公交换乘刷卡数 + */ + public void setQrBusTransferCnt(Long qrBusTransferCnt){ + this.qrBusTransferCnt = qrBusTransferCnt; + } + + /** + * Get扫码从地铁换乘刷卡数 + */ + public Long getQrMetroTransferCnt(){ + return qrMetroTransferCnt; + } + /** + * Set扫码从地铁换乘刷卡数 + */ + public void setQrMetroTransferCnt(Long qrMetroTransferCnt){ + this.qrMetroTransferCnt = qrMetroTransferCnt; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/fallback/SjztLinePassengerFallback.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/fallback/SjztLinePassengerFallback.java new file mode 100644 index 00000000..535298b5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-api/src/main/java/com/jiuyv/sptccc/agile/api/fegin/fallback/SjztLinePassengerFallback.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptccc.agile.api.fegin.fallback; + +import java.util.List; + +import org.springframework.cloud.openfeign.FallbackFactory; + +import com.jiuyv.sptccc.agile.api.fegin.SjztLinePassengerFeginApi; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerNonrtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerRealtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerTotalQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ResSjztLinePassengerRealtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ResSjztLinePassengerTotalQueryDTO; +import com.jiuyv.sptccc.agile.common.core.domain.R; + +import feign.Response; + + +/** + * 线路客流统计相关接口 + * @author zhoul + * @date 2024-08-14 + */ +public class SjztLinePassengerFallback implements FallbackFactory { + @Override + public SjztLinePassengerFeginApi create(Throwable throwable) + { + return new SjztLinePassengerFeginApi() + { + @Override + public Response querySjztLinePassengerNonrtime( + ReqSjztLinePassengerNonrtimeQueryDTO reqInfo) throws Exception { + return Response.builder().body("error".getBytes()).build(); + } + + @Override + public R> querySjztLinePassengerRealtime( + ReqSjztLinePassengerRealtimeQueryDTO reqInfo) throws Exception { + return R.fail(throwable.getMessage()); + } + + @Override + public R> querySjztLinePassengerTotal( + ReqSjztLinePassengerTotalQueryDTO reqInfo) throws Exception { + return R.fail(throwable.getMessage()); + } + + }; + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/pom.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/pom.xml new file mode 100644 index 00000000..0108bcf7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/pom.xml @@ -0,0 +1,283 @@ + + 4.0.0 + + com.jiuyv.sptcc.agile + agile-datacenter + 0.0.1-SNAPSHOT + + agile-datacenter-service + + + + true + + + + + + com.jiuyv.sptcc.agile + agile-datacenter-api + + + com.jiuyv.sptcc.agile + agile-common + + + + + + + com.jiuyv.sptcc.agile + agile-common + ${agile-common.version} + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.cloud + spring-cloud-starter-openfeign + + + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-client + + + + org.springframework.cloud + spring-cloud-starter-loadbalancer + + + org.springframework.cloud + spring-cloud-starter-config + + + org.springframework.cloud + spring-cloud-starter-bootstrap + + + + org.springframework.boot + spring-boot-starter-security + + + + org.springframework.boot + spring-boot-starter-actuator + + + + io.micrometer + micrometer-registry-prometheus + + + + org.springframework.cloud + spring-cloud-starter-sleuth + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + + + + + com.github.pagehelper + pagehelper-spring-boot-starter + + + + + commons-io + commons-io + + + + + commons-collections + commons-collections + + + + org.springframework.boot + spring-boot-devtools + true + + + + + net.logstash.logback + logstash-logback-encoder + + + + + + org.apache.commons + commons-lang3 + + + + + org.apache.commons + commons-pool2 + + + + + org.springframework.boot + spring-boot-starter-aop + + + + org.springframework.boot + spring-boot-configuration-processor + true + + + + org.springframework.boot + spring-boot-starter-cache + + + + org.postgresql + postgresql + + + + com.jcraft + jsch + + + + org.apache.axis + axis + 1.4 + + + + org.bouncycastle + bcpkix-jdk15on + 1.70 + + + + commons-codec + commons-codec + 1.11 + + + + io.github.openfeign + feign-okhttp + + + + + org.springframework.boot + spring-boot-starter-test + test + + + com.vaadin.external.google + android-json + + + + + junit + junit + test + + + org.springframework.cloud + spring-cloud-contract-wiremock + test + + + org.mockito + mockito-inline + test + + + com.h2database + h2 + runtime + + + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + org.jacoco + jacoco-maven-plugin + + + default-prepare-agent + + prepare-agent + + + + default-report + prepare-package + + report + + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + build-info + + build-info + + + + repackage + + repackage + + + + + + + true + com.jiuyv.sptccc.agile.DataCenterServiceApplication + + + + + + src/main/resources + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/DataCenterServiceApplication.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/DataCenterServiceApplication.java new file mode 100644 index 00000000..5bc54959 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/DataCenterServiceApplication.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptccc.agile; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.groovy.template.GroovyTemplateAutoConfiguration; +import org.springframework.cloud.netflix.eureka.EnableEurekaClient; +import org.springframework.cloud.openfeign.EnableFeignClients; +import org.springframework.context.annotation.ImportResource; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.transaction.annotation.EnableTransactionManagement; + +/** + * 启动程序 + * + * @author admin + */ +@EnableFeignClients +@EnableEurekaClient +@EnableScheduling +@EnableTransactionManagement +@SpringBootApplication(exclude = {GroovyTemplateAutoConfiguration.class}) +@ImportResource({ "classpath:spring/applicationContext.xml" })//事务控制 +public class DataCenterServiceApplication { + private static final Logger LOGGER = LoggerFactory.getLogger(DataCenterServiceApplication.class); + + public static void main(String[] args) { + SpringApplication.run(DataCenterServiceApplication.class, args); + LOGGER.info("(♥◠‿◠)ノ゙ 模块启动成功゙ \n"+ + " ___ ___ ___ \n"+ + " |\\ \\ |\\ \\ / /| \n"+ + " \\ \\ \\ \\ \\ \\/ / / \n"+ + " __ \\ \\ \\ \\ \\ / / \n"+ + " |\\ \\\\_\\ \\ \\/ / / \n"+ + " \\ \\________\\ __/ / / \n"+ + " \\|________| |\\___/ / \n"+ + " \\|___|/ \n" + ); + } +} + diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/DataCenterServiceServletInitializer.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/DataCenterServiceServletInitializer.java new file mode 100644 index 00000000..10d78707 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/DataCenterServiceServletInitializer.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptccc.agile; + +import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; + +/** + * web容器中进行部署 + * + * @author admin + */ +public class DataCenterServiceServletInitializer extends SpringBootServletInitializer { + @Override + protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { + return application.sources(DataCenterServiceApplication.class); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/common/constant/SyncDatacenterConstants.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/common/constant/SyncDatacenterConstants.java new file mode 100644 index 00000000..41a03429 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/common/constant/SyncDatacenterConstants.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptccc.agile.business.common.constant; + +/** + * 数据同步相关常量 + */ +public class SyncDatacenterConstants +{ + private SyncDatacenterConstants() { + throw new IllegalStateException("Utility class"); + } + + /** 日期转换用 */ + public static final String FORMAT_DATETIME ="yyyy-MM-dd HH:mm:ss"; + public static final String FORMAT_DATEDAY ="yyyy-MM-dd"; + public static final String FORMAT_DATETIME_SIMPLE ="yyyyMMddHHmmss"; + public static final String FORMAT_DATEDAY_SIMPLE ="yyyyMMdd"; + + /** 文件名后缀 */ + public static final String FILEEXT_CSV =".csv"; + public static final String FILEEXT_ZIP =".zip"; + + /** 文件名 */ + public static final String FILENAME_LINE_PASSENGER_NONRTIME ="line_passenger_nonrtime_"; + public static final String FILENAME_LINE_PASSENGER_NONRTIME_W ="line_passenger_nonrtime_%s.zip"; +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/controller/SjztLinePassengerController.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/controller/SjztLinePassengerController.java new file mode 100644 index 00000000..d98e8958 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/controller/SjztLinePassengerController.java @@ -0,0 +1,127 @@ +package com.jiuyv.sptccc.agile.business.controller; + +import java.io.BufferedInputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.InputStream; +import java.io.OutputStream; +import java.nio.file.Path; +import java.util.ArrayList; +import java.util.List; + +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang3.time.DateFormatUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.HttpHeaders; +import org.springframework.http.HttpStatus; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerNonrtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerRealtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerTotalQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ResSjztLinePassengerRealtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ResSjztLinePassengerTotalQueryDTO; +import com.jiuyv.sptccc.agile.business.common.constant.SyncDatacenterConstants; +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerRealtime; +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerTotal; +import com.jiuyv.sptccc.agile.business.service.ISjztLinePassengerService; +import com.jiuyv.sptccc.agile.common.annotation.LogIgnore; +import com.jiuyv.sptccc.agile.common.constant.Constants; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.utils.ServletUtils; + + +/** + * 线路客流统计相关接口 + * @author zhoul + * @date 2024-08-14 + */ +@RestController +@RequestMapping("/sjzt") +public class SjztLinePassengerController { + @Autowired + private ISjztLinePassengerService sjztLinePassengerService; + + @LogIgnore + @PostMapping("/querySjztLinePassengerNonrtime") + public void querySjztLinePassengerNonrtime(HttpServletResponse response,@RequestBody ReqSjztLinePassengerNonrtimeQueryDTO reqInfo) throws Exception { + //先去sftp服务器检索是否已有文件 + + String fileName = ServletUtils.urlEncode(String.format(SyncDatacenterConstants.FILENAME_LINE_PASSENGER_NONRTIME_W + ,reqInfo.getTxnDate().replace("-", ""))); + response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE); + response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment; filename=" + fileName); + Path path = sjztLinePassengerService.querySjztLinePassengerNonrtime(reqInfo); + File file = path.toFile(); + if(file != null) { + OutputStream outputStream = response.getOutputStream(); + try (InputStream inputStream = new BufferedInputStream(new FileInputStream(file))) { + response.setContentLength(inputStream.available()); + byte[] buffer = new byte[4096]; + int bytesRead; + while ((bytesRead = inputStream.read(buffer)) != -1) { + outputStream.write(buffer, 0, bytesRead); + } + outputStream.flush(); + } finally { + //上传到sftp并删除文件 + file.deleteOnExit(); + } + }else { + response.sendError(HttpStatus.NOT_FOUND.value(), "File not found"); + } + } + + @PostMapping("/querySjztLinePassengerRealtime") + public R> querySjztLinePassengerRealtime(@RequestBody ReqSjztLinePassengerRealtimeQueryDTO reqInfo) throws Exception { + List list = sjztLinePassengerService.querySjztLinePassengerNonrtime(reqInfo); + List data = new ArrayList<>(); + for(TblSjztLinePassengerRealtime x:list) { + ResSjztLinePassengerRealtimeQueryDTO vo = new ResSjztLinePassengerRealtimeQueryDTO(); + vo.setTxnDate(DateFormatUtils.format(x.getTxnDate(), Constants.FORMAT_DATEDAY_SIMPLE)); + vo.setSettleCenterCode(x.getSettleCenterCode()); + vo.setTimeCode(x.getTimeCode()); + vo.setInLineCode(x.getInLineCode()); + vo.setTotalCnt(x.getTotalCnt()); + vo.setOutTxnCnt(x.getOutTxnCnt()); + vo.setInStationCnt(x.getInStationCnt()); + vo.setJtkInStationCnt(x.getJtkInStationCnt()); +// vo.setJtkBusTransferCnt(x.getJtkBusTransferCnt()); +// vo.setJtkMetroTransferCnt(x.getJtkMetroTransferCnt()); + vo.setEwmInStationCnt(x.getEwmInStationCnt()); +// vo.setQrBusTransferCnt(x.getQrBusTransferCnt()); +// vo.setQrMetroTransferCnt(x.getQrMetroTransferCnt()); + data.add(vo); + } + return R.ok(data); + } + + @PostMapping("/querySjztLinePassengerTotal") + public R> querySjztLinePassengerTotal(@RequestBody ReqSjztLinePassengerTotalQueryDTO reqInfo)throws Exception { + List list = sjztLinePassengerService.querySjztLinePassengerNonrtime(reqInfo); + List data = new ArrayList<>(); + for(TblSjztLinePassengerTotal x:list) { + ResSjztLinePassengerTotalQueryDTO vo = new ResSjztLinePassengerTotalQueryDTO(); + vo.setTxnDate(DateFormatUtils.format(x.getTxnDate(), Constants.FORMAT_DATEDAY_SIMPLE)); + vo.setSettleCenterCode(x.getSettleCenterCode()); + vo.setTimeCode(x.getTimeCode()); + vo.setInLineCode(x.getInLineCode()); + vo.setTotalCnt(x.getTotalCnt()); + vo.setOutTxnCnt(x.getOutTxnCnt()); + vo.setInStationCnt(x.getInStationCnt()); + vo.setJtkInStationCnt(x.getJtkInStationCnt()); + vo.setJtkBusTransferCnt(x.getJtkBusTransferCnt()); + vo.setJtkMetroTransferCnt(x.getJtkMetroTransferCnt()); + vo.setEwmInStationCnt(x.getEwmInStationCnt()); + vo.setQrBusTransferCnt(x.getQrBusTransferCnt()); + vo.setQrMetroTransferCnt(x.getQrMetroTransferCnt()); + data.add(vo); + } + return R.ok(data); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblSjztLinePassengerNonrtime.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblSjztLinePassengerNonrtime.java new file mode 100644 index 00000000..f1f6a704 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblSjztLinePassengerNonrtime.java @@ -0,0 +1,227 @@ +package com.jiuyv.sptccc.agile.business.entity; + +import java.math.BigDecimal; +import java.time.Instant; +import java.util.Date; + + +/** + * t+1线路客流 + * @author zhoul + * @date 2024-08-14 + */ +public class TblSjztLinePassengerNonrtime implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** 日期 */ + private Date txnDate; + + /** 刷卡行业 */ + private String settleCenterCode; + + /** 时间段 */ + private Integer timeCode; + + /** 地铁车站号/公交线路号 */ + private String inLineCode; + + /** 总交易数 */ + private Long totalCnt; + + /** 总公交上客交易数/地铁出站交易数 */ + private Long outTxnCnt; + + /** 总地铁进站交易数 */ + private Long inStationCnt; + + /** 交通卡刷卡数(地铁只统计进站) */ + private Long jtkInStationCnt; + + /** 交通卡从公交换乘刷卡数 */ + private Long jtkBusTransferCnt; + + /** 交通卡从地铁换乘刷卡数 */ + private Long jtkMetroTransferCnt; + + /** 扫码数 */ + private Long ewmInStationCnt; + + /** 扫码从公交换乘刷卡数 */ + private Long qrBusTransferCnt; + + /** 扫码从地铁换乘刷卡数 */ + private Long qrMetroTransferCnt; + + + + /** + * Get日期 + */ + public Date getTxnDate(){ + return txnDate; + } + /** + * Set日期 + */ + public void setTxnDate(Date txnDate){ + this.txnDate = txnDate; + } + + /** + * Get刷卡行业 + */ + public String getSettleCenterCode(){ + return settleCenterCode; + } + /** + * Set刷卡行业 + */ + public void setSettleCenterCode(String settleCenterCode){ + this.settleCenterCode = settleCenterCode; + } + + /** + * Get时间段 + */ + public Integer getTimeCode(){ + return timeCode; + } + /** + * Set时间段 + */ + public void setTimeCode(Integer timeCode){ + this.timeCode = timeCode; + } + + /** + * Get地铁车站号/公交线路号 + */ + public String getInLineCode(){ + return inLineCode; + } + /** + * Set地铁车站号/公交线路号 + */ + public void setInLineCode(String inLineCode){ + this.inLineCode = inLineCode; + } + + /** + * Get总交易数 + */ + public Long getTotalCnt(){ + return totalCnt; + } + /** + * Set总交易数 + */ + public void setTotalCnt(Long totalCnt){ + this.totalCnt = totalCnt; + } + + /** + * Get总公交上客交易数/地铁出站交易数 + */ + public Long getOutTxnCnt(){ + return outTxnCnt; + } + /** + * Set总公交上客交易数/地铁出站交易数 + */ + public void setOutTxnCnt(Long outTxnCnt){ + this.outTxnCnt = outTxnCnt; + } + + /** + * Get总地铁进站交易数 + */ + public Long getInStationCnt(){ + return inStationCnt; + } + /** + * Set总地铁进站交易数 + */ + public void setInStationCnt(Long inStationCnt){ + this.inStationCnt = inStationCnt; + } + + /** + * Get交通卡刷卡数(地铁只统计进站) + */ + public Long getJtkInStationCnt(){ + return jtkInStationCnt; + } + /** + * Set交通卡刷卡数(地铁只统计进站) + */ + public void setJtkInStationCnt(Long jtkInStationCnt){ + this.jtkInStationCnt = jtkInStationCnt; + } + + /** + * Get交通卡从公交换乘刷卡数 + */ + public Long getJtkBusTransferCnt(){ + return jtkBusTransferCnt; + } + /** + * Set交通卡从公交换乘刷卡数 + */ + public void setJtkBusTransferCnt(Long jtkBusTransferCnt){ + this.jtkBusTransferCnt = jtkBusTransferCnt; + } + + /** + * Get交通卡从地铁换乘刷卡数 + */ + public Long getJtkMetroTransferCnt(){ + return jtkMetroTransferCnt; + } + /** + * Set交通卡从地铁换乘刷卡数 + */ + public void setJtkMetroTransferCnt(Long jtkMetroTransferCnt){ + this.jtkMetroTransferCnt = jtkMetroTransferCnt; + } + + /** + * Get扫码数 + */ + public Long getEwmInStationCnt(){ + return ewmInStationCnt; + } + /** + * Set扫码数 + */ + public void setEwmInStationCnt(Long ewmInStationCnt){ + this.ewmInStationCnt = ewmInStationCnt; + } + + /** + * Get扫码从公交换乘刷卡数 + */ + public Long getQrBusTransferCnt(){ + return qrBusTransferCnt; + } + /** + * Set扫码从公交换乘刷卡数 + */ + public void setQrBusTransferCnt(Long qrBusTransferCnt){ + this.qrBusTransferCnt = qrBusTransferCnt; + } + + /** + * Get扫码从地铁换乘刷卡数 + */ + public Long getQrMetroTransferCnt(){ + return qrMetroTransferCnt; + } + /** + * Set扫码从地铁换乘刷卡数 + */ + public void setQrMetroTransferCnt(Long qrMetroTransferCnt){ + this.qrMetroTransferCnt = qrMetroTransferCnt; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblSjztLinePassengerRealtime.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblSjztLinePassengerRealtime.java new file mode 100644 index 00000000..79817b84 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblSjztLinePassengerRealtime.java @@ -0,0 +1,227 @@ +package com.jiuyv.sptccc.agile.business.entity; + +import java.math.BigDecimal; +import java.time.Instant; +import java.util.Date; + + +/** + * 实时线路客流 + * @author zhoul + * @date 2024-08-14 + */ +public class TblSjztLinePassengerRealtime implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** 日期 */ + private Date txnDate; + + /** 刷卡行业 */ + private String settleCenterCode; + + /** 时间段 */ + private Integer timeCode; + + /** 地铁车站号/公交线路号 */ + private String inLineCode; + + /** 总交易数 */ + private Long totalCnt; + + /** 总公交上客交易数/地铁出站交易数 */ + private Long outTxnCnt; + + /** 总地铁进站交易数 */ + private Long inStationCnt; + + /** 交通卡刷卡数(地铁只统计进站) */ + private Long jtkInStationCnt; + + /** 交通卡从公交换乘刷卡数 */ + private Long jtkBusTransferCnt; + + /** 交通卡从地铁换乘刷卡数 */ + private Long jtkMetroTransferCnt; + + /** 扫码数 */ + private Long ewmInStationCnt; + + /** 扫码从公交换乘刷卡数 */ + private Long qrBusTransferCnt; + + /** 扫码从地铁换乘刷卡数 */ + private Long qrMetroTransferCnt; + + + + /** + * Get日期 + */ + public Date getTxnDate(){ + return txnDate; + } + /** + * Set日期 + */ + public void setTxnDate(Date txnDate){ + this.txnDate = txnDate; + } + + /** + * Get刷卡行业 + */ + public String getSettleCenterCode(){ + return settleCenterCode; + } + /** + * Set刷卡行业 + */ + public void setSettleCenterCode(String settleCenterCode){ + this.settleCenterCode = settleCenterCode; + } + + /** + * Get时间段 + */ + public Integer getTimeCode(){ + return timeCode; + } + /** + * Set时间段 + */ + public void setTimeCode(Integer timeCode){ + this.timeCode = timeCode; + } + + /** + * Get地铁车站号/公交线路号 + */ + public String getInLineCode(){ + return inLineCode; + } + /** + * Set地铁车站号/公交线路号 + */ + public void setInLineCode(String inLineCode){ + this.inLineCode = inLineCode; + } + + /** + * Get总交易数 + */ + public Long getTotalCnt(){ + return totalCnt; + } + /** + * Set总交易数 + */ + public void setTotalCnt(Long totalCnt){ + this.totalCnt = totalCnt; + } + + /** + * Get总公交上客交易数/地铁出站交易数 + */ + public Long getOutTxnCnt(){ + return outTxnCnt; + } + /** + * Set总公交上客交易数/地铁出站交易数 + */ + public void setOutTxnCnt(Long outTxnCnt){ + this.outTxnCnt = outTxnCnt; + } + + /** + * Get总地铁进站交易数 + */ + public Long getInStationCnt(){ + return inStationCnt; + } + /** + * Set总地铁进站交易数 + */ + public void setInStationCnt(Long inStationCnt){ + this.inStationCnt = inStationCnt; + } + + /** + * Get交通卡刷卡数(地铁只统计进站) + */ + public Long getJtkInStationCnt(){ + return jtkInStationCnt; + } + /** + * Set交通卡刷卡数(地铁只统计进站) + */ + public void setJtkInStationCnt(Long jtkInStationCnt){ + this.jtkInStationCnt = jtkInStationCnt; + } + + /** + * Get交通卡从公交换乘刷卡数 + */ + public Long getJtkBusTransferCnt(){ + return jtkBusTransferCnt; + } + /** + * Set交通卡从公交换乘刷卡数 + */ + public void setJtkBusTransferCnt(Long jtkBusTransferCnt){ + this.jtkBusTransferCnt = jtkBusTransferCnt; + } + + /** + * Get交通卡从地铁换乘刷卡数 + */ + public Long getJtkMetroTransferCnt(){ + return jtkMetroTransferCnt; + } + /** + * Set交通卡从地铁换乘刷卡数 + */ + public void setJtkMetroTransferCnt(Long jtkMetroTransferCnt){ + this.jtkMetroTransferCnt = jtkMetroTransferCnt; + } + + /** + * Get扫码数 + */ + public Long getEwmInStationCnt(){ + return ewmInStationCnt; + } + /** + * Set扫码数 + */ + public void setEwmInStationCnt(Long ewmInStationCnt){ + this.ewmInStationCnt = ewmInStationCnt; + } + + /** + * Get扫码从公交换乘刷卡数 + */ + public Long getQrBusTransferCnt(){ + return qrBusTransferCnt; + } + /** + * Set扫码从公交换乘刷卡数 + */ + public void setQrBusTransferCnt(Long qrBusTransferCnt){ + this.qrBusTransferCnt = qrBusTransferCnt; + } + + /** + * Get扫码从地铁换乘刷卡数 + */ + public Long getQrMetroTransferCnt(){ + return qrMetroTransferCnt; + } + /** + * Set扫码从地铁换乘刷卡数 + */ + public void setQrMetroTransferCnt(Long qrMetroTransferCnt){ + this.qrMetroTransferCnt = qrMetroTransferCnt; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblSjztLinePassengerTotal.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblSjztLinePassengerTotal.java new file mode 100644 index 00000000..98514e10 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblSjztLinePassengerTotal.java @@ -0,0 +1,227 @@ +package com.jiuyv.sptccc.agile.business.entity; + +import java.math.BigDecimal; +import java.time.Instant; +import java.util.Date; + + +/** + * 实时线路累计客流 + * @author zhoul + * @date 2024-08-14 + */ +public class TblSjztLinePassengerTotal implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** 日期 */ + private Date txnDate; + + /** 刷卡行业 */ + private String settleCenterCode; + + /** 时间段 */ + private Integer timeCode; + + /** 地铁车站号/公交线路号 */ + private String inLineCode; + + /** 总交易数 */ + private Long totalCnt; + + /** 总公交上客交易数/地铁出站交易数 */ + private Long outTxnCnt; + + /** 总地铁进站交易数 */ + private Long inStationCnt; + + /** 交通卡刷卡数(地铁只统计进站) */ + private Long jtkInStationCnt; + + /** 交通卡从公交换乘刷卡数 */ + private Long jtkBusTransferCnt; + + /** 交通卡从地铁换乘刷卡数 */ + private Long jtkMetroTransferCnt; + + /** 扫码数 */ + private Long ewmInStationCnt; + + /** 扫码从公交换乘刷卡数 */ + private Long qrBusTransferCnt; + + /** 扫码从地铁换乘刷卡数 */ + private Long qrMetroTransferCnt; + + + + /** + * Get日期 + */ + public Date getTxnDate(){ + return txnDate; + } + /** + * Set日期 + */ + public void setTxnDate(Date txnDate){ + this.txnDate = txnDate; + } + + /** + * Get刷卡行业 + */ + public String getSettleCenterCode(){ + return settleCenterCode; + } + /** + * Set刷卡行业 + */ + public void setSettleCenterCode(String settleCenterCode){ + this.settleCenterCode = settleCenterCode; + } + + /** + * Get时间段 + */ + public Integer getTimeCode(){ + return timeCode; + } + /** + * Set时间段 + */ + public void setTimeCode(Integer timeCode){ + this.timeCode = timeCode; + } + + /** + * Get地铁车站号/公交线路号 + */ + public String getInLineCode(){ + return inLineCode; + } + /** + * Set地铁车站号/公交线路号 + */ + public void setInLineCode(String inLineCode){ + this.inLineCode = inLineCode; + } + + /** + * Get总交易数 + */ + public Long getTotalCnt(){ + return totalCnt; + } + /** + * Set总交易数 + */ + public void setTotalCnt(Long totalCnt){ + this.totalCnt = totalCnt; + } + + /** + * Get总公交上客交易数/地铁出站交易数 + */ + public Long getOutTxnCnt(){ + return outTxnCnt; + } + /** + * Set总公交上客交易数/地铁出站交易数 + */ + public void setOutTxnCnt(Long outTxnCnt){ + this.outTxnCnt = outTxnCnt; + } + + /** + * Get总地铁进站交易数 + */ + public Long getInStationCnt(){ + return inStationCnt; + } + /** + * Set总地铁进站交易数 + */ + public void setInStationCnt(Long inStationCnt){ + this.inStationCnt = inStationCnt; + } + + /** + * Get交通卡刷卡数(地铁只统计进站) + */ + public Long getJtkInStationCnt(){ + return jtkInStationCnt; + } + /** + * Set交通卡刷卡数(地铁只统计进站) + */ + public void setJtkInStationCnt(Long jtkInStationCnt){ + this.jtkInStationCnt = jtkInStationCnt; + } + + /** + * Get交通卡从公交换乘刷卡数 + */ + public Long getJtkBusTransferCnt(){ + return jtkBusTransferCnt; + } + /** + * Set交通卡从公交换乘刷卡数 + */ + public void setJtkBusTransferCnt(Long jtkBusTransferCnt){ + this.jtkBusTransferCnt = jtkBusTransferCnt; + } + + /** + * Get交通卡从地铁换乘刷卡数 + */ + public Long getJtkMetroTransferCnt(){ + return jtkMetroTransferCnt; + } + /** + * Set交通卡从地铁换乘刷卡数 + */ + public void setJtkMetroTransferCnt(Long jtkMetroTransferCnt){ + this.jtkMetroTransferCnt = jtkMetroTransferCnt; + } + + /** + * Get扫码数 + */ + public Long getEwmInStationCnt(){ + return ewmInStationCnt; + } + /** + * Set扫码数 + */ + public void setEwmInStationCnt(Long ewmInStationCnt){ + this.ewmInStationCnt = ewmInStationCnt; + } + + /** + * Get扫码从公交换乘刷卡数 + */ + public Long getQrBusTransferCnt(){ + return qrBusTransferCnt; + } + /** + * Set扫码从公交换乘刷卡数 + */ + public void setQrBusTransferCnt(Long qrBusTransferCnt){ + this.qrBusTransferCnt = qrBusTransferCnt; + } + + /** + * Get扫码从地铁换乘刷卡数 + */ + public Long getQrMetroTransferCnt(){ + return qrMetroTransferCnt; + } + /** + * Set扫码从地铁换乘刷卡数 + */ + public void setQrMetroTransferCnt(Long qrMetroTransferCnt){ + this.qrMetroTransferCnt = qrMetroTransferCnt; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblSjztLinePassengerNonrtimeVO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblSjztLinePassengerNonrtimeVO.java new file mode 100644 index 00000000..a25dee0d --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblSjztLinePassengerNonrtimeVO.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptccc.agile.business.entity.vo; + +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerNonrtime; + + /** + * t+1线路客流,扩展 + * @author zhoul + * @date 2024-08-14 + */ +public class TblSjztLinePassengerNonrtimeVO extends TblSjztLinePassengerNonrtime implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblSjztLinePassengerRealtimeVO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblSjztLinePassengerRealtimeVO.java new file mode 100644 index 00000000..c5afb681 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblSjztLinePassengerRealtimeVO.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptccc.agile.business.entity.vo; + +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerRealtime; + + /** + * 实时线路客流,扩展 + * @author zhoul + * @date 2024-08-14 + */ +public class TblSjztLinePassengerRealtimeVO extends TblSjztLinePassengerRealtime implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblSjztLinePassengerTotalVO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblSjztLinePassengerTotalVO.java new file mode 100644 index 00000000..5f909255 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblSjztLinePassengerTotalVO.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptccc.agile.business.entity.vo; + +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerTotal; + + /** + * 实时线路累计客流,扩展 + * @author zhoul + * @date 2024-08-14 + */ +public class TblSjztLinePassengerTotalVO extends TblSjztLinePassengerTotal implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblSjztLinePassengerNonrtimeMapper.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblSjztLinePassengerNonrtimeMapper.java new file mode 100644 index 00000000..068fc9cc --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblSjztLinePassengerNonrtimeMapper.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptccc.agile.business.mapper; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Options; +import org.apache.ibatis.cursor.Cursor; + +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerNonrtime; +import com.jiuyv.sptccc.agile.business.entity.vo.TblSjztLinePassengerNonrtimeVO; + + +/** + * t+1线路客流 + * @author zhoul + * @date 2024-08-14 + */ +@Mapper +public interface TblSjztLinePassengerNonrtimeMapper{ + + /** 查询集合 */ + @Options(fetchSize = 5000) + Cursor selectList(TblSjztLinePassengerNonrtimeVO paramMap); + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblSjztLinePassengerRealtimeMapper.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblSjztLinePassengerRealtimeMapper.java new file mode 100644 index 00000000..7641335c --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblSjztLinePassengerRealtimeMapper.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptccc.agile.business.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Mapper; + +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerRealtime; +import com.jiuyv.sptccc.agile.business.entity.vo.TblSjztLinePassengerRealtimeVO; + + +/** + * 实时线路客流 + * @author zhoul + * @date 2024-08-14 + */ +@Mapper +public interface TblSjztLinePassengerRealtimeMapper{ + + /** 查询集合 */ + List selectList(TblSjztLinePassengerRealtimeVO paramMap); + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblSjztLinePassengerTotalMapper.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblSjztLinePassengerTotalMapper.java new file mode 100644 index 00000000..d646e5c2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblSjztLinePassengerTotalMapper.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptccc.agile.business.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Mapper; + +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerTotal; +import com.jiuyv.sptccc.agile.business.entity.vo.TblSjztLinePassengerTotalVO; + + +/** + * 实时线路累计客流 + * @author zhoul + * @date 2024-08-14 + */ +@Mapper +public interface TblSjztLinePassengerTotalMapper{ + + /** 查询集合 */ + List selectList(TblSjztLinePassengerTotalVO paramMap); + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/service/ISjztLinePassengerService.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/service/ISjztLinePassengerService.java new file mode 100644 index 00000000..e62a7055 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/service/ISjztLinePassengerService.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptccc.agile.business.service; + +import java.nio.file.Path; +import java.util.List; + +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerNonrtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerRealtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerTotalQueryDTO; +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerRealtime; +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerTotal; + +/** + * 线路客流统计相关接口 + * @author zhoul + * @date 2024-08-14 + */ +public interface ISjztLinePassengerService { + + /** 查询T+1实时客流 */ + Path querySjztLinePassengerNonrtime(ReqSjztLinePassengerNonrtimeQueryDTO reqInfo) throws Exception; + /** 查询实时客流 */ + List querySjztLinePassengerNonrtime(ReqSjztLinePassengerRealtimeQueryDTO reqInfo)throws Exception; + /** 查询实时客流 */ + List querySjztLinePassengerNonrtime(ReqSjztLinePassengerTotalQueryDTO reqInfo) throws Exception;; + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/service/impl/SjztLinePassengerServiceImpl.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/service/impl/SjztLinePassengerServiceImpl.java new file mode 100644 index 00000000..1bc7fde6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/business/service/impl/SjztLinePassengerServiceImpl.java @@ -0,0 +1,174 @@ +package com.jiuyv.sptccc.agile.business.service.impl; + +import java.io.BufferedWriter; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardOpenOption; +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.zip.ZipEntry; +import java.util.zip.ZipOutputStream; + +import org.apache.commons.lang3.time.DateFormatUtils; +import org.apache.commons.lang3.time.DateUtils; +import org.apache.ibatis.cursor.Cursor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerNonrtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerRealtimeQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ReqSjztLinePassengerTotalQueryDTO; +import com.jiuyv.sptccc.agile.api.fegin.dto.linepassenger.ResSjztLinePassengerNonrtimeQueryDTO; +import com.jiuyv.sptccc.agile.business.common.constant.SyncDatacenterConstants; +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerNonrtime; +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerRealtime; +import com.jiuyv.sptccc.agile.business.entity.TblSjztLinePassengerTotal; +import com.jiuyv.sptccc.agile.business.entity.vo.TblSjztLinePassengerNonrtimeVO; +import com.jiuyv.sptccc.agile.business.entity.vo.TblSjztLinePassengerRealtimeVO; +import com.jiuyv.sptccc.agile.business.entity.vo.TblSjztLinePassengerTotalVO; +import com.jiuyv.sptccc.agile.business.mapper.TblSjztLinePassengerNonrtimeMapper; +import com.jiuyv.sptccc.agile.business.mapper.TblSjztLinePassengerRealtimeMapper; +import com.jiuyv.sptccc.agile.business.mapper.TblSjztLinePassengerTotalMapper; +import com.jiuyv.sptccc.agile.business.service.ISjztLinePassengerService; +import com.jiuyv.sptccc.agile.common.constant.Constants; +import com.jiuyv.sptccc.agile.common.core.BaseManagerUtils; +import com.jiuyv.sptccc.agile.common.core.domain.BaseTime; + +import net.logstash.logback.encoder.org.apache.commons.lang3.StringUtils; + +/** + * t+1线路客流 + * @author zhoul + * @date 2024-08-14 + */ +@Service("sjztLinePassengerService") +public class SjztLinePassengerServiceImpl implements ISjztLinePassengerService { + private static final Logger LOGGER = LoggerFactory.getLogger(SjztLinePassengerServiceImpl.class); + + @Autowired + private TblSjztLinePassengerNonrtimeMapper tblSjztLinePassengerNonrtimeMapper; + @Autowired + private TblSjztLinePassengerRealtimeMapper tblSjztLinePassengerRealtimeMapper; + @Autowired + private TblSjztLinePassengerTotalMapper tblSjztLinePassengerTotalMapper; + + @Transactional + @Override + public Path querySjztLinePassengerNonrtime(ReqSjztLinePassengerNonrtimeQueryDTO reqInfo) throws Exception { + Path tempTxtFile = Files.createTempFile(SyncDatacenterConstants.FILENAME_LINE_PASSENGER_NONRTIME, SyncDatacenterConstants.FILEEXT_CSV); + + TblSjztLinePassengerNonrtimeVO param = new TblSjztLinePassengerNonrtimeVO(); + param.setTxnDate(DateUtils.parseDate(reqInfo.getTxnDate(), Constants.FORMAT_DATEDAY.length()==reqInfo.getTxnDate().length() + ?Constants.FORMAT_DATEDAY: Constants.FORMAT_DATEDAY_SIMPLE)); + + boolean flag = false; + try (Cursor stream = tblSjztLinePassengerNonrtimeMapper.selectList(param); + BufferedWriter writer = Files.newBufferedWriter(tempTxtFile, StandardOpenOption.WRITE)) { + //表头 + ResSjztLinePassengerNonrtimeQueryDTO vo = new ResSjztLinePassengerNonrtimeQueryDTO(); + writer.write(vo.toFileTitle(",")); + + Iterator data = stream.iterator(); + List lists; + while(!(lists=readLines(data, 20000)).isEmpty()) { + StringBuilder str = new StringBuilder(); + for(TblSjztLinePassengerNonrtime x:lists) { + vo = new ResSjztLinePassengerNonrtimeQueryDTO(); + vo.setTxnDate(DateFormatUtils.format(x.getTxnDate(), Constants.FORMAT_DATEDAY_SIMPLE)); + vo.setSettleCenterCode(x.getSettleCenterCode()); + vo.setTimeCode(x.getTimeCode()); + vo.setInLineCode(x.getInLineCode()); + vo.setTotalCnt(x.getTotalCnt()); + vo.setOutTxnCnt(x.getOutTxnCnt()); + vo.setInStationCnt(x.getInStationCnt()); + vo.setJtkInStationCnt(x.getJtkInStationCnt()); + vo.setJtkBusTransferCnt(x.getJtkBusTransferCnt()); + vo.setJtkMetroTransferCnt(x.getJtkMetroTransferCnt()); + vo.setEwmInStationCnt(x.getEwmInStationCnt()); + vo.setQrBusTransferCnt(x.getQrBusTransferCnt()); + vo.setQrMetroTransferCnt(x.getQrMetroTransferCnt()); + str.append(vo.toFileString(",")); + } + writer.write(str.toString()); + } + flag = stream.isConsumed(); + }catch (Exception e) { + LOGGER.info("querySjztLinePassengerNonrtime read error>>",e); + flag = false; + Files.deleteIfExists(tempTxtFile);//删除临时文件 + } + + if(flag) { + Path tempZipFile = Files.createTempFile(SyncDatacenterConstants.FILENAME_LINE_PASSENGER_NONRTIME, SyncDatacenterConstants.FILEEXT_ZIP); + try (FileOutputStream fos = new FileOutputStream(tempZipFile.toFile()); + ZipOutputStream zos = new ZipOutputStream(fos); + FileInputStream fis = new FileInputStream(tempTxtFile.toFile())) { + + ZipEntry zipEntry = new ZipEntry(tempTxtFile.getFileName().toString()); + zos.putNextEntry(zipEntry); + byte[] buffer = new byte[4096]; + int length; + while ((length = fis.read(buffer)) > 0) { + zos.write(buffer, 0, length); + } + zos.closeEntry(); + }catch (Exception e) { + LOGGER.info("querySjztLinePassengerNonrtime zip error>>",e); + return null; + } + finally { + Files.deleteIfExists(tempTxtFile);//删除临时文件 + } + return tempZipFile; + } + + return null; + } + private List readLines(Iterator data,int number) throws Exception { + List list = new ArrayList<>(); + while(data.hasNext()) { + list.add(data.next()); + if(list.size()>=number) { + break; + } + } + return list; + } + + + @Override + public List querySjztLinePassengerNonrtime( + ReqSjztLinePassengerRealtimeQueryDTO reqInfo) throws Exception { + TblSjztLinePassengerRealtimeVO param = new TblSjztLinePassengerRealtimeVO(); + if(StringUtils.isNotBlank(reqInfo.getTxnDate())) { + param.setTxnDate(DateUtils.parseDate(reqInfo.getTxnDate(), Constants.FORMAT_DATEDAY.length()==reqInfo.getTxnDate().length() + ?Constants.FORMAT_DATEDAY: Constants.FORMAT_DATEDAY_SIMPLE)); + }else {//默认当天 + BaseTime timeVO = BaseManagerUtils.getSystemTime(); + param.setTxnDate(DateUtils.parseDate(timeVO.getDateDay(), Constants.FORMAT_DATEDAY)); + } + param.setTimeCode(reqInfo.getTimeCode()); + return tblSjztLinePassengerRealtimeMapper.selectList(param); + } + + @Override + public List querySjztLinePassengerNonrtime( + ReqSjztLinePassengerTotalQueryDTO reqInfo) throws Exception { + TblSjztLinePassengerTotalVO param = new TblSjztLinePassengerTotalVO(); + if(StringUtils.isNotBlank(reqInfo.getTxnDate())) { + param.setTxnDate(DateUtils.parseDate(reqInfo.getTxnDate(), Constants.FORMAT_DATEDAY.length()==reqInfo.getTxnDate().length() + ?Constants.FORMAT_DATEDAY: Constants.FORMAT_DATEDAY_SIMPLE)); + }else {//默认当天 + BaseTime timeVO = BaseManagerUtils.getSystemTime(); + param.setTxnDate(DateUtils.parseDate(timeVO.getDateDay(), Constants.FORMAT_DATEDAY)); + } + param.setTimeCode(reqInfo.getTimeCode()); + return tblSjztLinePassengerTotalMapper.selectList(param); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/annotation/LogIgnore.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/annotation/LogIgnore.java new file mode 100644 index 00000000..4410a2da --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/annotation/LogIgnore.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptccc.agile.common.annotation; + +import java.lang.annotation.Documented; +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + + +/** + * 方法不需要输出日志时使用 + * @author zhouliang + * + */ +@Target({ElementType.METHOD}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface LogIgnore { +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/config/ConsoleConfig.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/config/ConsoleConfig.java new file mode 100644 index 00000000..f47e5e66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/config/ConsoleConfig.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptccc.agile.common.config; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +/** + * 读取项目相关配置 + * + * @author admin + */ +@Component +@ConfigurationProperties(prefix = "console") +public class ConsoleConfig { + /** 项目名称 */ + private String name; + + /** 版本 */ + private String version; + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getVersion() { + return version; + } + + public void setVersion(String version) { + this.version = version; + } + +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/constant/Constants.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/constant/Constants.java new file mode 100644 index 00000000..ecd4f6c7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/constant/Constants.java @@ -0,0 +1,20 @@ +package com.jiuyv.sptccc.agile.common.constant; + +/** + * 通用常量信息 + * + * @author admin + */ +public class Constants { + + /** 一个固定的密钥,用于配置文件内容加密/解密 */ + public static final String SM4_SECERT_KEY = "a14751855ccb428d982c33dfa3535a57"; + + /** 日期格式 */ + public static final String FORMAT_DATEDAY = "yyyy-MM-dd"; + public static final String FORMAT_DATEDAY_SIMPLE ="yyyyMMdd"; + + /** 默认时区 */ + public static final String DEFAULT_TIMEZONE = "+08:00"; + +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/core/BaseManagerUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/core/BaseManagerUtils.java new file mode 100644 index 00000000..1168040f --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/core/BaseManagerUtils.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptccc.agile.common.core; + +import java.time.Instant; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; +import java.util.Date; +import java.util.Locale; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.jiuyv.sptccc.agile.common.core.domain.BaseTime; +import com.jiuyv.sptccc.agile.common.utils.spring.SpringUtils; +import com.jiuyv.sptccc.agile.system.mapper.ISysTimeBaseMapper; +/** + * 某些普遍方法再次封装,减少引入快速使用 + * @author zhouliang + * + */ +public class BaseManagerUtils { + + protected static final Logger LOGGER = LoggerFactory.getLogger(BaseManagerUtils.class); + + private BaseManagerUtils() { + throw new IllegalStateException("Utility class"); + } + + /** 获取系统的时间*/ + public static BaseTime getSystemTime() { + //强行从数据库获取,如果没有也不报错 + BaseTime timeVO = null; + try{ + ISysTimeBaseMapper tmapper=SpringUtils.getBean(ISysTimeBaseMapper.class); + timeVO=tmapper.selectSysCurrentTime(); + }catch (Exception e) { + //正常是不会走到这里面的,只是兼容写法而已 + LOGGER.error("Exception in obtaining database time。Using System Time Substitution"); + timeVO = new BaseTime(); + timeVO.setUtcTime(Instant.now()); + } + timeVO.setDate(Date.from(timeVO.getUtcTime())); + timeVO.setDateTime(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") + .withLocale(Locale.SIMPLIFIED_CHINESE).withZone(ZoneId.of(timeVO.getTimeZone())).format(timeVO.getUtcTime())); + timeVO.setDateDay(timeVO.getDateTime().substring(0, 10)); + return timeVO; + } + } \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/core/domain/BaseTime.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/core/domain/BaseTime.java new file mode 100644 index 00000000..b12fa18a --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/core/domain/BaseTime.java @@ -0,0 +1,81 @@ +package com.jiuyv.sptccc.agile.common.core.domain; + +import java.time.Instant; +import java.util.Date; + +/** + * 时间对象 + * @author zhouliang + * + */ +public class BaseTime implements java.io.Serializable { + + /** default Serial Version UID*/ + private static final long serialVersionUID = 1L; + + /** 当前时区 */ + private String timeZone ="+08:00"; + + /** 当前时区 YYYY-MM-DD */ + private String dateDay; + + /** 当前时区 YYYY-MM-DD HH:MM:SS */ + private String dateTime; + + /** 当前时区日期 */ + private Date date; + + /** UTC-0 带时区时间 */ + private Instant utcTime; + + /** UTC-0 带时区时间 */ + private String utcTimeStr; + + public String getTimeZone() { + return timeZone; + } + + public void setTimeZone(String timeZone) { + this.timeZone = timeZone; + } + + public String getDateDay() { + return dateDay; + } + + public void setDateDay(String dateDay) { + this.dateDay = dateDay; + } + + public String getDateTime() { + return dateTime; + } + + public void setDateTime(String dataTime) { + this.dateTime = dataTime; + } + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + + public Instant getUtcTime() { + return utcTime; + } + + public void setUtcTime(Instant utcTime) { + this.utcTime = utcTime; + } + + public String getUtcTimeStr() { + return utcTimeStr; + } + + public void setUtcTimeStr(String utcTimeStr) { + this.utcTimeStr = utcTimeStr; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/enums/HttpMethod.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/enums/HttpMethod.java new file mode 100644 index 00000000..00cff613 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/enums/HttpMethod.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptccc.agile.common.enums; + +import java.util.HashMap; +import java.util.Map; + +import org.springframework.lang.Nullable; + +/** + * 请求方式 + * + * @author admin + */ +public enum HttpMethod +{ + GET, HEAD, POST, PUT, PATCH, DELETE, OPTIONS, TRACE; + + private static final Map mappings = new HashMap<>(16); + + static + { + for (HttpMethod httpMethod : values()) + { + mappings.put(httpMethod.name(), httpMethod); + } + } + + @Nullable + public static HttpMethod resolve(@Nullable String method) + { + return (method != null ? mappings.get(method) : null); + } + + public boolean matches(String method) + { + return (this == resolve(method)); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/enums/IDictEnum.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/enums/IDictEnum.java new file mode 100644 index 00000000..fb524908 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/enums/IDictEnum.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptccc.agile.common.enums; + +/** + * 字段代码通用枚举接口 + * 便于统一方式处理 + * @author zhouliang + * + */ +public interface IDictEnum { + + public String getCode(); + + public String getMsg(); +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/exception/ServiceException.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/exception/ServiceException.java new file mode 100644 index 00000000..58a61171 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/exception/ServiceException.java @@ -0,0 +1,73 @@ +package com.jiuyv.sptccc.agile.common.exception; + +/** + * 业务异常 + * + * @author admin + */ +public final class ServiceException extends RuntimeException +{ + private static final long serialVersionUID = 1L; + + /** + * 错误码 + */ + private Integer code; + + /** + * 错误提示 + */ + private String message; + + /** + * 错误明细,内部调试错误 + * + * 和 {@link CommonResult#getDetailMessage()} 一致的设计 + */ + private String detailMessage; + + /** + * 空构造方法,避免反序列化问题 + */ + public ServiceException() + { + } + + public ServiceException(String message) + { + this.message = message; + } + + public ServiceException(String message, Integer code) + { + this.message = message; + this.code = code; + } + + public String getDetailMessage() + { + return detailMessage; + } + + public String getMessage() + { + return message; + } + + public Integer getCode() + { + return code; + } + + public ServiceException setMessage(String message) + { + this.message = message; + return this; + } + + public ServiceException setDetailMessage(String detailMessage) + { + this.detailMessage = detailMessage; + return this; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/exception/UtilException.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/exception/UtilException.java new file mode 100644 index 00000000..12b883d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/exception/UtilException.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptccc.agile.common.exception; + +/** + * 工具类异常 + * + * @author admin + */ +public class UtilException extends RuntimeException +{ + private static final long serialVersionUID = 8247610319171014183L; + + public UtilException(Throwable e) + { + super(e.getMessage(), e); + } + + public UtilException(String message) + { + super(message); + } + + public UtilException(String message, Throwable throwable) + { + super(message, throwable); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/JsonUtil.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/JsonUtil.java new file mode 100644 index 00000000..6c225fd7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/JsonUtil.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptccc.agile.common.utils; + +import java.text.SimpleDateFormat; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.core.JsonGenerator.Feature; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; + +/** + * + * @author zhouliang + * + */ +public abstract class JsonUtil { + + /** + * The Constant LOGGER. + */ + private static final Logger LOGGER = LoggerFactory.getLogger(JsonUtil.class); + + private JsonUtil() { + throw new IllegalStateException("Utility class"); + } + + /** + * The object mapper. + */ + private static ObjectMapper objectMapper = new ObjectMapper(); + + static { + objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); + objectMapper.setSerializationInclusion(Include.NON_NULL); + objectMapper.configure(Feature.WRITE_BIGDECIMAL_AS_PLAIN, true); + objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")); + objectMapper.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES, true);//允许单引号 + } + public static ObjectMapper JsonMapper(){ + return objectMapper; + } + + + /** + * 转为json字符串 + * + * @param object the object + * @return the string + */ + public static String toJSONString(Object object) { + try { + return objectMapper.writeValueAsString(object); + } catch (Exception e) { + LOGGER.error("convert failed", e); + return ""; + } + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/MessageUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/MessageUtils.java new file mode 100644 index 00000000..caf67624 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/MessageUtils.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptccc.agile.common.utils; + +import java.util.Locale; + +import org.springframework.context.MessageSource; +import org.springframework.context.i18n.LocaleContextHolder; + +import com.jiuyv.sptccc.agile.common.utils.spring.SpringUtils; + +/** + * 获取i18n资源文件 + * + * @author admin + */ +public class MessageUtils +{ + /** + * 根据消息键和参数 获取消息 委托给spring messageSource + * + * @param code 消息键 + * @param args 参数 + * @return 获取国际化翻译值 + */ + public static String message(String code, Object... args) + { + MessageSource messageSource = SpringUtils.getBean(MessageSource.class); + return messageSource.getMessage(code, args, LocaleContextHolder.getLocale()); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/ServletUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/ServletUtils.java new file mode 100644 index 00000000..9459035a --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/ServletUtils.java @@ -0,0 +1,62 @@ +package com.jiuyv.sptccc.agile.common.utils; + +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; + +import javax.servlet.http.HttpServletRequest; + +import org.springframework.web.context.request.RequestAttributes; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import com.jiuyv.sptccc.agile.common.constant.Constants; + +/** + * 客户端工具类 + * + * @author admin + */ +public class ServletUtils +{ + + /** + * 获取request + */ + public static HttpServletRequest getRequest() + { + ServletRequestAttributes requestAttributes = getRequestAttributes(); + if(null != requestAttributes) { + return requestAttributes.getRequest(); + } + return null; + } + + + public static ServletRequestAttributes getRequestAttributes() + { + RequestAttributes attributes = RequestContextHolder.getRequestAttributes(); + if(null != attributes) { + return (ServletRequestAttributes) attributes; + } + return null; + } + + /** + * 内容编码 + * + * @param str 内容 + * @return 编码后的内容 + */ + public static String urlEncode(String str) + { + try + { + return URLEncoder.encode(str, StandardCharsets.UTF_8.name()); + } + catch (UnsupportedEncodingException e) + { + return ""; + } + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/StriUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/StriUtils.java new file mode 100644 index 00000000..e828e2da --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/StriUtils.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptccc.agile.common.utils; + +/** + * 字符串工具类 + * + * @author admin + */ +public class StriUtils +{ + + /** + * 数字左边补齐0,使之达到指定长度。注意,如果数字转换为字符串后,长度大于size,则只保留 最后size个字符。 + * + * @param num 数字对象 + * @param size 字符串指定长度 + * @return 返回数字的字符串格式,该字符串为指定长度。 + */ + public static final String padl(final Number num, final int size) + { + return padl(num.toString(), size, '0'); + } + + /** + * 字符串左补齐。如果原始字符串s长度大于size,则只保留最后size个字符。 + * + * @param s 原始字符串 + * @param size 字符串指定长度 + * @param c 用于补齐的字符 + * @return 返回指定长度的字符串,由原字符串左补齐或截取得到。 + */ + public static final String padl(final String s, final int size, final char c) + { + final StringBuilder sb = new StringBuilder(size); + if (s != null) + { + final int len = s.length(); + if (s.length() <= size) + { + for (int i = size - len; i > 0; i--) + { + sb.append(c); + } + sb.append(s); + } + else + { + return s.substring(len - size, len); + } + } + else + { + for (int i = size; i > 0; i--) + { + sb.append(c); + } + } + return sb.toString(); + } + + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/ip/IpUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/ip/IpUtils.java new file mode 100644 index 00000000..e02b7d97 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/ip/IpUtils.java @@ -0,0 +1,103 @@ +package com.jiuyv.sptccc.agile.common.utils.ip; + +import java.net.InetAddress; +import java.net.UnknownHostException; + +import javax.servlet.http.HttpServletRequest; + +import com.jiuyv.sptccc.agile.common.utils.StriUtils; +import org.apache.commons.lang3.StringUtils; + +/** + * 获取IP方法 + * + * @author admin + */ +public class IpUtils { + /** + * 获取客户端IP + * + * @param request 请求对象 + * @return IP地址 + */ + public static String getIpAddr(HttpServletRequest request) { + if (request == null) { + return "unknown"; + } + String ip = request.getHeader("x-forwarded-for"); + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("Proxy-Client-IP"); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("X-Forwarded-For"); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("WL-Proxy-Client-IP"); + } + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("X-Real-IP"); + } + + if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getRemoteAddr(); + } + + return "0:0:0:0:0:0:0:1".equals(ip) ? "127.0.0.1" : getMultistageReverseProxyIp(ip); + } + + /** + * 获取IP地址 + * + * @return 本地IP地址 + */ + public static String getHostIp() { + try { + return InetAddress.getLocalHost().getHostAddress(); + } catch (UnknownHostException e) { + } + return "127.0.0.1"; + } + + /** + * 获取主机名 + * + * @return 本地主机名 + */ + public static String getHostName() { + try { + return InetAddress.getLocalHost().getHostName(); + } catch (UnknownHostException e) { + } + return "未知"; + } + + /** + * 从多级反向代理中获得第一个非unknown IP地址 + * + * @param ip 获得的IP地址 + * @return 第一个非unknown IP地址 + */ + public static String getMultistageReverseProxyIp(String ip) { + // 多级反向代理检测 + if (ip != null && ip.indexOf(",") >= 0) { + final String[] ips = ip.trim().split(","); + for (String subIp : ips) { + if (false == isUnknown(subIp)) { + ip = subIp; + break; + } + } + } + return ip; + } + + /** + * 检测给定字符串是否为未知,多用于检测HTTP请求相关 + * + * @param checkString 被检测的字符串 + * @return 是否未知 + */ + public static boolean isUnknown(String checkString) { + return StringUtils.isBlank(checkString) || "unknown".equalsIgnoreCase(checkString); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/sm4/Sm4Util.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/sm4/Sm4Util.java new file mode 100644 index 00000000..636b604e --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/sm4/Sm4Util.java @@ -0,0 +1,68 @@ +package com.jiuyv.sptccc.agile.common.utils.sm4; + +import org.apache.commons.codec.binary.Base64; +import org.apache.commons.codec.binary.Hex; +import org.bouncycastle.jce.provider.BouncyCastleProvider; + +import javax.crypto.BadPaddingException; +import javax.crypto.Cipher; +import javax.crypto.IllegalBlockSizeException; +import javax.crypto.NoSuchPaddingException; +import javax.crypto.spec.SecretKeySpec; +import java.security.*; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:04 + */ +public class Sm4Util { + public static final String ALGORITHM_NAME = "SM4"; + public static final String ALGORITHM_NAME_ECB_PADDING = "SM4/ECB/PKCS7Padding"; + public static final String ALGORITHM_NAME_ECB_NOPADDING = "SM4/ECB/NoPadding"; + public static final String ALGORITHM_NAME_CBC_PADDING = "SM4/CBC/PKCS7Padding"; + public static final String ALGORITHM_NAME_CBC_NOPADDING = "SM4/CBC/NoPadding"; + + /** + * SM4算法目前只支持128位(即密钥16字节) + */ + public static final int DEFAULT_KEY_SIZE = 128; + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + public static byte[] encrypt_ECB_Padding(byte[] key, byte[] data) + throws InvalidKeyException, NoSuchAlgorithmException, NoSuchProviderException, + NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.ENCRYPT_MODE, key); + return cipher.doFinal(data); + } + + private static Cipher generateECBCipher(String algorithmName, int mode, byte[] key) + throws NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException, + InvalidKeyException { + Cipher cipher = Cipher.getInstance(algorithmName, BouncyCastleProvider.PROVIDER_NAME); + Key sm4Key = new SecretKeySpec(key, ALGORITHM_NAME); + cipher.init(mode, sm4Key); + return cipher; + } + + public static String encryptEcb(String key, String text) throws Exception { + return Base64.encodeBase64String(Sm4Util.encrypt_ECB_Padding(Hex.decodeHex(key),text.getBytes("UTF-8"))); + } + + + public static byte[] decrypt_ECB_Padding(byte[] key, byte[] cipherText) + throws IllegalBlockSizeException, BadPaddingException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.DECRYPT_MODE, key); + return cipher.doFinal(cipherText); + } + public static String decryptEcb(String key, String text) throws Exception { + return new String(Sm4Util.decrypt_ECB_Padding(Hex.decodeHex(key), Base64.decodeBase64((text)))); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/spring/SpringUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/spring/SpringUtils.java new file mode 100644 index 00000000..10f345e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/common/utils/spring/SpringUtils.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptccc.agile.common.utils.spring; + +import org.springframework.aop.framework.AopContext; +import org.springframework.beans.BeansException; +import org.springframework.beans.factory.NoSuchBeanDefinitionException; +import org.springframework.beans.factory.config.BeanFactoryPostProcessor; +import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; +import org.springframework.stereotype.Component; + +import com.jiuyv.sptccc.agile.common.utils.StriUtils; + +/** + * spring工具类 方便在非spring管理环境中获取bean + * + * @author admin + */ +@Component +public final class SpringUtils implements BeanFactoryPostProcessor, ApplicationContextAware { + /** Spring应用上下文环境 */ + private static ConfigurableListableBeanFactory beanFactory; + + private static ApplicationContext applicationContext; + + @Override + public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { + setBeanFactory(beanFactory); + } + + public static void setBeanFactory(ConfigurableListableBeanFactory beanFactory) { + SpringUtils.beanFactory = beanFactory; + } + + @Override + public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { + setContext(applicationContext); + } + + public static void setContext(ApplicationContext applicationContext) { + SpringUtils.applicationContext = applicationContext; + } + + /** + * 获取对象 + * + * @param name + * @return Object 一个以所给名字注册的bean的实例 + * @throws org.springframework.beans.BeansException + * + */ + @SuppressWarnings("unchecked") + public static T getBean(String name) throws BeansException { + return (T) beanFactory.getBean(name); + } + + /** + * 获取类型为requiredType的对象 + * + * @param clz + * @return + * @throws org.springframework.beans.BeansException + * + */ + public static T getBean(Class clz) throws BeansException { + T result = (T) beanFactory.getBean(clz); + return result; + } + + +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/aspectj/GlobalLogAspect.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/aspectj/GlobalLogAspect.java new file mode 100644 index 00000000..5d729feb --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/aspectj/GlobalLogAspect.java @@ -0,0 +1,189 @@ +package com.jiuyv.sptccc.agile.framework.aspectj; + +import java.lang.reflect.Method; +import java.util.Collection; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.commons.lang3.StringUtils; +import org.aspectj.lang.JoinPoint; +import org.aspectj.lang.annotation.AfterReturning; +import org.aspectj.lang.annotation.AfterThrowing; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Before; +import org.aspectj.lang.annotation.Pointcut; +import org.aspectj.lang.reflect.MethodSignature; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; +import org.springframework.validation.BindingResult; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.servlet.HandlerMapping; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.jiuyv.sptccc.agile.common.enums.HttpMethod; +import com.jiuyv.sptccc.agile.common.utils.JsonUtil; +import com.jiuyv.sptccc.agile.common.utils.ServletUtils; +import com.jiuyv.sptccc.agile.common.utils.ip.IpUtils; + +/** + * 全局请求日志,这个日志就不记录到表里面了 + * @author zhouliang + * + */ +@Aspect +@Component +public class GlobalLogAspect +{ + private static final Logger log = LoggerFactory.getLogger(GlobalLogAspect.class); + + private static final ThreadLocal timeTreadLocal = new ThreadLocal<>(); + + //不输出任何日志 + private static final String LogIgnorePath = "@annotation(com.jiuyv.sptccc.agile.common.annotation.LogIgnore)"; + //扫描所有Controller + private static final String ControllerPath = "execution(* *..*.*Controller.*(..))"; + //不输出这个转发的 + private static final String InitBinderPath = "@annotation(org.springframework.web.bind.annotation.InitBinder)"; + + //请求Controller输出日志 + @Pointcut(ControllerPath+"&&!"+LogIgnorePath+"&&!"+InitBinderPath) + public void controllerAspect() { + } + + //请求日志记录 + @Before("controllerAspect()") + public void before(JoinPoint joinPoint) { + timeTreadLocal.set(System.currentTimeMillis()); + // 接收请求,记录完整请求内容 + //获取请求的request + HttpServletRequest request = ServletUtils.getRequest(); + String methodName = getMethodName(joinPoint); + // 请求的地址 + String ip = IpUtils.getIpAddr(ServletUtils.getRequest()); + String userName="none"; + String keyValue = setRequestValue(joinPoint,request.getMethod()); + log.info("{}-req:User={},Ip={},Uri={},Method={},ContentType={}",methodName,userName,ip,request.getRequestURI(),request.getMethod(),request.getContentType()); + log.info("{}-req:Params={}",methodName, keyValue); + } + //后置返回 + @AfterReturning(pointcut = "controllerAspect()",returning = "result") + public void doAfterReturning(JoinPoint joinPoint,Object result) { + long startTime = timeTreadLocal.get(); + double callTime = (System.currentTimeMillis() - startTime) / 1000.0; + String methodName = getMethodName(joinPoint); + String returnstr = null; + if(result!=null) { + returnstr=JsonUtil.toJSONString(result); + } + log.info("{}-res:Success,Time={}s,Data={}",methodName, callTime, returnstr); + timeTreadLocal.remove(); + } + + //后置异常返回 + @AfterThrowing(pointcut = "controllerAspect()", throwing = "e") + public void doAfterThrowing(JoinPoint joinPoint, Throwable e) { + long startTime = timeTreadLocal.get(); + double callTime = (System.currentTimeMillis() - startTime) / 1000.0; + String methodName = getMethodName(joinPoint); + log.info("{}-res:Failure,Time={}s,Error={}",methodName, callTime,e.getMessage()); + timeTreadLocal.remove(); + } + + /** 获取方法名称*/ + private String getMethodName(JoinPoint joinPoint) { + MethodSignature methodSignature = (MethodSignature) joinPoint.getSignature(); + //获取被拦截的方法 + Method method = methodSignature.getMethod(); + String className = method.getDeclaringClass().getCanonicalName(); + String methodName = className.substring(className.lastIndexOf(".")+1) + "." + method.getName(); + return methodName; + } + + /** + * 获取请求的参数 + */ + private String setRequestValue(JoinPoint joinPoint, String requestMethod) + { + if (HttpMethod.PUT.name().equals(requestMethod) || HttpMethod.POST.name().equals(requestMethod)) + { + String params = argsArrayToString(joinPoint.getArgs()); + return params; + } + else + { + Map paramsMap = (Map) ServletUtils.getRequest().getAttribute(HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE); + return paramsMap.toString(); + } + } + + /** + * 参数拼装 + */ + private String argsArrayToString(Object[] paramsArray) + { + String params = ""; + if (paramsArray != null && paramsArray.length > 0) + { + for (Object o : paramsArray) + { + if (o!=null && !isFilterObject(o)) + { + try + { + Object jsonObj = JsonUtil.toJSONString(o); + params += jsonObj.toString() + " "; + } + catch (Exception e) + { + } + } + } + } + return params.trim(); + } + + /** + * 判断是否需要过滤的对象。 + * + * @param o 对象信息。 + * @return 如果是需要过滤的对象,则返回true;否则返回false。 + */ + @SuppressWarnings("rawtypes") + public boolean isFilterObject(final Object o) + { + Class clazz = o.getClass(); + if (clazz.isArray()) + { + return clazz.getComponentType().isAssignableFrom(MultipartFile.class); + } + else if (Collection.class.isAssignableFrom(clazz)) + { + Collection collection = (Collection) o; + for (Object value : collection) + { + if(value instanceof MultipartFile) { + return true; + } + } + return false; + } + else if (Map.class.isAssignableFrom(clazz)) + { + Map map = (Map) o; + + for (Object value : map.entrySet()) + { + Map.Entry entry = (Map.Entry) value; + if(entry.getValue() instanceof MultipartFile) { + return true; + } + } + return false; + } + return o instanceof MultipartFile || o instanceof HttpServletRequest || o instanceof HttpServletResponse + || o instanceof BindingResult; + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/config/ActuatorSecurityConfig.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/config/ActuatorSecurityConfig.java new file mode 100644 index 00000000..6856084c --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/config/ActuatorSecurityConfig.java @@ -0,0 +1,46 @@ +package com.jiuyv.sptccc.agile.framework.config; + + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.env.Environment; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.web.util.matcher.AntPathRequestMatcher; + +@Configuration +@EnableWebSecurity +public class ActuatorSecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + Environment env; + + @Override + protected void configure(HttpSecurity security) throws Exception { + + + String actuatorPath = env.getProperty("management.endpoints.web.base-path"); + if(StringUtils.isBlank(actuatorPath)) { + actuatorPath = "/actuator"; + } + //优化一下根路径 + String servletPath = env.getProperty("server.servlet.context-path"); + if(StringUtils.isNotBlank(servletPath)) { + if(servletPath.endsWith("/")) { + servletPath=servletPath.substring(0,servletPath.length()-1); + } + servletPath=servletPath.replaceAll("[^/]+", "**"); + }else { + servletPath=""; + } + security.csrf().disable(); + security.requestMatcher(new AntPathRequestMatcher(servletPath+actuatorPath+"/**")) + .authorizeRequests() + .antMatchers(servletPath+actuatorPath+"/shutdown","/**"+servletPath+actuatorPath+"/serviceregistry","/**"+servletPath+actuatorPath+"/refresh") + .access("hasIpAddress(\"127.0.0.1\")") + .antMatchers(servletPath+actuatorPath+"/**").authenticated() + .and().httpBasic(); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/config/ApplicationConfig.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/config/ApplicationConfig.java new file mode 100644 index 00000000..877c48a7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/config/ApplicationConfig.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptccc.agile.framework.config; + +import java.util.TimeZone; + +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.EnableAspectJAutoProxy; + +/** + * 程序注解配置 + * + * @author admin + */ +@Configuration +// 表示通过aop框架暴露该代理对象,AopContext能够访问 +@EnableAspectJAutoProxy(exposeProxy = true) +// 指定要扫描的Mapper类的包的路径 +@MapperScan("com.jiuyv.sptccc.agile.**.mapper") +public class ApplicationConfig +{ + /** + * 时区配置 + */ + @Bean + public Jackson2ObjectMapperBuilderCustomizer jacksonObjectMapperCustomization() + { + return jacksonObjectMapperBuilder -> jacksonObjectMapperBuilder.timeZone(TimeZone.getDefault()); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/config/SftpConfigProperties.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/config/SftpConfigProperties.java new file mode 100644 index 00000000..305a1840 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/config/SftpConfigProperties.java @@ -0,0 +1,150 @@ +package com.jiuyv.sptccc.agile.framework.config; + +import org.apache.commons.pool2.impl.GenericObjectPoolConfig; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +import com.jcraft.jsch.Session; +import com.jiuyv.sptccc.agile.common.constant.Constants; +import com.jiuyv.sptccc.agile.common.utils.sm4.Sm4Util; + +/** + * sftp配置类 + * @author zhouliang + * + */ +@Component +@ConfigurationProperties(prefix = "filesftp") +public class SftpConfigProperties implements java.io.Serializable{ + /** + * + */ + private static final long serialVersionUID = 1L; + + /** + * 主机ip + */ + private String host; + /** + * 端口 + */ + private int port=22; + /** + * 用户账号 + */ + private String username; + /** + * 密码 + */ + private String password; + + /** + * location + */ + private int location; + + /** 全局上传主路径 */ + private String uploadPath; + + /** 连接池配置*/ + private transient GenericObjectPoolConfig poolConfig; + + /** + * @return the host + */ + public String getHost() { + return host; + } + + /** + * @param host the host to set + */ + public void setHost(String host) { + this.host = host; + } + + /** + * @return the port + */ + public int getPort() { + return port; + } + + /** + * @param port the port to set + */ + public void setPort(int port) { + this.port = port; + } + + /** + * @return the username + */ + public String getUsername() { + return username; + } + + /** + * @param username the username to set + */ + public void setUsername(String username) { + this.username = username; + } + + /** + * @return the password + */ + public String getPassword() { + try { + return Sm4Util.decryptEcb(Constants.SM4_SECERT_KEY, password); + }catch (Exception e) { + // 兼容写法,不加密也可以 + } + return password; + } + + /** + * @param password the password to set + */ + public void setPassword(String password) { + this.password = password; + } + + /** + * @return the location + */ + public int getLocation() { + return location; + } + + /** + * @param location the location to set + */ + public void setLocation(int location) { + this.location = location; + } + + public String getUploadPath() { + return uploadPath; + } + + public void setUploadPath(String uploadPath) { + this.uploadPath = uploadPath; + } + + /** + * @return the poolConfig + */ + public GenericObjectPoolConfig getPoolConfig() { + return poolConfig; + } + + /** + * @param poolConfig the poolConfig to set + */ + public void setPoolConfig(GenericObjectPoolConfig poolConfig) { + this.poolConfig = poolConfig; + } + + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/web/exception/GlobalExceptionHandler.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/web/exception/GlobalExceptionHandler.java new file mode 100644 index 00000000..c479c62f --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/framework/web/exception/GlobalExceptionHandler.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptccc.agile.framework.web.exception; + +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.validation.BindException; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.MethodArgumentNotValidException; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; + +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.utils.JsonUtil; + +/** + * 全局异常处理器 + * + * @author admin + */ +@RestControllerAdvice +public class GlobalExceptionHandler { + private static final Logger log = LoggerFactory.getLogger(GlobalExceptionHandler.class); + + /** + * 自定义验证异常 + */ + @ExceptionHandler(BindException.class) + public R handleBindException(BindException e) { + log.error(e.getMessage(), e); + String message = e.getAllErrors().get(0).getDefaultMessage(); + return R.fail(message); + } + + /** + * 自定义验证异常 + */ + @ExceptionHandler(MethodArgumentNotValidException.class) + public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException e) { + log.error("数据校验出现问题{},异常类型:{}", e.getMessage(), e.getClass()); + BindingResult bindingResult = e.getBindingResult(); + + Map errorMap = new HashMap<>(); + bindingResult.getFieldErrors().forEach((fieldError) -> { + errorMap.put(fieldError.getField(), fieldError.getDefaultMessage()); + }); + return R.fail(JsonUtil.toJSONString(errorMap)); + } + + /** + * 系统异常 + */ + @ExceptionHandler(Exception.class) + public R handleException(Exception e, HttpServletRequest request, HttpServletResponse response) { + response.setStatus(301); + + String requestURI = request.getRequestURI(); + log.error("请求地址'{}',发生系统异常.", requestURI, e); + return R.fail(e.getMessage()); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/system/mapper/ISysTimeBaseMapper.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/system/mapper/ISysTimeBaseMapper.java new file mode 100644 index 00000000..888f5c17 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/java/com/jiuyv/sptccc/agile/system/mapper/ISysTimeBaseMapper.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptccc.agile.system.mapper; + +import org.apache.ibatis.annotations.Mapper; + +import com.jiuyv.sptccc.agile.common.core.domain.BaseTime; + +@Mapper +public interface ISysTimeBaseMapper { + + /** + * 获取系统当前时间-yyyyMMddHHmmss + * @return + */ + BaseTime selectSysCurrentTime(); +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/application-dev.yml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/application-dev.yml new file mode 100644 index 00000000..1f7549e0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/application-dev.yml @@ -0,0 +1,53 @@ +# 项目相关配置 +console: + # 版本 + version: 1.0 + + +# 开发环境配置 +server: + port: 18083 #本地 + tomcat: + # tomcat的URI编码 + uri-encoding: UTF-8 + # 连接数满后的排队数,默认为100 + accept-count: 1000 + threads: + # tomcat最大线程数,默认为200 + max: 200 + # Tomcat启动初始化的线程数,默认值10 + min-spare: 10 + +# 日志配置 +logging: + level: + com.jiuyv.sptccc.agile: info + root: info + +spring: + application: + name: datacenter-service + devtools: + restart: + enabled: true + datasource: #数据源配置 + driver-class-name: org.postgresql.Driver + url: jdbc:postgresql://172.16.12.105:5432/keliubao + username: postgres + password: postgres + +#用于缓存下载的文件 +filesftp: + host: 172.16.12.108 + port: 22 + username: flink + password: flink123 + uploadPath: /home/flink/sysfile/cache-datacenter + poolConfig: + maxTotal: 25 + maxIdle: 5 + minIdle: 1 + maxWait: PT3M + minEvictableIdleTime: PT15M + timeBetweenEvictionRuns: PT1M + softMinEvictableIdleTime: PT10M \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/application.yml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/application.yml new file mode 100644 index 00000000..203a0da4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/application.yml @@ -0,0 +1,49 @@ +# Spring配置 +spring: + application: + name: datacenter-service + # 资源信息 + messages: + # 国际化资源文件路径 + basename: i18n/messages + jackson: + date-format: yyyy-MM-dd HH:mm:ss # 常用的时间格式 + default-property-inclusion: non_null # 忽略空对象 + serialization: + fail-on-empty-beans: false # 序列化空对象时不抛出异常 + indent-output: true # 输出格式化为缩进的JSON + write-dates-as-timestamps: false # 日期序列化为时间戳而不是ISO-8601格式 + deserialization: + fail-on-unknown-properties: false # 反序列化时忽略未知的属性 + +# MyBatis配置 +mybatis: + # 搜索指定包别名 + typeAliasesPackage: com.jiuyv.sptccc.agile.** + # 配置mapper的扫描,找到所有的mapper.xml映射文件 + mapperLocations: classpath*:mapper/**/*Mapper.xml + # 加载全局的配置文件 + configLocation: classpath:mybatis/mybatis-config.xml + +feign: + httpclient: + enabled: false + okhttp: + enabled: true + compression: + request: + enabled: true + response: + enabled: true + useGzipDecoder: true + +management: + endpoints: + web: + exposure: + include: '*' + endpoint: + health: + show-details: ALWAYS + shutdown: + enabled: true \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/banner.txt b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/banner.txt new file mode 100644 index 00000000..f301659b --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/banner.txt @@ -0,0 +1,6 @@ +Application Version: ${console.version} +Spring Boot Version: ${spring-boot.version} +//////////////////////////////////////////////////////////////////// +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ // +// 永不宕机 永无BUG // +//////////////////////////////////////////////////////////////////// \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/bootstrap.yml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/bootstrap.yml new file mode 100644 index 00000000..b3afe10b --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/bootstrap.yml @@ -0,0 +1,43 @@ +console: + version: 1.0 + +# Spring配置 +spring: + application: + name : datacenter-service + profiles: + #部署时带上自身名字sms-service-dev + active: dev + cloud: + config: + #本地可以置为关闭false + enabled: false + discovery: + service-id: config-service #使用服务名 + enabled: false + name: ${spring.application.name} + profile: ${spring.profiles.active} + fail-fast: true + security: + user: + name: sptcc + password: 123456 + +# 配置eureka客户端信息 +eureka: + instance: + appname: ${spring.application.name} + lease-expiration-duration-in-seconds: 30 + lease-renewal-interval-in-seconds: 10 + prefer-ip-address: true + instance-id: ${spring.cloud.client.ip-address}:${server.port} + metadata-map: + user.name: ${spring.security.user.name} + user.password: ${spring.security.user.password} + client: + enabled: true + registry-fetch-interval-seconds: 1 + register-with-eureka: true + fetch-registry: true + service-url: + defaultZone: http://172.16.12.109:8761/eureka/ \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/i18n/messages.properties b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/i18n/messages.properties new file mode 100644 index 00000000..9c19d396 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/i18n/messages.properties @@ -0,0 +1,3 @@ +#错误消息 +not.null=* 必须填写 +length.not.valid=长度必须在{min}到{max}个字符之间 \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/logback-spring.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/logback-spring.xml new file mode 100644 index 00000000..71b9f811 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/logback-spring.xml @@ -0,0 +1,134 @@ + + + + + + + + + + + + + System.out + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + UTF-8 + + + + + ${LOG_HOME}/${APP_NAME}.log + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log.zip + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + + ${JSON_LOG_HOME}/${APP_NAME}.json.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + + + + { + "timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}", + "severity": "%level", + "service": "${APP_NAME:-}", + "trace": "%X{X-B3-TraceId:-}", + "span": "%X{X-B3-SpanId:-}", + "parent": "%X{X-B3-ParentSpanId:-}", + "exportable": "%X{X-Span-Export:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + + ${JSON_LOG_HOME}/${APP_NAME}.json.log + + + ${JSON_LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.json.log.zip + + + 100MB + + + + + + + { + "timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}", + "severity": "%level", + "service": "${APP_NAME:-}", + "trace": "%X{X-B3-TraceId:-}", + "span": "%X{X-B3-SpanId:-}", + "parent": "%X{X-B3-ParentSpanId:-}", + "exportable": "%X{X-Span-Export:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + System.err + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/datacenter/TblSjztLinePassengerNonrtimeMapper.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/datacenter/TblSjztLinePassengerNonrtimeMapper.xml new file mode 100644 index 00000000..d88c35b2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/datacenter/TblSjztLinePassengerNonrtimeMapper.xml @@ -0,0 +1,20 @@ + + + + + + a.txn_date, a.settle_center_code, a.time_code, a.in_line_code, a.total_cnt, a.out_txn_cnt, + a.in_station_cnt, a.jtk_in_station_cnt, a.jtk_bus_transfer_cnt, + a.jtk_metro_transfer_cnt, a.ewm_in_station_cnt, a.qr_bus_transfer_cnt, + a.qr_metro_transfer_cnt + + + diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/datacenter/TblSjztLinePassengerRealtimeMapper.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/datacenter/TblSjztLinePassengerRealtimeMapper.xml new file mode 100644 index 00000000..c34f3f37 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/datacenter/TblSjztLinePassengerRealtimeMapper.xml @@ -0,0 +1,23 @@ + + + + + + a.txn_date, a.settle_center_code, a.time_code, a.in_line_code, a.total_cnt, a.out_txn_cnt, + a.in_station_cnt, a.jtk_in_station_cnt, a.jtk_bus_transfer_cnt, + a.jtk_metro_transfer_cnt, a.ewm_in_station_cnt, a.qr_bus_transfer_cnt, + a.qr_metro_transfer_cnt + + + + + + diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/datacenter/TblSjztLinePassengerTotalMapper.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/datacenter/TblSjztLinePassengerTotalMapper.xml new file mode 100644 index 00000000..b4b9bfb5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/datacenter/TblSjztLinePassengerTotalMapper.xml @@ -0,0 +1,23 @@ + + + + + + a.txn_date, a.settle_center_code, a.time_code, a.in_line_code, a.total_cnt, a.out_txn_cnt, + a.in_station_cnt, a.jtk_in_station_cnt, a.jtk_bus_transfer_cnt, + a.jtk_metro_transfer_cnt, a.ewm_in_station_cnt, a.qr_bus_transfer_cnt, + a.qr_metro_transfer_cnt + + + + + + diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/system/SysBaseMapper.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/system/SysBaseMapper.xml new file mode 100644 index 00000000..189700f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mapper/system/SysBaseMapper.xml @@ -0,0 +1,11 @@ + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mybatis/mybatis-config.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mybatis/mybatis-config.xml new file mode 100644 index 00000000..1ca69c62 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/mybatis/mybatis-config.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/spring/applicationContext-public.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/spring/applicationContext-public.xml new file mode 100644 index 00000000..403456c6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/spring/applicationContext-public.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/spring/applicationContext.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/spring/applicationContext.xml new file mode 100644 index 00000000..084fd470 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/main/resources/spring/applicationContext.xml @@ -0,0 +1,12 @@ + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/application-test.yml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/application-test.yml new file mode 100644 index 00000000..4aa71fad --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/application-test.yml @@ -0,0 +1,80 @@ +# 项目相关配置 +console: + # 名称 + name: message-service + # 版本 + version: 1.0 + # 版权年份 + copyrightYear: 2022 + # 实例演示开关 + demoEnabled: true + # 获取ip地址开关 + addressEnabled: false +#路由服务地址 +gateway: + messageGatewayUrl: http://127.0.0.1:18084/message-gateway +#短信服务 +usmapi: + httpUrl: http://sms.api.ums86.com:8899/sms/Api/ + sendUrl: Send.do + getNumUrl: SearchNumber.do + orgcode: + username: + password: #CvRwNtnWi0cMZ0yK6sMiUQ== + testFlag: true #为true时开启测试模式,不会请求短信平台 + +# 开发环境配置 +server: + port: 18083 #本地 + tomcat: + # tomcat的URI编码 + uri-encoding: UTF-8 + # 连接数满后的排队数,默认为100 + accept-count: 1000 + threads: + # tomcat最大线程数,默认为200 + max: 200 + # Tomcat启动初始化的线程数,默认值10 + min-spare: 10 + +# 日志配置 +#logging: +# level: +# com.jiuyv.sptccc.agile: debug +# org.springframework: warn + +spring: + application: + name: message-service + # 资源信息 + messages: + # 国际化资源文件路径 + basename: i18n/messages + # 文件上传 + servlet: + multipart: + # 单个文件大小 + max-file-size: 10MB + # 设置总上传的文件大小 + max-request-size: 20MB + # 服务模块 + devtools: + restart: + # 热部署开关 + enabled: true + datasource: #数据源配置 + url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=FALSE;MODE=PostgreSQL + driver-class-name: org.h2.Driver + username: sa + password: + +management: + endpoints: + web: + exposure: + include: '*' + endpoint: + health: + show-details: ALWAYS + shutdown: + enabled: true \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/bootstrap.yml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/bootstrap.yml new file mode 100644 index 00000000..2102abc8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/bootstrap.yml @@ -0,0 +1,21 @@ +# Spring配置 +spring: + application: + name : message-service + profiles: + active: test + cloud: + config: + discovery: + enabled: false + #本地可以置为关闭false + enabled: false + loadbalancer: + enabled: false + circuitbreaker: + enabled: false + +eureka: + client: + registerWithEureka: false + fetchRegistry: false \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initData/tbl_public_msg_template.sql b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initData/tbl_public_msg_template.sql new file mode 100644 index 00000000..bac97ecf --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initData/tbl_public_msg_template.sql @@ -0,0 +1,17 @@ +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code + , msg_title, msg_text, msg_type, show_type, template_type + , data_status, create_by, create_by_name, create_time, update_by + , update_by_name, update_time) +VALUES (2, 0, '1', '实验室到期提醒', 'docker_expired_phone' + , '实验室({{labCode}})到期提醒', '您的实验室已到期,实验室编号:{{labCode}},欢迎下次使用!!!', '2', '1', 'phone' + , '00', '1', '管理员', '2023-06-19 14:27:44', '1' + , '管理员', '2023-06-19 14:27:44') +--- +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code + , msg_title, msg_text, msg_type, show_type, template_type + , data_status, create_by, create_by_name, create_time, update_by + , update_by_name, update_time) +VALUES (3, 0, '1', 'promethues监控告警', 'promethues' + , 'promethues监控告警', 'promethues监控告警!!!', '2', '1', 'phone' + , '00', '1', '管理员', '2023-06-19 14:27:44', '1' + , '管理员', '2023-06-19 14:27:44') \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initData/tbl_sys_warning_contact.sql b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initData/tbl_sys_warning_contact.sql new file mode 100644 index 00000000..12365d69 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initData/tbl_sys_warning_contact.sql @@ -0,0 +1,21 @@ +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type + , contact, status, create_by, create_time, update_by + , update_time, del_flag) +VALUES (10, 0, '1', '00', '01' + , '16615512123', '00', 'admin', '2023-06-30 10:05:28.334988', 'yts' + , '2023-07-28 14:07:21.399299', '0') +--- +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type + , contact, status, create_by, create_time, update_by + , update_time, del_flag) +VALUES (11, 0, '1', '00', '01' + , '16615512123', '00', 'admin', '2023-06-30 10:05:28.334988', 'yts' + , '2023-07-28 14:07:21.399299', '0') + +--- +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type + , contact, status, create_by, create_time, update_by + , update_time, del_flag) +VALUES (12, 0, '1', 'pmth_sms', '01' + , '16615512123', '00', 'admin', '2023-06-30 10:05:28.334988', 'yts' + , '2023-07-28 14:07:21.399299', '0') \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initDb/publicx/tbl_public_msg_template.sql b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initDb/publicx/tbl_public_msg_template.sql new file mode 100644 index 00000000..883be37d --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initDb/publicx/tbl_public_msg_template.sql @@ -0,0 +1,20 @@ +create table tbl_public_msg_template ( + template_id int not null AUTO_INCREMENT, + version_num int not null default '0', + rec_token VARCHAR(10) not null default '1', + msg_desc VARCHAR(200) null, + template_code VARCHAR(100) not null, + msg_title VARCHAR(200) not null, + msg_text text not null, + msg_type VARCHAR(2) not null, + show_type VARCHAR(2) not null, + template_type VARCHAR(20) not null, + data_status VARCHAR(2) not null, + create_by VARCHAR(64) not null, + create_by_name VARCHAR(100) not null, + create_time timestamp not null, + update_by VARCHAR(64) null, + update_by_name VARCHAR(100) null, + update_time timestamp null, + primary key (template_id) +) \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initDb/publicx/tbl_public_phone_msg_log.sql b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initDb/publicx/tbl_public_phone_msg_log.sql new file mode 100644 index 00000000..22e30acf --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initDb/publicx/tbl_public_phone_msg_log.sql @@ -0,0 +1,23 @@ +create sequence seq_public_phone_msg_log +start 1 +--- +create table tbl_public_phone_msg_log ( + msg_id int not null AUTO_INCREMENT, + phone_number VARCHAR(300) not null, + msg_title VARCHAR(200) null, + msg_text text not null, + msg_type VARCHAR(2) not null, + send_status VARCHAR(1) not null, + user_id VARCHAR(64) null, + nike_name VARCHAR(100) null, + result_error VARCHAR(2500) null, + sys_type VARCHAR(20) null, + data_status VARCHAR(2) not null, + create_by VARCHAR(64) not null, + create_by_name VARCHAR(100) not null, + create_time timestamp not null, + update_by VARCHAR(64) null, + update_by_name VARCHAR(100) null, + update_time timestamp null, + primary key (msg_id) +) \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initDb/sys/tbl_sys_warning_contact.sql b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initDb/sys/tbl_sys_warning_contact.sql new file mode 100644 index 00000000..438ecd9d --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-service/src/test/resources/test/initDb/sys/tbl_sys_warning_contact.sql @@ -0,0 +1,15 @@ +create table tbl_sys_warning_contact ( + id int not null AUTO_INCREMENT, + version_num int not null default '0', + rec_token VARCHAR(10) not null default '1', + warning_type VARCHAR(32) not null, + contact_type VARCHAR(32) not null, + contact VARCHAR(32) not null, + status VARCHAR(32) not null default '00', + del_flag VARCHAR(1) not null default '0', + create_by VARCHAR(32) null, + create_time timestamp null, + update_by VARCHAR(32) null, + update_time timestamp null, + primary key (id) +) \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/pom.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/pom.xml new file mode 100644 index 00000000..0aae4a0f --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/pom.xml @@ -0,0 +1,270 @@ + + 4.0.0 + + com.jiuyv.sptcc.agile + agile-datacenter + 0.0.1-SNAPSHOT + + agile-datacenter-sync + + + true + + + + + com.jiuyv.sptcc.agile + agile-datacenter-api + + + com.jiuyv.sptcc.agile + agile-common + + + + + + + com.jiuyv.sptcc.agile + agile-common + ${agile-common.version} + + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-security + + + + org.springframework.boot + spring-boot-starter-validation + + + + org.springframework.boot + spring-boot-starter-aop + + + + org.springframework.cloud + spring-cloud-starter-openfeign + + + io.github.openfeign + feign-okhttp + + + com.squareup.okhttp3 + okhttp + + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-client + + + org.springframework.cloud + spring-cloud-starter-loadbalancer + + + org.springframework.cloud + spring-cloud-starter-config + + + org.springframework.cloud + spring-cloud-starter-bootstrap + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + + + + org.postgresql + postgresql + + + + io.github.openfeign + feign-okhttp + + + + com.squareup.okhttp3 + okhttp + + + + + net.logstash.logback + logstash-logback-encoder + + + + + org.springframework.boot + spring-boot-starter-actuator + + + + io.micrometer + micrometer-registry-prometheus + + + + org.springframework.cloud + spring-cloud-starter-sleuth + + + + com.jcraft + jsch + + + + commons-collections + commons-collections + + + + commons-io + commons-io + + + + org.apache.commons + commons-lang3 + + + + org.apache.commons + commons-pool2 + + + + com.github.ben-manes.caffeine + caffeine + + + + org.bouncycastle + bcpkix-jdk15on + 1.70 + + + + org.springframework.boot + spring-boot-devtools + true + + + + + org.springframework.boot + spring-boot-starter-test + test + + + com.vaadin.external.google + android-json + + + + + junit + junit + test + + + org.springframework.cloud + spring-cloud-contract-wiremock + test + + + org.mockito + mockito-inline + test + + + com.h2database + h2 + runtime + + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + org.jacoco + jacoco-maven-plugin + + + default-prepare-agent + + prepare-agent + + + + default-report + prepare-package + + report + + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + build-info + + build-info + + + + repackage + + repackage + + + + + + + true + com.jiuyv.sptccc.agile.DatacenterSyncApplication + + + + + + src/main/resources + + **/* + + false + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/DatacenterSyncApplication.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/DatacenterSyncApplication.java new file mode 100644 index 00000000..c3a7cb2b --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/DatacenterSyncApplication.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptccc.agile; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.boot.autoconfigure.groovy.template.GroovyTemplateAutoConfiguration; +import org.springframework.cloud.netflix.eureka.EnableEurekaClient; +import org.springframework.cloud.openfeign.EnableFeignClients; +import org.springframework.scheduling.annotation.EnableScheduling; +import org.springframework.transaction.annotation.EnableTransactionManagement; + +/** + * 启动程序 + * + * @author admin + */ +@EnableFeignClients +@EnableEurekaClient +@EnableScheduling +@EnableTransactionManagement +@SpringBootApplication(exclude = {GroovyTemplateAutoConfiguration.class}) +public class DatacenterSyncApplication { + private static final Logger LOGGER = LoggerFactory.getLogger(DatacenterSyncApplication.class); + + public static void main(String[] args) { + SpringApplication.run(DatacenterSyncApplication.class, args); + LOGGER.info("(♥◠‿◠)ノ゙ 模块启动成功゙ \n"+ + " ___ ___ ___ \n"+ + " |\\ \\ |\\ \\ / /| \n"+ + " \\ \\ \\ \\ \\ \\/ / / \n"+ + " __ \\ \\ \\ \\ \\ / / \n"+ + " |\\ \\\\_\\ \\ \\/ / / \n"+ + " \\ \\________\\ __/ / / \n"+ + " \\|________| |\\___/ / \n"+ + " \\|___|/ \n" + ); + } +} + diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/DatacenterSyncServletInitializer.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/DatacenterSyncServletInitializer.java new file mode 100644 index 00000000..15f96681 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/DatacenterSyncServletInitializer.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptccc.agile; + +import org.springframework.boot.builder.SpringApplicationBuilder; +import org.springframework.boot.web.servlet.support.SpringBootServletInitializer; + +/** + * web容器中进行部署 + * + * @author admin + */ +public class DatacenterSyncServletInitializer extends SpringBootServletInitializer { + @Override + protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { + return application.sources(DatacenterSyncApplication.class); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/batch/SyncDatacenterBatch.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/batch/SyncDatacenterBatch.java new file mode 100644 index 00000000..f9895811 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/batch/SyncDatacenterBatch.java @@ -0,0 +1,146 @@ +package com.jiuyv.sptccc.agile.business.batch; + +import java.util.List; + +import javax.annotation.PostConstruct; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.sql.init.dependency.DependsOnDatabaseInitialization; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +import com.jiuyv.sptccc.agile.business.common.constant.SyncDatacenterConstants; +import com.jiuyv.sptccc.agile.business.common.model.DDsProperties; +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTask; +import com.jiuyv.sptccc.agile.business.entity.vo.TblDatacenterTaskStatusVO; +import com.jiuyv.sptccc.agile.business.service.IDatacenterTaskStatusService; +import com.jiuyv.sptccc.agile.business.service.impl.SyncDatacenterService; +import com.jiuyv.sptccc.agile.common.BaseManagerUtils; +import com.jiuyv.sptccc.agile.common.model.BaseTime; +import com.jiuyv.sptccc.agile.common.utils.sftp.SFTPChannel; +import com.jiuyv.sptccc.agile.common.utils.sftp.model.SFTPConfig; +import com.jiuyv.sptccc.agile.framework.config.ConsoleConfig; +import com.jiuyv.sptccc.agile.framework.config.scheduled.CronTaskRegistrar; + + +/** + * 数据同步 + * @author zhouliang + * @date 2024年8月6日 + */ +@Component +public class SyncDatacenterBatch { + + private static final Logger LOGGER = LoggerFactory.getLogger(SyncDatacenterBatch.class); + + @Autowired + private IDatacenterTaskStatusService datacenterTaskStatusService; + + @Autowired + private SyncDatacenterService syncDatacenterService; + + @Autowired + private CronTaskRegistrar cronTaskRegistrar; + + + /** 防止重置任务还没完成 */ + private static boolean resetFinishFlag = false; + + /** + * 项目重启时把运行中的任务重置(后面重跑) + * 只会跑一次 + */ + @PostConstruct + @DependsOnDatabaseInitialization + public void resetRuningTask() throws Exception{ + LOGGER.info("【数据同步】重置运行中的任务状态"); + datacenterTaskStatusService.doResetDatacenterTaskStatus(); + + //注册任务 + List tasks = datacenterTaskStatusService.getDatacenterTaskNormal(); + if(tasks!=null && !tasks.isEmpty()) { + LOGGER.info("【数据同步】待注册任务数量={}",tasks.size()); + for(TblDatacenterTask x: tasks) { + LOGGER.info("【数据同步】任务注册={},cron={}",x.getTaskNo(),x.getScheduledCron()); + String[] crons = x.getScheduledCron().split(",|,"); + for(int ti=0;ti { + syncDatacenterService.doStartTaskStatusForNormal(x.getTaskNo()); + }; + cronTaskRegistrar.addCronTask(x.getTaskNo()+"-"+ti, task, crons[ti].trim()); + } + } + }else { + LOGGER.info("【数据同步】数据库无待注册任务"); + } + + resetFinishFlag = true; + } + + + @Scheduled(cron = "0 0 0/1 * * ?") + public void resetRuningTask2() throws Exception{ + //检查是否有运行超过一定时间的任务强制结束(正常任务应该不会很长 + + } + + /** + * 扫描失败的任务 + */ + @Scheduled(cron = "0/3 * * * * ?") + public void startFailTask() throws Exception{ + if(!resetFinishFlag) { + return;//等待重置完成 + } + LOGGER.info("【数据同步】检测错误任务、临时任务"); + BaseTime timeVO = BaseManagerUtils.getSystemTime(); + //状态处理时为同步处理,避免错乱 + + //如果数量为0,表示没有失败任务或任务已重启了 + List errordata = datacenterTaskStatusService.doRestartTaskStatusForError(timeVO); + if(errordata!=null && !errordata.isEmpty()) { + //失败的任务按顺序执行,内部为同步 + LOGGER.info("【数据同步】重启失败和补充任务>>数量={}",errordata.size()); + syncDatacenterService.doRestartTaskStatusForError(errordata); + } + } + + /** + * 清理数据源的超期文件 + */ + @Scheduled(cron = "0 0 2 * * ?") + public void clearFileTask() throws Exception{ + LOGGER.info("【数据同步】清理数据源的超期文件"); + + String clearDs = ConsoleConfig.getClearDs(); + if(StringUtils.isBlank(ConsoleConfig.getClearDs())) { + return; + } + String[] dsarr = clearDs.split(","); + for(String dsx:dsarr) { + if(StringUtils.isBlank(dsx)) { + continue; + } + //连接文件服务器清理批处理 + SFTPChannel channelx = new SFTPChannel(); + try { + DDsProperties ds = syncDatacenterService.getDataSourceConf(dsx); + SFTPConfig sftpcfg = syncDatacenterService.getSftpConf(ds); + String cmd = String.format(SyncDatacenterConstants.SHELL_RM_OVERDATE,ds.getReadWritePath(), ConsoleConfig.getClearDay()); + channelx.setConnect(sftpcfg, 60000); + channelx.commitCurrShellCmd(cmd); + } catch (Exception e) { + LOGGER.info("【数据同步】清理临时文件异常",e); + }finally { + channelx.closeChannel(); + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/constant/SyncDatacenterConstants.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/constant/SyncDatacenterConstants.java new file mode 100644 index 00000000..99e949e9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/constant/SyncDatacenterConstants.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptccc.agile.business.common.constant; + +/** + * 数据同步相关常量 + */ +public class SyncDatacenterConstants +{ + private SyncDatacenterConstants() { + throw new IllegalStateException("Utility class"); + } + + /** 数据源名称-久事云,要特殊处理 */ + public static final String DB_NAME_JSY_HIVE_DS="jsyHiveDs"; + + /** 特殊标志,写文件需要标题 */ + public static final String FLAG_NEED_TITLE="title"; + + /** 临时文件后缀 */ + public static final String TEMP_FILE_EXTENSION ="tmp"; + + /** 命令:移除超期的文件 */ + public static final String SHELL_RM_OVERDATE ="find %s -type f -mtime +%s -exec rm {} \\;"; + + //类型转换 + public static final String CONVERT_TYPE_TO_DATE="Date"; + public static final String CONVERT_TYPE_TO_INSTANT="Instant"; + public static final String CONVERT_TYPE_TO_INTEGER="Integer"; + public static final String CONVERT_TYPE_TO_LONG="Long"; + public static final String CONVERT_TYPE_TO_BIGDECIMAL="BigDecimal"; + public static final String CONVERT_TYPE_TO_STRING="String"; + + + /** 日期转换用 */ + public static final String FORMAT_DATETIME ="yyyy-MM-dd HH:mm:ss"; + public static final String FORMAT_DATEDAY ="yyyy-MM-dd"; + public static final String FORMAT_DATETIME_SIMPLE ="yyyyMMddHHmmss"; + public static final String FORMAT_DATEDAY_SIMPLE ="yyyyMMdd"; +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/enums/TblDatacenterTaskStatusEnum.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/enums/TblDatacenterTaskStatusEnum.java new file mode 100644 index 00000000..30fe7312 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/enums/TblDatacenterTaskStatusEnum.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptccc.agile.business.common.enums; + +/** + * + * 同步任务状态表枚举 + * @author zhouliang + * + */ +public class TblDatacenterTaskStatusEnum { + + /** 任务类型*/ + public enum TASK_TYPE { + TT1("1", "天"), + TT2("2", "时段"), + TT3("3", "小时"), + TT4("4", "分钟"), + TT99("99", "其他"),//默认也按天 + + ; + private String code; + private String msg; + + TASK_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public String getCode() { + return code; + } + + public String getMsg() { + return msg; + } + } + + /** 业务状态*/ + public enum BUS_STATUS { + RUNING("runing", "任务运行中"), + //三个结束都等价任务未运行 + END("end", "强制结束"),//如果任务运行中项目重启,那么会更新为此状态. + FINISH("finish", "正常结束"), + UNFINISH("unfinish", "异常结束"), + + ; + private String code; + private String msg; + + BUS_STATUS(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public String getCode() { + return code; + } + + public String getMsg() { + return msg; + } + } + + /** 数据状态*/ + public enum DATA_STATUS { + NORMAL("00", "正常"), + DELETED("99", "删除"), + + ; + private String code; + private String msg; + + DATA_STATUS(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public String getCode() { + return code; + } + + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/model/DDsProperties.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/model/DDsProperties.java new file mode 100644 index 00000000..3c63b179 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/model/DDsProperties.java @@ -0,0 +1,177 @@ +package com.jiuyv.sptccc.agile.business.common.model; + +import com.jiuyv.sptccc.agile.common.constant.Constants; +import com.jiuyv.sptccc.agile.common.utils.Sm4Util; + +/** + * 数据库基础配置类 + * @author zhouliang + * + */ +public class DDsProperties { + + /** + * url地址 + */ + private String url; + /** + * 账户 + */ + private String username; + /** + * 密码 + */ + private String password; + /** + * 驱动类名 + */ + private String driverClassName; + /** + * 驱动类名 + */ + private String confPath; + /** + * 一次写入数量,文件/数据库都是一样 + */ + private Integer singleWriteNumber; + + /** + * 本地存放路径 + */ + private String readWritePath; + + /** + * 字段分隔符号 + */ + private String fieldSeparator; + + + private String fileType; + + private String sftpHost; + + private Integer sftpPort; + + private String sftpUsername; + + private String sftpPassword; + + + /** + * @return the url + */ + public String getUrl() { + return url; + } + /** + * @param url the url to set + */ + public void setUrl(String url) { + this.url = url; + } + /** + * @return the username + */ + public String getUsername() { + return username; + } + /** + * @param username the username to set + */ + public void setUsername(String username) { + this.username = username; + } + /** + * @return the password + */ + public String getPassword() { + try { + return Sm4Util.decryptEcb(Constants.SM4_SECERT_KEY, password); + }catch (Exception e) { + } + return password; + } + /** + * @param password the password to set + */ + public void setPassword(String password) { + this.password = password; + } + /** + * @return the driverClassName + */ + public String getDriverClassName() { + return driverClassName; + } + /** + * @param driverClassName the driverClassName to set + */ + public void setDriverClassName(String driverClassName) { + this.driverClassName = driverClassName; + } + public String getConfPath() { + return confPath; + } + public void setConfPath(String confPath) { + this.confPath = confPath; + } + public Integer getSingleWriteNumber() { + if(singleWriteNumber==null) { + return 0; + } + return singleWriteNumber; + } + public void setSingleWriteNumber(Integer singleWriteNumber) { + this.singleWriteNumber = singleWriteNumber; + } + + public String getFieldSeparator() { + return fieldSeparator; + } + public void setFieldSeparator(String fieldSeparator) { + this.fieldSeparator = fieldSeparator; + } + public String getReadWritePath() { + return readWritePath; + } + public void setReadWritePath(String readWritePath) { + this.readWritePath = readWritePath; + } + public String getFileType() { + return fileType; + } + public void setFileType(String fileType) { + this.fileType = fileType; + } + public String getSftpHost() { + return sftpHost; + } + public void setSftpHost(String sftpHost) { + this.sftpHost = sftpHost; + } + public Integer getSftpPort() { + if(sftpPort==null) { + return 22; + } + return sftpPort; + } + public void setSftpPort(Integer sftpPort) { + this.sftpPort = sftpPort; + } + public String getSftpUsername() { + return sftpUsername; + } + public void setSftpUsername(String sftpUsername) { + this.sftpUsername = sftpUsername; + } + public String getSftpPassword() { + try { + return Sm4Util.decryptEcb(Constants.SM4_SECERT_KEY, sftpPassword); + }catch (Exception e) { + } + return sftpPassword; + } + public void setSftpPassword(String sftpPassword) { + this.sftpPassword = sftpPassword; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/model/SqlHandlerResultVO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/model/SqlHandlerResultVO.java new file mode 100644 index 00000000..e3619b80 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/model/SqlHandlerResultVO.java @@ -0,0 +1,130 @@ +package com.jiuyv.sptccc.agile.business.common.model; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +import org.apache.commons.lang3.StringUtils; + +/** + * SQL拼接结果 + * @author zhouliang + * + */ +public class SqlHandlerResultVO implements Serializable +{ + + private static final long serialVersionUID = 1L; + /** + * 查询sql语句(远程) + */ + private String selectSql; + /** + * 插入sql语句(本地) + */ + private String insertSql; + + /** + * 前置sql语句(本地) + */ + private String preSql; + + /** + * 查询sql语句(本地) + */ + private String localSelectSql; + + /** + * 映射关系(包含类型转换) 读取字段-存储字段/类型 + */ + private Map fieldMapping; + + /** + * 是否自定义字段还是只只用于转换 + * 是true则只筛选自定义的字段,反之全部字段(只转换类型) + */ + private boolean customFieldFlag=false; + + /** + * @return the selectSql + */ + public String getSelectSql() { + return selectSql; + } + + /** + * @param selectSql the selectSql to set + */ + public void setSelectSql(String selectSql) { + this.selectSql = selectSql; + } + + /** + * @return the insertSql + */ + public String getInsertSql() { + return insertSql; + } + + /** + * @param insertSql the insertSql to set + */ + public void setInsertSql(String insertSql) { + this.insertSql = insertSql; + } + + /** + * @return the preSql + */ + public String getPreSql() { + return preSql; + } + + /** + * @param preSql the preSql to set + */ + public void setPreSql(String preSql) { + this.preSql = preSql; + } + + /** + * @return the fieldMapping + */ + public Map getFieldMapping() { + return fieldMapping; + } + + /** + * @param fieldMapping the fieldMapping to set + */ + public void setFieldMapping(Map fieldMapping) { + this.fieldMapping = fieldMapping; + } + + //获取转换过后的标题 + public List getFieldTitle() { + List list=new ArrayList<>(); + fieldMapping.forEach((k,v)->{ + String code = v.getColumnCode(); + list.add(StringUtils.isBlank(code)?k:code); + }); + return list; + } + + public boolean getCustomFieldFlag() { + return customFieldFlag; + } + + public void setCustomFieldFlag(boolean customFieldFlag) { + this.customFieldFlag = customFieldFlag; + } + + public String getLocalSelectSql() { + return localSelectSql; + } + + public void setLocalSelectSql(String localSelectSql) { + this.localSelectSql = localSelectSql; + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/model/SqlHandlerTypeVO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/model/SqlHandlerTypeVO.java new file mode 100644 index 00000000..2d222937 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/model/SqlHandlerTypeVO.java @@ -0,0 +1,58 @@ +package com.jiuyv.sptccc.agile.business.common.model; + +import java.io.Serializable; + +/** + * SQL字段映射和转换关系 + * @author zhouliang + * + */ +public class SqlHandlerTypeVO implements Serializable +{ + + private static final long serialVersionUID = 1L; + /** + * 存储字段编码 + */ + private String columnCode; + /** + * 转换类型(为空时默认按相同处理) + */ + private String convertType; + /** + * 转换格式 + * 针对时间格式或长度有问题 + */ + private String convertFormat; + + /** + * @return the columnCode + */ + public String getColumnCode() { + return columnCode; + } + /** + * @param columnCode the columnCode to set + */ + public void setColumnCode(String columnCode) { + this.columnCode = columnCode; + } + /** + * @return the convertType + */ + public String getConvertType() { + return convertType; + } + /** + * @param convertType the convertType to set + */ + public void setConvertType(String convertType) { + this.convertType = convertType; + } + public String getConvertFormat() { + return convertFormat; + } + public void setConvertFormat(String convertFormat) { + this.convertFormat = convertFormat; + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/utils/SqlHandlerUtilx.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/utils/SqlHandlerUtilx.java new file mode 100644 index 00000000..79379524 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/utils/SqlHandlerUtilx.java @@ -0,0 +1,399 @@ +package com.jiuyv.sptccc.agile.business.common.utils; + +import java.math.BigDecimal; +import java.sql.ResultSet; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Collection; +import java.util.Date; +import java.util.HashSet; +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.Map.Entry; +import java.util.regex.Pattern; +import java.util.Set; + +import org.apache.commons.lang3.StringUtils; +import org.apache.ibatis.type.BigDecimalTypeHandler; +import org.apache.ibatis.type.IntegerTypeHandler; +import org.apache.ibatis.type.LongTypeHandler; +import org.apache.ibatis.type.SqlDateTypeHandler; +import org.apache.ibatis.type.SqlTimestampTypeHandler; +import org.apache.ibatis.type.StringTypeHandler; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.fasterxml.jackson.databind.JsonNode; +import com.fasterxml.jackson.databind.node.ObjectNode; +import com.jiuyv.sptccc.agile.business.common.constant.SyncDatacenterConstants; +import com.jiuyv.sptccc.agile.business.common.model.SqlHandlerResultVO; +import com.jiuyv.sptccc.agile.business.common.model.SqlHandlerTypeVO; +import com.jiuyv.sptccc.agile.common.utils.JsonUtil; + +/** + * 动态拼接处理SQL + * @author zhouliang + * + */ +public class SqlHandlerUtilx { + + private static final Logger LOGGER = LoggerFactory.getLogger(SqlHandlerUtilx.class); + + + public static final Pattern SQL_DELETE_FROM = Pattern.compile("^delete from", Pattern.CASE_INSENSITIVE); + + private SqlHandlerUtilx() { + throw new IllegalStateException("Utility class"); + } + //把SQL关系配置转换为实际的sql语句 + public static SqlHandlerResultVO convertJsonToSql(String fromQuerySql, String toTableName, String cfgJson) throws Exception { + if(StringUtils.isBlank(cfgJson)) { + cfgJson = "*"; + } + SqlHandlerResultVO vo=new SqlHandlerResultVO(); + + fromQuerySql=fromQuerySql.replace("\n", " "); + //有" from "则认为是完整的sql + boolean customSelect=fromQuerySql.toLowerCase().contains(" from "); + + Map fieldMapping=new LinkedHashMap<>(); + + //查询sql + StringBuilder sqlSelectBuilder = new StringBuilder(); + sqlSelectBuilder.append("SELECT "); + + cfgJson=cfgJson.trim(); + //*表示所有的字段和类型完全一致 + boolean allIgnoreFlag ="*".equals(cfgJson); + + if(!allIgnoreFlag) { + if(cfgJson.startsWith("{")) {//这个是自定义字段 + vo.setCustomFieldFlag(true); + + Set cols = new HashSet<>(); + ObjectNode obj = JsonUtil.parseObject(cfgJson); + Iterator> fields = obj.fields(); + while (fields.hasNext()) { + Entry entry = fields.next(); + String key = entry.getKey().trim(); + String value = entry.getValue().asText(); + if(!customSelect) { + sqlSelectBuilder.append(key+","); + } + String[] vals=value.trim().split("\\|"); + SqlHandlerTypeVO convertVO=new SqlHandlerTypeVO(); + convertVO.setColumnCode(StringUtils.isBlank(vals[0])?key:vals[0]); + if(vals.length>1) { + setConvertRule(convertVO, vals[1]); + } + if(vals.length>2) { + setConvertRule(convertVO, vals[2]); + } + fieldMapping.put(key.toLowerCase(), convertVO); + + cols.add(vals[0]); + } + vo.setInsertSql(convertInsertSql(cols, toTableName, 1)); + }else {//这个是只转换字段类型 + String[] arrs = cfgJson.split(";|;"); + for(String arrx:arrs) { + String[] kv=arrx.trim().split("="); + String key = kv[0].trim(); + String val = kv[1].trim(); + String[] vals=val.trim().split("\\|"); + SqlHandlerTypeVO convertVO=new SqlHandlerTypeVO(); + convertVO.setColumnCode(StringUtils.isBlank(vals[0])?key:vals[0]); + if(vals.length>1) { + setConvertRule(convertVO, vals[1]); + } + if(vals.length>2) { + setConvertRule(convertVO, vals[2]); + } + fieldMapping.put(key.toLowerCase(), convertVO); + } + } + } + + if(!customSelect) { + if(!allIgnoreFlag) { + sqlSelectBuilder.deleteCharAt(sqlSelectBuilder.length() - 1);//去除多余的逗号 + sqlSelectBuilder.append(" FROM " + fromQuerySql); + vo.setSelectSql(sqlSelectBuilder.toString()); + }else { + vo.setSelectSql("SELECT * FROM " + fromQuerySql); + } + }else { + vo.setSelectSql(fromQuerySql); + } + + vo.setFieldMapping(fieldMapping); + return vo; + } + + //把SQL关系配置转换为实际的sql语句(远程来源是文件) + public static SqlHandlerResultVO convertJsonToSql(Collection cols,String toTableName, String cfgJson) throws Exception { + if(StringUtils.isBlank(cfgJson)) { + cfgJson = "*"; + } + SqlHandlerResultVO vo=new SqlHandlerResultVO(); + Map fieldMapping=new LinkedHashMap<>(); + + cfgJson=cfgJson.trim(); + //*表示所有的字段和类型完全一致 + boolean allIgnoreFlag ="*".equals(cfgJson); + + if(!allIgnoreFlag) { + if(cfgJson.startsWith("{")) {//这个是自定义字段 + vo.setCustomFieldFlag(true); + + ObjectNode obj = JsonUtil.parseObject(cfgJson); + Iterator> fields = obj.fields(); + while (fields.hasNext()) { + Entry entry = fields.next(); + String key = entry.getKey().trim(); + String value = entry.getValue().asText(); + String[] vals=value.trim().split("\\|"); + SqlHandlerTypeVO convertVO=new SqlHandlerTypeVO(); + convertVO.setColumnCode(StringUtils.isBlank(vals[0])?key:vals[0]); + if(vals.length>1) { + setConvertRule(convertVO, vals[1]); + } + if(vals.length>2) { + setConvertRule(convertVO, vals[2]); + } + fieldMapping.put(key.toLowerCase(), convertVO); + } + //转换字段 + Set cols2 = new HashSet<>(); + for(String col :cols){ + SqlHandlerTypeVO newcolvo = fieldMapping.get(col.toLowerCase()); + if(newcolvo!=null) { + cols2.add(newcolvo.getColumnCode()); + }else { + cols2.add(col); + } + } + cols = cols2; + }else {//这个是只转换字段类型 + String[] arrs = cfgJson.split(";|;"); + for(String arrx:arrs) { + String[] kv=arrx.trim().split("="); + String key = kv[0].trim(); + String val = kv[1].trim(); + String[] vals=val.trim().split("\\|"); + SqlHandlerTypeVO convertVO=new SqlHandlerTypeVO(); + convertVO.setColumnCode(StringUtils.isBlank(vals[0])?key:vals[0]); + if(vals.length>1) { + setConvertRule(convertVO, vals[1]); + } + if(vals.length>2) { + setConvertRule(convertVO, vals[2]); + } + fieldMapping.put(key.toLowerCase(), convertVO); + } + } + } + + vo.setLocalSelectSql("SELECT * FROM "+toTableName+" WHERE 1>2");//用于获取字段信息 + + String sqlInsert = convertInsertSql(cols, toTableName, 1); + + vo.setInsertSql(sqlInsert); + vo.setFieldMapping(fieldMapping); + return vo; + } + private static void setConvertRule( SqlHandlerTypeVO convertVO, String v) { + if(StringUtils.isBlank(v)) { + return; + } + //fdate('yyyy年MM月dd日','yyyy-MM-dd') + if(v.startsWith("fdate") || v.startsWith("ftime") || v.startsWith("fnum") || v.startsWith("fsub")){ + //这里到时候实现简单的格式转换 + convertVO.setConvertFormat(v); + }else { + convertVO.setConvertType(v); + } + } + + /** + * 字段转换为insert语句 + * @param list + * @param toTableName + * @return + */ + public static String convertInsertSql(Collection cols, String toTableName,Integer number) { + if(number==null || number.intValue()==0) { + number=1; + } + //插入sql + StringBuilder sqlInsertBuilder = new StringBuilder(); + sqlInsertBuilder.append("INSERT INTO ").append(toTableName).append(" ("); + List values = new ArrayList<>(); + for (String col:cols) { + sqlInsertBuilder.append(col+","); + values.add("?"); + } + sqlInsertBuilder.deleteCharAt(sqlInsertBuilder.length() - 1);//去除多余的逗号 + sqlInsertBuilder.append(") VALUES "); +// System.out.print(sqlInsertBuilder.toString()); + while(number>0) { + sqlInsertBuilder.append("("+StringUtils.join(values,",")).append(")"); + number--; + if(number>0) { + sqlInsertBuilder.append(","); + } + } + return sqlInsertBuilder.toString(); + } + + /** + *替换自定义参数{XXXX} + * @param sql + * @param params + * @return + * @throws Exception + */ + public static String replaceSqlCustomParams(String sql,Map params) throws Exception { + if(StringUtils.isBlank(sql)) { + return null; + } + for(Entry ex:params.entrySet()) { + sql=sql.replace("{"+ex.getKey()+"}", ex.getValue()); + } + return sql; + } + + /** + * 转换删除语句为count语句 + */ + public static String replaceSqlToCountSql(String sql) throws Exception { + if(StringUtils.isBlank(sql)) { + return null; + } + String sql2 = SQL_DELETE_FROM.matcher(sql.trim()).replaceFirst("select count(1) from"); + if(sql2.equals(sql)) { + return null; + } + return sql2; + } + + /** + * 转换数据库字段类型,一般的也不用转(只是为了特殊类型,比如Date转string可能需要) + * @param resultSet + * @param colname 字段名索引 + * @param type 转换类型 + * @param stringFlag true全部转为String + * @return + * @throws Exception + */ + public static Object convertType(ResultSet resultSet,int colname, String type,boolean stringFlag) throws Exception { + if(colname<=0) { + return null; + } + Object value=resultSet.getObject(colname); + if(value!=null) { + try { +// System.out.println("colname>>"+colname+"="+value.getClass()); + //不同数据库之间才涉及类型需要统一,基本只管日期 + if(!stringFlag && SyncDatacenterConstants.CONVERT_TYPE_TO_DATE.equalsIgnoreCase(type)) { + value = new SqlDateTypeHandler().getResult(resultSet,colname); + } + else if(!stringFlag && SyncDatacenterConstants.CONVERT_TYPE_TO_INSTANT.equalsIgnoreCase(type)) { + value = new SqlTimestampTypeHandler().getResult(resultSet,colname); + } + else if(!stringFlag && SyncDatacenterConstants.CONVERT_TYPE_TO_INTEGER.equalsIgnoreCase(type)) { + value = new IntegerTypeHandler().getResult(resultSet,colname); + } + else if(!stringFlag && SyncDatacenterConstants.CONVERT_TYPE_TO_BIGDECIMAL.equalsIgnoreCase(type)) { + value = new BigDecimalTypeHandler().getResult(resultSet,colname); + } + else if(!stringFlag && SyncDatacenterConstants.CONVERT_TYPE_TO_LONG.equalsIgnoreCase(type)) { + value = new LongTypeHandler().getResult(resultSet,colname); + } + else if(stringFlag || SyncDatacenterConstants.CONVERT_TYPE_TO_STRING.equalsIgnoreCase(type)){ + value = new StringTypeHandler().getResult(resultSet,colname); + } + //System.out.println(type);//测试看 + }catch (Exception e) { + if(LOGGER.isDebugEnabled()) { + LOGGER.debug("convertType error>>colname={},{}",colname,e.getMessage()); + } + //如果报错,表示类型不能相互转换或数据有问题 + value = value.toString(); + } + } + return value; + } + + public static Object convertType(String val,String colname,String type,boolean stringFlag) throws Exception { + Object value=val; + if(StringUtils.isNotBlank(val) && type != null) { + try { + type = type.toLowerCase(); + //不同数据库之间才涉及类型需要统一,基本只管日期 + if(!stringFlag && type.contains("date")) { + value = convertStr2SqlDate(val); + } + else if(!stringFlag && type.contains("timestamp")) { + value = convertStr2SqlTimestamp(val); + } + else if(!stringFlag && (type.contains("numeric") || type.contains("number") || type.contains("decimal"))) { + value = new BigDecimal(val); + } + else if(!stringFlag && (type.contains("bigserial") || type.contains("int8") || type.contains("bigint"))) { + value = Long.parseLong(val); + } + else if(!stringFlag && type.contains("int")) { + value = Integer.parseInt(val); + } + //System.out.println(type);//测试看 + }catch (Exception e) { + if(LOGGER.isDebugEnabled()) { + LOGGER.debug("convertType error>>colname={},{}",colname,e.getMessage()); + } + //如果报错,表示类型不能相互转换或数据有问题 + value = value.toString(); + } + } + return value; + } + + /** 转换日期字符串为数据库日期 */ + public static java.sql.Date convertStr2SqlDate(String datestr) { + try { + String format=null; + if(datestr.length()==SyncDatacenterConstants.FORMAT_DATETIME_SIMPLE.length()){ + format = SyncDatacenterConstants.FORMAT_DATETIME_SIMPLE; + }else if(datestr.length()==SyncDatacenterConstants.FORMAT_DATEDAY_SIMPLE.length()) { + format = SyncDatacenterConstants.FORMAT_DATEDAY_SIMPLE; + } + if(format != null) { + SimpleDateFormat dateFormat = new SimpleDateFormat(format); + Date dt = dateFormat.parse(datestr); + return new java.sql.Date(dt.getTime()); + } + } catch (Exception e) { + } + return java.sql.Date.valueOf(datestr); + } + /** 转换日期字符串为数据库日期 */ + public static java.sql.Timestamp convertStr2SqlTimestamp(String datestr) { + try { + String format=null; + if(datestr.length()==SyncDatacenterConstants.FORMAT_DATETIME_SIMPLE.length()){ + format = SyncDatacenterConstants.FORMAT_DATETIME_SIMPLE; + }else if(datestr.length()==SyncDatacenterConstants.FORMAT_DATEDAY_SIMPLE.length()) { + format = SyncDatacenterConstants.FORMAT_DATEDAY_SIMPLE; + } + if(format != null) { + SimpleDateFormat dateFormat = new SimpleDateFormat(format); + Date dt = dateFormat.parse(datestr); + return new java.sql.Timestamp(dt.getTime()); + } + } catch (Exception e) { + } + return java.sql.Timestamp.valueOf(datestr); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/utils/SyncDatacenterUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/utils/SyncDatacenterUtils.java new file mode 100644 index 00000000..dbc757b2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/utils/SyncDatacenterUtils.java @@ -0,0 +1,311 @@ +package com.jiuyv.sptccc.agile.business.common.utils; + +import java.math.BigDecimal; +import java.math.RoundingMode; +import java.text.DecimalFormat; +import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; +import java.time.temporal.ChronoUnit; +import java.util.ArrayList; +import java.util.Date; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import org.apache.commons.lang3.StringUtils; + +import com.jiuyv.sptccc.agile.business.common.enums.TblDatacenterTaskStatusEnum; +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTask; +import com.jiuyv.sptccc.agile.business.entity.vo.TblDatacenterTaskStatusVO; +import com.jiuyv.sptccc.agile.common.BaseManagerUtils; + + +/** + * 对于具体的业务功能需要的一些方法 + * @author zhouliang + * @date 2024年8月9日 + */ +public class SyncDatacenterUtils { + + /** + * 初始化任务对象 + * @param time 实时的时间 + * @param task 任务配置 + * @param datemap 非实时时间对象(条件) + */ + public static TblDatacenterTaskStatusVO createTaskStatusVO(Date time,TblDatacenterTask task,Map datemap) throws Exception { + TblDatacenterTaskStatusVO taskStatus = new TblDatacenterTaskStatusVO(); + String taskConditions = task.getDefaultQueryJson(); + + //当前的条件时间 + if(TblDatacenterTaskStatusEnum.TASK_TYPE.TT1.getCode().equals(task.getTaskType())) { + taskConditions = datemap.get("dateDay2"); + }else if(TblDatacenterTaskStatusEnum.TASK_TYPE.TT2.getCode().equals(task.getTaskType())) { + taskConditions = datemap.get("dateDay2")+"-"+datemap.get("hourSpan"); + }else { + taskConditions = datemap.get("dateTime2"); + } + //为了看起来直观 + String loadFile = SqlHandlerUtilx.replaceSqlCustomParams(StringUtils.isBlank(task.getRemoteFileName())?task.getRemoteTableSql():task.getRemoteFileName(), datemap); + if(StringUtils.isBlank(task.getRemoteFileName())) { + task.setRemoteTableSql(loadFile); + }else { + task.setRemoteFileName(loadFile); + } + taskStatus.setTaskNo(task.getTaskNo()); + taskStatus.setTaskConditions(taskConditions); + taskStatus.setTaskType(task.getTaskType()); + taskStatus.setAttemptsNum(task.getAttemptsNum()); + taskStatus.setRunIntervalTime(task.getRunIntervalTime()); + taskStatus.setLoadFile(loadFile); + taskStatus.setLoadTime(datemap.get("dateTime")); + taskStatus.setReadCount("0"); + taskStatus.setVersionNum(0); + taskStatus.setRecToken(BaseManagerUtils.getNewRecToken()); + taskStatus.setCreateTime(time); + taskStatus.setUpdateTime(time); + taskStatus.setCurrStartDate(time); + taskStatus.setDatacenterTask(task);//配置 + return taskStatus; + } + + /** + * 计算耗时 + * @param start + * @param end + * @return + */ + public static String getTotalTime(Date start,Date end) { + // 获取日期间的时间差 + long diff = end.getTime() - start.getTime(); + // 计算小时、分钟和秒 + BigDecimal totaltime=new BigDecimal(diff).divide(new BigDecimal("1000")); + String totaltimeUnit="秒"; + if(totaltime.longValue()>=60) { + totaltime=totaltime.divide(new BigDecimal("60"),3,RoundingMode.DOWN); + totaltimeUnit="分"; + } + if(totaltime.longValue()>=60) { + totaltime=totaltime.divide(new BigDecimal("60"),3,RoundingMode.DOWN); + totaltimeUnit="小时"; + } + return totaltime.setScale(2,RoundingMode.DOWN).toString()+totaltimeUnit; + } + + /** + * 比较时间是否超过间隔 + * @param start + * @param end + * @param intervalTimeStr 间隔时间 1s(秒)、1m(分)、1h(小时)、1d(天) + * @return + */ + public static boolean checkTimeExceed(Date start,Date end,String intervalTimeStr) { + if(StringUtils.isBlank(intervalTimeStr)) { + return true;//为空就认为无间隔 + } + // 获取日期间的时间差 + long diff = end.getTime() - start.getTime(); + + Pattern p = Pattern.compile("(\\d+) *([A-Z]+)*", Pattern.CASE_INSENSITIVE); + Matcher m = p.matcher(intervalTimeStr); + BigDecimal tm = new BigDecimal(0); + String unit = "s"; + if(m.find()) { + tm = new BigDecimal(m.group(1)); + if(m.groupCount() > 1) { + unit = m.group(2); + } + } + + if("d".equals(unit)) {//天 + tm = tm.multiply(new BigDecimal(24 * 60 * 60)); + }else if("h".equals(unit)) {//小时 + tm = tm.multiply(new BigDecimal(60 * 60)); + }else if("m".equals(unit)) {//分 + tm = tm.multiply(new BigDecimal(60)); + }else {//秒 + //都按秒处理 + } + + BigDecimal totaltime=new BigDecimal(diff).divide(new BigDecimal("1000")).subtract(tm); + return totaltime.compareTo(new BigDecimal(0))>0; + } + + /** + * 转换动态日期和日期表达式 + * @param date + * @param param + */ + public static Map convertQueryDateParam(Date date,String dateExpression) { + //dateYear=2020,dateMonth=2020-01,dateDay=2020-01-02,dateHour=2020-01-02 13,dateMinute=2020-01-02 13:20,dateTime=2020-01-02 13:20:00 + //dateYear2=2020,dateMonth2=202001,dateDay2=20200102,dateHour2=2020010213,dateMinute=202001021320,dateTime2=20200102132000 + //year=2020, month=01, day=02, hour=13, minute=20, second=00, hourSpan=0(前半小时0,后半小时1) + + Map param = new LinkedHashMap<>(); + + LocalDateTime currentDate = LocalDateTime.ofInstant(date.toInstant(), ZoneId.of("+08:00")); + if(StringUtils.isNotBlank(dateExpression)) { + String operation = "s"; + int value = 0; + try{ + Pattern p = Pattern.compile("(\\d+)([A-Z]*)",Pattern.CASE_INSENSITIVE); + Matcher m = p.matcher(dateExpression); + if(m.find()) { + value = Integer.parseInt(m.group(1)); + if(m.groupCount() == 2) { + operation = m.group(2); + } + param.put("diffVal", dateExpression);//存一下 + } + }catch(Exception e) { + } + switch (operation) { + case "y": + currentDate = currentDate.minus(value, ChronoUnit.YEARS); + break; + case "M": + currentDate = currentDate.minus(value, ChronoUnit.MONTHS); + break; + case "d": + currentDate = currentDate.minus(value, ChronoUnit.DAYS); + break; + case "h": + currentDate = currentDate.minus(value, ChronoUnit.HOURS); + break; + case "m": + currentDate = currentDate.minus(value, ChronoUnit.MINUTES); + break; + case "s": + currentDate = currentDate.minus(value, ChronoUnit.SECONDS); + break; + default: + break; + } + } + + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + dateExpression = currentDate.format(formatter); + + String datestr = dateExpression.replaceAll("[: -]+", ""); + + //20200111123050 + String year = datestr.substring(0, 4); + String month = datestr.substring(4, 6); + String day = datestr.substring(6, 8); + String hour = datestr.substring(8, 10); + String minute = datestr.substring(10, 12); + String second = datestr.substring(12, 14); + //hourSpan=前半小时为0,后半小时为1 + String span = Integer.parseInt(minute)<30?"0":"1"; + + param.put("dateYear", year); + param.put("dateMonth", dateExpression.substring(0, 7)); + param.put("dateDay", dateExpression.substring(0, 10)); + param.put("dateHour", dateExpression.substring(0, 13)); + param.put("dateMinute", dateExpression.substring(0, 16)); + param.put("dateTime", dateExpression); + param.put("dateYear2", year); + param.put("dateMonth2", datestr.substring(0, 6)); + param.put("dateDay2", datestr.substring(0, 8)); + param.put("dateHour2", datestr.substring(0, 10)); + param.put("dateMinute2", datestr.substring(0, 12)); + param.put("dateTime2", datestr); + param.put("year", year); + param.put("month", month); + param.put("day", day); + param.put("hour", hour); + param.put("minute", minute); + param.put("second", second); + param.put("span", span); + param.put("hourSpan", hour+span); + + return param; + } + + public static Date convertStr2Date(String datestr) { + try { + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + return dateFormat.parse(datestr); + } catch (Exception e) { + } + return null; + } + /** + * 转换字段值的格式, + * 用于读取文件插入数据库,此时的格式不一定满足数据格式,尤其是日期吧 + * @param val + * @param str + * @return + */ + public static String convertFieldFormat(String val, String formatStr) { + if(StringUtils.isBlank(val) || StringUtils.isBlank(formatStr)) { + return val; + } + try { + formatStr=formatStr.trim(); + Pattern p = Pattern.compile("f[a-z]+\\((.*)\\)",Pattern.CASE_INSENSITIVE); + Matcher m = p.matcher(formatStr); + String v1=null; + String v2=null; + if(m.find()) { + String[] arrs = m.group(1).trim().split(",|,",2); + v1 = arrs[0].trim(); + if(arrs.length==2) { + v2 = arrs[1].trim(); + } + } + if(formatStr.startsWith("fdate") || formatStr.startsWith("ftime")){ + DateTimeFormatter oldFormatter = DateTimeFormatter.ofPattern(v1); + DateTimeFormatter newFormatter = DateTimeFormatter.ofPattern(v2); + if(formatStr.startsWith("fdate")){//"2020年01月02日", "fdate(yyyy年MM月dd日,yyyy/MM/dd)" + val = LocalDate.parse(val, oldFormatter).format(newFormatter); + } + else if(formatStr.startsWith("ftime")){//"2020年01月02日15:30:00", "ftime(yyyy年MM月dd日HH:mm:ss,yyyy/MM/dd HH:mm:ss)" + val = LocalDateTime.parse(val, oldFormatter).format(newFormatter); + } + }else if(formatStr.startsWith("fnum")){//"2023.1", "fnum(#.00)" + DecimalFormat decimalFormat = new DecimalFormat(v1); + val = decimalFormat.format(new BigDecimal(val)); + }else if(formatStr.startsWith("fsub")){//"abcdef", "fsub(0,2)" + if(v2==null) { + val = val.substring(Integer.valueOf(v1)); + }else { + Integer end = Integer.valueOf(v2); + val = val.substring(Integer.valueOf(v1), end >= val.length()?val.length():end); + } + } + } catch (Exception e) { +// e.printStackTrace(); + //静默处理,错误到数据库层面处理就行了 + } + return val; + } + + /**list按等量拆分 + * + * @param list + * @param splitSize 每组数量 + * @return + */ + public static List> split(List list, int splitSize){ + if(list==null || list.isEmpty()){ + return null; + } + BigDecimal znum = new BigDecimal(list.size()).divide(new BigDecimal(splitSize),0, BigDecimal.ROUND_CEILING); + List> splitList = new ArrayList<>(znum.intValue()); + int factnum = znum.intValue(); + for(int i=0;i> lists) throws SQLException { + if(preparedStatement==null || preparedStatement.isClosed()) {//默认沿用前面的,不再创建 + preparedStatement = connection.prepareStatement(sql); + } + // 添加要插入的数据 + for(List list:lists) { + for(int i=0;i> lists) throws SQLException { + throw new RuntimeException("Hive does not support jdbc writing, please use file writing!!!"); + } + + /** + * 执行单条sql + * 使用完记得关闭 + * @param sql + * @param list + * @throws SQLException + */ + public ResultSet execSql(String sql,List list) throws SQLException { + ResultSet resultSet=null; + if(null!=preparedStatement) {//默认不沿用,有则关闭 + closeCurrStatement(); + } + preparedStatement = connection.prepareStatement(sql); + if(list!=null&&!list.isEmpty()) { + for(int i=0;i>dbName={}",dbName); + jdbcReader = createJdbcHandler(dbName,ds); + return jdbcReader; + } + /** + * 创建写入数据库处理器 + * @param dbName + * @param ds + * @return + * @throws Exception + */ + public JdbcBaseReader createJdbcWriter(String dbName,DDsProperties ds) throws Exception { + LOGGER.info("createJdbcWriter>>dbName={}",dbName); + jdbcWriter = createJdbcHandler(dbName,ds); + return jdbcWriter; + } + + /** + * 根据数据库类型加载数据库配置 + * @param dbName + * @param ds + * @return + * @throws Exception + */ + private JdbcBaseReader createJdbcHandler(String dbName,DDsProperties ds) throws Exception { + JdbcBaseReader jdbcBaseReader=new JdbcBaseReader(); + if(ds!=null) { + jdbcWriterHiveFlag=ds.getDriverClassName().contains(".hive.");//是否hive + jdbcBaseReader.getConnection(ds.getUrl(), ds.getUsername() + , ds.getPassword(), ds.getDriverClassName()); + } + else {//数据库不存在 + LOGGER.info("createJdbcHandler Database type does not exist>>dbName={}",dbName); + return null; + } + return jdbcBaseReader; + } + + /** + * 创建读文件处理器 + * @param dbName + * @param path + * @return + * @throws Exception + */ + public SftpFileBaseReader createSftpReader(String dbName,SshClientPool sshPool,String path) throws Exception { + LOGGER.info("createSftpReader>>dbName={},path={}",dbName,path); + if(null==sftpReader) { + sftpReader = new SftpFileBaseReader(); + sftpReader.createReader(sshPool,path); + } + return sftpReader; + } + + /** + * 开始写入数据 + * @param dbName + * @return + * @throws Exception + */ + public boolean writeData(TblDatacenterTaskStatusVO taskStatus,Map sqlParams) throws Exception { + TblDatacenterTask mappingInfo = taskStatus.getDatacenterTask(); + int factReadCount=0; + try { + if(!readSftpFlag) {//从数据库读 + //转换字段映射 + SqlHandlerResultVO sqlVO = SqlHandlerUtilx.convertJsonToSql(mappingInfo.getRemoteTableSql() + , mappingInfo.getLocalTable(), mappingInfo.getMappingJson()); + sqlVO.setPreSql(mappingInfo.getLocalPreSql()); + + String selectSql=null; + String insertSql=null; + if(!readSftpFlag) { + selectSql=SqlHandlerUtilx.replaceSqlCustomParams(sqlVO.getSelectSql(), sqlParams); + } + if(!writeSftpFlag) { + insertSql=SqlHandlerUtilx.replaceSqlCustomParams(sqlVO.getInsertSql(), sqlParams); + } + String preSql=SqlHandlerUtilx.replaceSqlCustomParams(sqlVO.getPreSql(), sqlParams); + boolean customFieldFlag = sqlVO.getCustomFieldFlag(); + + LOGGER.info("writeData exec selectSql>>{}",selectSql); + long ttime = System.currentTimeMillis();//计算时间 + ResultSet resultSet=jdbcReader.execSql(selectSql, null); + long ttime2 = System.currentTimeMillis();//计算时间 + LOGGER.info("writeData exec selectSql>>time={}",(ttime2-ttime)); + if(resultSet!=null) { + //解决使用*的返回字段全路径问题 + int n=resultSet.getMetaData().getColumnCount(); + Map colMap=new LinkedHashMap<>(); + for(int i=1;i<=n;i++) { + String colname =resultSet.getMetaData().getColumnName(i); + if(colname.contains(".")) { + String colname2=colname.replaceAll("^.*\\.", ""); + if(colMap.get(colname2)==null) {//如果确实有同名直接抛弃即可 + colMap.put(colname2, i); + } + }else { + colMap.put(colname,i); + } + } + Map map = sqlVO.getFieldMapping(); + Set currcols = new LinkedHashSet<>(); + for(Entry ex: colMap.entrySet()) { + if(!customFieldFlag) { + currcols.add(ex.getKey()); + }else { + SqlHandlerTypeVO mappingval=map.get(ex.getKey().toLowerCase()); + if(mappingval!=null) { + currcols.add(mappingval.getColumnCode()); + } + } + } + + //清除本地已有的数据等 + if(!writeSftpFlag) {//写入数据库 + if(StringUtils.isNotBlank(preSql)) { + LOGGER.info("writeData exec preSql>>{}",preSql); + jdbcWriter.execSql(preSql, null); + jdbcWriter.closeCurrStatement();//关闭 + } + }else{ + //未实现 + } + LOGGER.info("writeData exec preSql>>time={}",(System.currentTimeMillis()-ttime2)); + + if(StringUtils.isBlank(insertSql)) {//为空使用了*号 + insertSql=SqlHandlerUtilx.convertInsertSql(currcols, mappingInfo.getLocalTable(),1); + } + + //读取数据,N条写一次 + ttime2 = System.currentTimeMillis(); + List> lists=null; + while(!(lists=readJdbcLines(resultSet,customFieldFlag, colMap, map)).isEmpty()) { + LOGGER.debug("writeData Task Progress>>read time={}",(System.currentTimeMillis()-ttime2)); + + writeDataJdbcOrFile(insertSql, lists); + factReadCount = factReadCount + lists.size(); + lists = null; + LOGGER.debug("writeData Task Progress>>now total={}",factReadCount); + ttime2 = System.currentTimeMillis(); + } + } + LOGGER.info("writeData Task Progress>>end, total time={}", (System.currentTimeMillis()-ttime)); + }else {//读取sftp + long ttime = System.currentTimeMillis();//计算时间 + LOGGER.info("writeData exec readSftpFile>>{}",sftpReader.getReaderPath()); + long ttime2 = System.currentTimeMillis();//计算时间 + + String preSql=SqlHandlerUtilx.replaceSqlCustomParams(mappingInfo.getLocalPreSql(), sqlParams); + String preSelectSql=SqlHandlerUtilx.replaceSqlToCountSql(preSql); + int skipLine = 0; + if(preSelectSql != null) { + ResultSet countResultSet=jdbcWriter.execSql(preSelectSql, null); + if(countResultSet!=null && countResultSet.next()) { + if(StringUtils.isNotBlank(taskStatus.getReadCount())) { + skipLine = Integer.parseInt(taskStatus.getReadCount()); + } + int hascount =countResultSet.getInt(1); + if(hascount != skipLine) {//数量相同则跳过 + skipLine = 0; + } + } + jdbcWriter.closeCurrStatement();//关闭 + } + sftpReader.handleTitleWithSkip(hasTitleFlag,skipLine); + + //字段处理 + String remoteFileFields = hasTitleFlag?sftpReader.getReaderTitle():mappingInfo.getRemoteFileFields(); + Set currcols = new LinkedHashSet<>(); + String[] fields = remoteFileFields.split(",|,"); + for(String col:fields) { + currcols.add(col.trim()); + } + //转换sql + SqlHandlerResultVO sqlVO =SqlHandlerUtilx.convertJsonToSql(currcols, mappingInfo.getLocalTable(), mappingInfo.getMappingJson()); + sqlVO.setPreSql(preSql); + String insertSql = sqlVO.getInsertSql(); + boolean customFieldFlag = sqlVO.getCustomFieldFlag(); + Map map = sqlVO.getFieldMapping(); + + //清除本地已有的数据等 + Map colMap=new LinkedHashMap<>(); + if(!writeSftpFlag) {//写入数据库 + //实时获取数据库的类型 + ResultSet resultSet=jdbcWriter.execSql(sqlVO.getLocalSelectSql(), null); + if(resultSet!=null) { + ResultSetMetaData metaData = resultSet.getMetaData(); + int n=metaData.getColumnCount(); + for(int i=1;i<=n;i++) { + String colname =metaData.getColumnName(i); + String type = metaData.getColumnTypeName(i); + if(colname.contains(".")) { + String colname2=colname.replaceAll("^.*\\.", ""); + if(colMap.get(colname2)==null) {//如果确实有同名直接抛弃即可 + colMap.put(colname2.toLowerCase(), type); + } + }else { + colMap.put(colname.toLowerCase(),type); + } + } + } + jdbcWriter.closeCurrStatement();//关闭 + + if(StringUtils.isNotBlank(preSql)) { + LOGGER.info("writeData exec preSql>>{}",preSql); + jdbcWriter.execSql(preSql, null); + jdbcWriter.closeCurrStatement();//关闭 + } + }else{ + //未实现 + } + LOGGER.info("writeData exec preSql>>time={}",(System.currentTimeMillis()-ttime2)); + BufferedReader inputReader = sftpReader.getInputReader();//文件流 + //读取数据,N条写一次 + ttime2 = System.currentTimeMillis(); + List> lists = null; + while(!(lists = readFileLines(inputReader,customFieldFlag, fields,map, colMap)).isEmpty()) { + LOGGER.debug("writeData Task Progress>>read time={}",(System.currentTimeMillis()-ttime2)); + + writeDataJdbcOrFile(insertSql, lists); + factReadCount = factReadCount + lists.size(); + lists=null; + LOGGER.debug("writeData Task Progress>>now total={}",factReadCount); + ttime2 = System.currentTimeMillis(); + } + LOGGER.info("writeData Task Progress>>end, total time={}", (System.currentTimeMillis()-ttime)); + } + } catch (Exception e) { + LOGGER.info("writeData error>>{},{}",e.getMessage(),e); + return false; + } finally { + sqlParams.put("factReadCount", factReadCount+""); + close(); + } + return true; + } + private List> readJdbcLines(ResultSet resultSet,boolean customFieldFlag + , Map colMap, Map map) throws Exception { + List> lists=new ArrayList<>(); + + while(resultSet.next()) { + List row= new ArrayList<>(); + + for(Entry ex: colMap.entrySet()) {//筛选和转换字段 + SqlHandlerTypeVO mappingval=map.get(ex.getKey().toLowerCase()); + Object colValue = resultSet.getObject(ex.getValue()); + if(mappingval != null) { + //转换类型 + colValue = SqlHandlerUtilx.convertType(resultSet, ex.getValue(),mappingval.getConvertType() + , jdbcWriterHiveFlag||writeSftpFlag);//文件需全转string + } + if(customFieldFlag) {//自定义字段 + if(mappingval != null) { + row.add(colValue); + } + }else { + row.add(colValue); + } + } + lists.add(row); + if(lists.size()>=singleWriteNumber) {//够数 + break; + } + } + return lists; + } + private List> readFileLines(BufferedReader inputReader,boolean customFieldFlag + , String[] fields, Map map, Map colMap) throws Exception { + List lines = new ArrayList<>(); + String line; + while ((line = inputReader.readLine()) != null) { + if(StringUtils.isNotBlank(line)) { + lines.add(line); + if(lines.size() >= singleWriteNumber) { + break; + } + } + } + + List> lists=new ArrayList<>(); + for(String x:lines) { + String[] vals = x.split(fieldSeparator); + + List row= new ArrayList<>(); + for(int i=0;i> lists) throws Exception { + if(!lists.isEmpty()) { + long ttime2 = System.currentTimeMillis(); + if(!writeSftpFlag) {//写入数据库 + if(jdbcWriterHiveFlag) { + jdbcWriter.execBatchSql2(insertSql, lists); + } + else { + jdbcWriter.execBatchSql(insertSql, lists); + } + }else { + //未实现 + } + LOGGER.debug("writeData Task Progress>>write time={}",(System.currentTimeMillis()-ttime2)); + } + } + + + public void close() { + if(null!=jdbcReader) { + jdbcReader.closeConnection(); + } + if(null!=jdbcWriter) { + jdbcWriter.closeConnection(); + } + if(null!=sftpReader) { + sftpReader.close(); + } + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/utils/reader/SftpFileBaseReader.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/utils/reader/SftpFileBaseReader.java new file mode 100644 index 00000000..f3e77bbe --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/common/utils/reader/SftpFileBaseReader.java @@ -0,0 +1,125 @@ +package com.jiuyv.sptccc.agile.business.common.utils.reader; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.ArrayList; +import java.util.List; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.jcraft.jsch.ChannelSftp; +import com.jiuyv.sptccc.agile.common.utils.sftp.SFTPChannel; +import com.jiuyv.sptccc.agile.common.utils.sftp.SshClientPool; + +/** + * sftp操作文件 + * @author zhouliang + * + */ +public class SftpFileBaseReader { + private static final Logger LOGGER = LoggerFactory.getLogger(SftpFileBaseReader.class); + + private SshClientPool poolReader; + private SFTPChannel reader; + private BufferedReader inputReader; + + private Long readerNumber=0L;//已读取行数,方便查看 + + private String readerPath=""; + + private String readerTitle=""; + + public SFTPChannel getReader() { + return reader; + } + public SshClientPool getPoolReader() { + return poolReader; + } + public BufferedReader getInputReader() { + return inputReader; + } + public Long getReaderNumber() { + return readerNumber; + } + public String getReaderPath() { + return readerPath; + } + public String getReaderTitle() { + return readerTitle; + } + + /** + * 创建sftp读取器 + */ + public ChannelSftp createReader(SshClientPool sshPool,String path) throws Exception { + reader = new SFTPChannel(); + poolReader = sshPool; + readerPath = path; + //从连接池获取session + ChannelSftp channelSftp = reader.getChannelNew(poolReader.getSession()); + InputStream inputStream = channelSftp.get(path); + inputReader = new BufferedReader(new InputStreamReader(inputStream)); + return channelSftp; + } + + public String handleTitleWithSkip(boolean hasTitleFlag,int skipLine) throws Exception { + if(skipLine<0) { + skipLine=0; + } + if(hasTitleFlag) {//跳过标题行 + skipLine=skipLine+1; + } + if(skipLine>0) { + int count=0; + String line; + while ((line = inputReader.readLine()) != null) { + if(StringUtils.isNotBlank(line)) { + count++; + if(hasTitleFlag && count==1) {//默认第一行认为是表头,不算 + readerTitle=line; + }else { + readerNumber++; + } + if(count >= skipLine) { + break; + } + } + } + } + return readerTitle; + } + + /** + * 完成后清理文件 + * 这样不靠谱,万一数据落地缺失就没法补了(还是放到批处理去把) + */ + @Deprecated + public void clearFileReader() { + try { + ((ChannelSftp)reader.getChannel()).rm(readerPath); + }catch (Exception e) { + } + } + + public void closeReader() { + try { + if(null!=inputReader) { + inputReader.close(); + } + }catch (Exception e) { + } + if(null!=reader) { + reader.closeInnerChannel(); + } + if(null!=poolReader) { + poolReader.returnSession(reader.getSession());//不再关闭,直接返还连接 + } + } + public void close() { + closeReader(); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/controller/SyncDataController.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/controller/SyncDataController.java new file mode 100644 index 00000000..e21a0cb9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/controller/SyncDataController.java @@ -0,0 +1,20 @@ +package com.jiuyv.sptccc.agile.business.controller; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + + +/** + * 数据同步 + * @author zhouliang + * @date 2024年8月6日 + */ +@RestController +@RequestMapping("/datacenterTask/") +public class SyncDataController { + + private static final Logger LOGGER = LoggerFactory.getLogger(SyncDataController.class); + +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblDatacenterTask.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblDatacenterTask.java new file mode 100644 index 00000000..3c1ab619 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblDatacenterTask.java @@ -0,0 +1,451 @@ +package com.jiuyv.sptccc.agile.business.entity; + +import java.math.BigDecimal; +import java.time.Instant; +import java.util.Date; + + +/** + * 数据同步任务定义表 + * @author zhoul + * @date 2024-08-09 + */ +public class TblDatacenterTask implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** 任务编号 */ + private String taskNo; + + /** 任务名称 */ + private String taskTitle; + + /** 任务类型 */ + private String taskType; + + /** 版本号 */ + private Integer versionNum; + + /** 随机码 */ + private String recToken; + + /** 远程数据库 */ + private String remoteDbName; + + /** 远程表查询sql */ + private String remoteTableSql; + + /** 远程文件名 */ + private String remoteFileName; + + /** 远程文件头 */ + private String remoteFileFields; + + /** 本地数据库 */ + private String localDbName; + + /** 本地前置sql */ + private String localPreSql; + + /** 本地表编码 */ + private String localTable; + + /** 字段映射关系 */ + private String mappingJson; + + /** 默认条件 */ + private String defaultQueryJson; + + /** 临时条件组 */ + private String tempQueryJson; + + /** 可尝试次数 */ + private Integer attemptsNum; + + /** 执行间隔时间 */ + private String runIntervalTime; + + /** 最后运行时间 */ + private Date lastRunDate; + + /** 表达式 */ + private String scheduledCron; + + /** 备注 */ + private String remarks; + + /** 排序 */ + private Integer orderNum; + + /** 数据状态 */ + private String dataStatus; + + /** 创建时间 */ + private Date createTime; + + /** 更新时间 */ + private Date updateTime; + + /** 备用字段1 */ + private String rsv1; + + /** 备用字段2 */ + private String rsv2; + + /** 备用字段3 */ + private String rsv3; + + + + /** + * Get任务编号 + */ + public String getTaskNo(){ + return taskNo; + } + /** + * Set任务编号 + */ + public void setTaskNo(String taskNo){ + this.taskNo = taskNo; + } + + /** + * Get任务名称 + */ + public String getTaskTitle(){ + return taskTitle; + } + /** + * Set任务名称 + */ + public void setTaskTitle(String taskTitle){ + this.taskTitle = taskTitle; + } + + /** + * Get任务类型 + */ + public String getTaskType(){ + return taskType; + } + /** + * Set任务类型 + */ + public void setTaskType(String taskType){ + this.taskType = taskType; + } + + /** + * Get版本号 + */ + public Integer getVersionNum(){ + return versionNum; + } + /** + * Set版本号 + */ + public void setVersionNum(Integer versionNum){ + this.versionNum = versionNum; + } + + /** + * Get随机码 + */ + public String getRecToken(){ + return recToken; + } + /** + * Set随机码 + */ + public void setRecToken(String recToken){ + this.recToken = recToken; + } + + /** + * Get远程数据库 + */ + public String getRemoteDbName(){ + return remoteDbName; + } + /** + * Set远程数据库 + */ + public void setRemoteDbName(String remoteDbName){ + this.remoteDbName = remoteDbName; + } + + /** + * Get远程表查询sql + */ + public String getRemoteTableSql(){ + return remoteTableSql; + } + /** + * Set远程表查询sql + */ + public void setRemoteTableSql(String remoteTableSql){ + this.remoteTableSql = remoteTableSql; + } + + /** + * Get远程文件名 + */ + public String getRemoteFileName(){ + return remoteFileName; + } + /** + * Set远程文件名 + */ + public void setRemoteFileName(String remoteFileName){ + this.remoteFileName = remoteFileName; + } + + /** + * Get远程文件头 + */ + public String getRemoteFileFields(){ + return remoteFileFields; + } + /** + * Set远程文件头 + */ + public void setRemoteFileFields(String remoteFileFields){ + this.remoteFileFields = remoteFileFields; + } + + /** + * Get本地数据库 + */ + public String getLocalDbName(){ + return localDbName; + } + /** + * Set本地数据库 + */ + public void setLocalDbName(String localDbName){ + this.localDbName = localDbName; + } + + /** + * Get本地前置sql + */ + public String getLocalPreSql(){ + return localPreSql; + } + /** + * Set本地前置sql + */ + public void setLocalPreSql(String localPreSql){ + this.localPreSql = localPreSql; + } + + /** + * Get本地表编码 + */ + public String getLocalTable(){ + return localTable; + } + /** + * Set本地表编码 + */ + public void setLocalTable(String localTable){ + this.localTable = localTable; + } + + /** + * Get字段映射关系 + */ + public String getMappingJson(){ + return mappingJson; + } + /** + * Set字段映射关系 + */ + public void setMappingJson(String mappingJson){ + this.mappingJson = mappingJson; + } + + /** + * Get默认条件 + */ + public String getDefaultQueryJson(){ + return defaultQueryJson; + } + /** + * Set默认条件 + */ + public void setDefaultQueryJson(String defaultQueryJson){ + this.defaultQueryJson = defaultQueryJson; + } + + /** + * Get临时条件组 + */ + public String getTempQueryJson(){ + return tempQueryJson; + } + /** + * Set临时条件组 + */ + public void setTempQueryJson(String tempQueryJson){ + this.tempQueryJson = tempQueryJson; + } + + /** + * Get可尝试次数 + */ + public Integer getAttemptsNum(){ + return attemptsNum; + } + /** + * Set可尝试次数 + */ + public void setAttemptsNum(Integer attemptsNum){ + this.attemptsNum = attemptsNum; + } + + /** + * Get执行间隔时间 + */ + public String getRunIntervalTime(){ + return runIntervalTime; + } + /** + * Set执行间隔时间 + */ + public void setRunIntervalTime(String runIntervalTime){ + this.runIntervalTime = runIntervalTime; + } + + /** + * Get最后运行时间 + */ + public Date getLastRunDate(){ + return lastRunDate; + } + /** + * Set最后运行时间 + */ + public void setLastRunDate(Date lastRunDate){ + this.lastRunDate = lastRunDate; + } + + /** + * Get表达式 + */ + public String getScheduledCron(){ + return scheduledCron; + } + /** + * Set表达式 + */ + public void setScheduledCron(String scheduledCron){ + this.scheduledCron = scheduledCron; + } + + /** + * Get备注 + */ + public String getRemarks(){ + return remarks; + } + /** + * Set备注 + */ + public void setRemarks(String remarks){ + this.remarks = remarks; + } + + /** + * Get排序 + */ + public Integer getOrderNum(){ + return orderNum; + } + /** + * Set排序 + */ + public void setOrderNum(Integer orderNum){ + this.orderNum = orderNum; + } + + /** + * Get数据状态 + */ + public String getDataStatus(){ + return dataStatus; + } + /** + * Set数据状态 + */ + public void setDataStatus(String dataStatus){ + this.dataStatus = dataStatus; + } + + /** + * Get创建时间 + */ + public Date getCreateTime(){ + return createTime; + } + /** + * Set创建时间 + */ + public void setCreateTime(Date createTime){ + this.createTime = createTime; + } + + /** + * Get更新时间 + */ + public Date getUpdateTime(){ + return updateTime; + } + /** + * Set更新时间 + */ + public void setUpdateTime(Date updateTime){ + this.updateTime = updateTime; + } + + /** + * Get备用字段1 + */ + public String getRsv1(){ + return rsv1; + } + /** + * Set备用字段1 + */ + public void setRsv1(String rsv1){ + this.rsv1 = rsv1; + } + + /** + * Get备用字段2 + */ + public String getRsv2(){ + return rsv2; + } + /** + * Set备用字段2 + */ + public void setRsv2(String rsv2){ + this.rsv2 = rsv2; + } + + /** + * Get备用字段3 + */ + public String getRsv3(){ + return rsv3; + } + /** + * Set备用字段3 + */ + public void setRsv3(String rsv3){ + this.rsv3 = rsv3; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblDatacenterTaskStatus.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblDatacenterTaskStatus.java new file mode 100644 index 00000000..ee243f96 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/TblDatacenterTaskStatus.java @@ -0,0 +1,355 @@ +package com.jiuyv.sptccc.agile.business.entity; + +import java.math.BigDecimal; +import java.time.Instant; +import java.util.Date; + + +/** + * 数据同步状态表 + * @author zhoul + * @date 2024-08-09 + */ +public class TblDatacenterTaskStatus implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** 任务编号 */ + private String taskNo; + + /** 数据条件 */ + private String taskConditions; + + /** 任务类型 */ + private String taskType; + + /** 版本号 */ + private Integer versionNum; + + /** 随机码 */ + private String recToken; + + /** 上次开始时间 */ + private Date preStartDate; + + /** 上次结束时间 */ + private Date preEndDate; + + /** 上次耗时 */ + private String preTotalTime; + + /** 当前开始时间 */ + private Date currStartDate; + + /** 待加载文件 */ + private String loadFile; + + /** 加载时间 */ + private String loadTime; + + /** 可尝试次数 */ + private Integer attemptsNum; + + /** 执行间隔时间 */ + private String runIntervalTime; + + /** 已读取数量 */ + private String readCount; + + /** 任务状态 */ + private String busStatus; + + /** 数据状态 */ + private String dataStatus; + + /** 创建时间 */ + private Date createTime; + + /** 更新时间 */ + private Date updateTime; + + /** 备用字段1 */ + private String rsv1; + + /** 备用字段2 */ + private String rsv2; + + /** 备用字段3 */ + private String rsv3; + + + + /** + * Get任务编号 + */ + public String getTaskNo(){ + return taskNo; + } + /** + * Set任务编号 + */ + public void setTaskNo(String taskNo){ + this.taskNo = taskNo; + } + + /** + * Get数据条件 + */ + public String getTaskConditions(){ + return taskConditions; + } + /** + * Set数据条件 + */ + public void setTaskConditions(String taskConditions){ + this.taskConditions = taskConditions; + } + + /** + * Get任务类型 + */ + public String getTaskType(){ + return taskType; + } + /** + * Set任务类型 + */ + public void setTaskType(String taskType){ + this.taskType = taskType; + } + + /** + * Get版本号 + */ + public Integer getVersionNum(){ + return versionNum; + } + /** + * Set版本号 + */ + public void setVersionNum(Integer versionNum){ + this.versionNum = versionNum; + } + + /** + * Get随机码 + */ + public String getRecToken(){ + return recToken; + } + /** + * Set随机码 + */ + public void setRecToken(String recToken){ + this.recToken = recToken; + } + + /** + * Get上次开始时间 + */ + public Date getPreStartDate(){ + return preStartDate; + } + /** + * Set上次开始时间 + */ + public void setPreStartDate(Date preStartDate){ + this.preStartDate = preStartDate; + } + + /** + * Get上次结束时间 + */ + public Date getPreEndDate(){ + return preEndDate; + } + /** + * Set上次结束时间 + */ + public void setPreEndDate(Date preEndDate){ + this.preEndDate = preEndDate; + } + + /** + * Get上次耗时 + */ + public String getPreTotalTime(){ + return preTotalTime; + } + /** + * Set上次耗时 + */ + public void setPreTotalTime(String preTotalTime){ + this.preTotalTime = preTotalTime; + } + + /** + * Get当前开始时间 + */ + public Date getCurrStartDate(){ + return currStartDate; + } + /** + * Set当前开始时间 + */ + public void setCurrStartDate(Date currStartDate){ + this.currStartDate = currStartDate; + } + + /** + * Get待加载文件 + */ + public String getLoadFile(){ + return loadFile; + } + /** + * Set待加载文件 + */ + public void setLoadFile(String loadFile){ + this.loadFile = loadFile; + } + + /** + * Get加载时间 + */ + public String getLoadTime(){ + return loadTime; + } + /** + * Set加载时间 + */ + public void setLoadTime(String loadTime){ + this.loadTime = loadTime; + } + + /** + * Get可尝试次数 + */ + public Integer getAttemptsNum(){ + return attemptsNum; + } + /** + * Set可尝试次数 + */ + public void setAttemptsNum(Integer attemptsNum){ + this.attemptsNum = attemptsNum; + } + + /** + * Get执行间隔时间 + */ + public String getRunIntervalTime(){ + return runIntervalTime; + } + /** + * Set执行间隔时间 + */ + public void setRunIntervalTime(String runIntervalTime){ + this.runIntervalTime = runIntervalTime; + } + + /** + * Get已读取数量 + */ + public String getReadCount(){ + return readCount; + } + /** + * Set已读取数量 + */ + public void setReadCount(String readCount){ + this.readCount = readCount; + } + + /** + * Get任务状态 + */ + public String getBusStatus(){ + return busStatus; + } + /** + * Set任务状态 + */ + public void setBusStatus(String busStatus){ + this.busStatus = busStatus; + } + + /** + * Get数据状态 + */ + public String getDataStatus(){ + return dataStatus; + } + /** + * Set数据状态 + */ + public void setDataStatus(String dataStatus){ + this.dataStatus = dataStatus; + } + + /** + * Get创建时间 + */ + public Date getCreateTime(){ + return createTime; + } + /** + * Set创建时间 + */ + public void setCreateTime(Date createTime){ + this.createTime = createTime; + } + + /** + * Get更新时间 + */ + public Date getUpdateTime(){ + return updateTime; + } + /** + * Set更新时间 + */ + public void setUpdateTime(Date updateTime){ + this.updateTime = updateTime; + } + + /** + * Get备用字段1 + */ + public String getRsv1(){ + return rsv1; + } + /** + * Set备用字段1 + */ + public void setRsv1(String rsv1){ + this.rsv1 = rsv1; + } + + /** + * Get备用字段2 + */ + public String getRsv2(){ + return rsv2; + } + /** + * Set备用字段2 + */ + public void setRsv2(String rsv2){ + this.rsv2 = rsv2; + } + + /** + * Get备用字段3 + */ + public String getRsv3(){ + return rsv3; + } + /** + * Set备用字段3 + */ + public void setRsv3(String rsv3){ + this.rsv3 = rsv3; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblDatacenterTaskStatusVO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblDatacenterTaskStatusVO.java new file mode 100644 index 00000000..4f3537a7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblDatacenterTaskStatusVO.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptccc.agile.business.entity.vo; + +import java.util.List; + +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTask; +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTaskStatus; + + /** + * 数据同步状态表,扩展 + * @author zhoul + * @date 2024-08-07 + */ +public class TblDatacenterTaskStatusVO extends TblDatacenterTaskStatus implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + + /** 任务状态 */ + private List busStatuss; + + /** 项目原始配置 */ + private TblDatacenterTask datacenterTask; + + /** 间隔时间类型m、h */ + private String overdateType; + /** 间隔时间 30 */ + private String overdate; + + public List getBusStatuss() { + return busStatuss; + } + public void setBusStatuss(List busStatuss) { + this.busStatuss = busStatuss; + } + + public TblDatacenterTask getDatacenterTask() { + return datacenterTask; + } + public void setDatacenterTask(TblDatacenterTask datacenterTask) { + this.datacenterTask = datacenterTask; + } + public String getOverdateType() { + return overdateType; + } + public void setOverdateType(String overdateType) { + this.overdateType = overdateType; + } + public String getOverdate() { + return overdate; + } + public void setOverdate(String overdate) { + this.overdate = overdate; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblDatacenterTaskVO.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblDatacenterTaskVO.java new file mode 100644 index 00000000..2bb3e20c --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/entity/vo/TblDatacenterTaskVO.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptccc.agile.business.entity.vo; + +import java.util.List; + +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTask; + + /** + * 数据同步任务定义表,扩展 + * @author zhoul + * @date 2024-08-07 + */ +public class TblDatacenterTaskVO extends TblDatacenterTask implements java.io.Serializable { + + private static final long serialVersionUID = 1L; + + /** 任务编号 */ + private List taskNos; + + public List getTaskNos() { + return taskNos; + } + + public void setTaskNos(List taskNos) { + this.taskNos = taskNos; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/mapper/ISysTimeBaseMapper.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/mapper/ISysTimeBaseMapper.java new file mode 100644 index 00000000..977a0f5c --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/mapper/ISysTimeBaseMapper.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptccc.agile.business.mapper; + +import org.apache.ibatis.annotations.Mapper; + +import com.jiuyv.sptccc.agile.common.model.BaseTime; + +@Mapper +public interface ISysTimeBaseMapper { + + /** + * 获取系统当前时间-yyyyMMddHHmmss + * @return + */ + BaseTime selectSysCurrentTime(); + +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblDatacenterTaskMapper.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblDatacenterTaskMapper.java new file mode 100644 index 00000000..1b02a522 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblDatacenterTaskMapper.java @@ -0,0 +1,35 @@ +package com.jiuyv.sptccc.agile.business.mapper; + +import java.util.List; +import java.util.Map; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTask; +import com.jiuyv.sptccc.agile.business.entity.vo.TblDatacenterTaskVO; + + +/** + * 数据同步任务定义表 + * @author zhoul + * @date 2024-08-07 + */ +@Mapper +public interface TblDatacenterTaskMapper{ + + /** 查询集合 */ + List selectListByMap(TblDatacenterTaskVO paramMap); + + /** 查询单条 */ + TblDatacenterTask selectOneByMap(TblDatacenterTaskVO paramMap); + + /** 更新记录 */ + int updateByMap(@Param("vo") TblDatacenterTask record,@Param("map") TblDatacenterTaskVO paramMap); + + /** 查询所有有效的任务集合 */ + List selectTaskList(TblDatacenterTaskVO paramMap); + + /** 清空临时条件 */ + int updateClearTempQueryJson(TblDatacenterTaskVO paramMap); + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblDatacenterTaskStatusMapper.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblDatacenterTaskStatusMapper.java new file mode 100644 index 00000000..a606a304 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/mapper/TblDatacenterTaskStatusMapper.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptccc.agile.business.mapper; + +import java.util.List; + +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTaskStatus; +import com.jiuyv.sptccc.agile.business.entity.vo.TblDatacenterTaskStatusVO; + + +/** + * 数据同步状态表 + * @author zhoul + * @date 2024-08-07 + */ +@Mapper +public interface TblDatacenterTaskStatusMapper{ + + /** 查询单条 */ + TblDatacenterTaskStatus selectOneByMap(TblDatacenterTaskStatusVO paramMap); + + /** 插入记录 */ + int insert(TblDatacenterTaskStatus record); + + /** 更新记录 */ + int updateByMap(@Param("vo") TblDatacenterTaskStatus record,@Param("map") TblDatacenterTaskStatusVO paramMap); + + /** 查询错误待重启任务集合 */ + List selectErrorTaskList(TblDatacenterTaskStatusVO paramMap); + + /** 更新错误待重启任务记录 */ + int updateErrorByMap(@Param("vo") TblDatacenterTaskStatus record,@Param("map") TblDatacenterTaskStatusVO paramMap); + + /** 更新待重置的任务记录 */ + int updateResetByMap(@Param("vo") TblDatacenterTaskStatus record,@Param("map") TblDatacenterTaskStatusVO paramMap); +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/service/IDatacenterTaskStatusService.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/service/IDatacenterTaskStatusService.java new file mode 100644 index 00000000..d3741cd9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/service/IDatacenterTaskStatusService.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptccc.agile.business.service; + +import java.util.List; + +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTask; +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTaskStatus; +import com.jiuyv.sptccc.agile.business.entity.vo.TblDatacenterTaskStatusVO; +import com.jiuyv.sptccc.agile.common.model.BaseTime; + + +/** + * 数据同步状态表 + * @author zhoul + * @date 2024-08-07 + */ +public interface IDatacenterTaskStatusService { + + /** 重置运行中的任务 */ + public void doResetDatacenterTaskStatus() throws Exception; + + /** 获取待注册定时任务 */ + public List getDatacenterTaskNormal() throws Exception; + + /** 查询任务详情 */ + public TblDatacenterTask getDatacenterTaskDetail(String taskNo) throws Exception; + + + /** 创建一个新的任务(正常运行的) */ + public int doCreateDatacenterTaskStatus(TblDatacenterTaskStatusVO taskStatus,TblDatacenterTask task); + + /** 创建一个新的任务 */ + public int doCreateDatacenterTaskStatus(TblDatacenterTaskStatus taskStatus); + + /** 完成一个任务 */ + public void doFinishDatacenterTaskStatus(TblDatacenterTaskStatus taskStatus); + + /** 异常完成一个任务 */ + public void doUnfinishDatacenterTaskStatus(TblDatacenterTaskStatus taskStatus); + + + /** 准备重启失败的任务 */ + public List doRestartTaskStatusForError(BaseTime timeVO) throws Exception; +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/service/impl/DatacenterTaskStatusServiceImpl.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/service/impl/DatacenterTaskStatusServiceImpl.java new file mode 100644 index 00000000..230d3261 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/service/impl/DatacenterTaskStatusServiceImpl.java @@ -0,0 +1,246 @@ +package com.jiuyv.sptccc.agile.business.service.impl; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import com.jiuyv.sptccc.agile.business.common.enums.TblDatacenterTaskStatusEnum; +import com.jiuyv.sptccc.agile.business.common.utils.SyncDatacenterUtils; +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTask; +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTaskStatus; +import com.jiuyv.sptccc.agile.business.entity.vo.TblDatacenterTaskStatusVO; +import com.jiuyv.sptccc.agile.business.entity.vo.TblDatacenterTaskVO; +import com.jiuyv.sptccc.agile.business.mapper.TblDatacenterTaskMapper; +import com.jiuyv.sptccc.agile.business.mapper.TblDatacenterTaskStatusMapper; +import com.jiuyv.sptccc.agile.business.service.IDatacenterTaskStatusService; +import com.jiuyv.sptccc.agile.common.BaseManagerUtils; +import com.jiuyv.sptccc.agile.common.model.BaseTime; + + +/** + * 数据同步状态表 + * @author zhoul + * @date 2024-08-07 + */ +@Service("datacenterTaskStatusService") +public class DatacenterTaskStatusServiceImpl implements IDatacenterTaskStatusService { + + private static final Logger LOGGER = LoggerFactory.getLogger(DatacenterTaskStatusServiceImpl.class); + + @Autowired + private TblDatacenterTaskStatusMapper tblDatacenterTaskStatusMapper; + @Autowired + private TblDatacenterTaskMapper tblDatacenterTaskMapper; + + @Override + public void doResetDatacenterTaskStatus() throws Exception { + Date time = BaseManagerUtils.getSystemTime().getDate(); + + TblDatacenterTaskStatusVO param = new TblDatacenterTaskStatusVO(); + param.setCurrStartDate(time); + param.setBusStatus(TblDatacenterTaskStatusEnum.BUS_STATUS.RUNING.getCode()); + //让这些任务结束,次数增加1 + TblDatacenterTaskStatus vo = new TblDatacenterTaskStatus(); + vo.setRecToken(BaseManagerUtils.getNewRecToken()); + vo.setUpdateTime(time); + vo.setBusStatus(TblDatacenterTaskStatusEnum.BUS_STATUS.END.getCode()); + tblDatacenterTaskStatusMapper.updateResetByMap(vo, param); + } + + @Override + public List getDatacenterTaskNormal() throws Exception { + TblDatacenterTaskVO taskparam = new TblDatacenterTaskVO(); + taskparam.setDataStatus(TblDatacenterTaskStatusEnum.DATA_STATUS.NORMAL.getCode()); + List list = tblDatacenterTaskMapper.selectTaskList(taskparam); + list = list.stream().filter(x-> StringUtils.isNotBlank(x.getScheduledCron())).collect(Collectors.toList()); + return list; + } + + @Override + public TblDatacenterTask getDatacenterTaskDetail(String taskNo) throws Exception { + TblDatacenterTaskVO taskparam = new TblDatacenterTaskVO(); + taskparam.setTaskNo(taskNo); + return tblDatacenterTaskMapper.selectOneByMap(taskparam); + } + + @Override + public int doCreateDatacenterTaskStatus(TblDatacenterTaskStatusVO taskStatus,TblDatacenterTask task) { + int num = doCreateDatacenterTaskStatusInner(taskStatus); + if(num==0) { + return 0; + } + try { + //正常是不会报错的,除非代码有问题 + TblDatacenterTask taskvo = new TblDatacenterTask(); + taskvo.setUpdateTime(taskStatus.getCurrStartDate()); + taskvo.setLastRunDate(taskStatus.getCurrStartDate()); + taskvo.setRecToken(BaseManagerUtils.getNewRecToken()); + TblDatacenterTaskVO taskparam = new TblDatacenterTaskVO(); + taskparam.setTaskNo(task.getTaskNo()); + taskparam.setVersionNum(task.getVersionNum()); + taskparam.setRecToken(task.getRecToken()); + tblDatacenterTaskMapper.updateByMap(taskvo, taskparam); + return num; + }catch(Exception e) { + LOGGER.info("doCreateDatacenterTaskStatusNormal>>异常",e); + return 0;//0表示不处理 + } + } + @Override + public int doCreateDatacenterTaskStatus(TblDatacenterTaskStatus taskStatus) { + return doCreateDatacenterTaskStatusInner(taskStatus); + } + private int doCreateDatacenterTaskStatusInner(TblDatacenterTaskStatus taskStatus) { + try { + TblDatacenterTaskStatusVO param = new TblDatacenterTaskStatusVO(); + param.setTaskNo(taskStatus.getTaskNo()); + param.setTaskConditions(taskStatus.getTaskConditions()); + TblDatacenterTaskStatus data = tblDatacenterTaskStatusMapper.selectOneByMap(param); + if(data != null) { + return 0;//0表示不处理 + } + taskStatus.setBusStatus(TblDatacenterTaskStatusEnum.BUS_STATUS.RUNING.getCode()); + taskStatus.setDataStatus(TblDatacenterTaskStatusEnum.DATA_STATUS.NORMAL.getCode()); + return tblDatacenterTaskStatusMapper.insert(taskStatus); + }catch(Exception e) { + LOGGER.info("doCreateDatacenterTaskStatusInner>>异常",e); + return 0;//0表示不处理 + } + } + + @Override + public void doFinishDatacenterTaskStatus(TblDatacenterTaskStatus taskStatus){ + doFinishTashStatusInner(taskStatus, TblDatacenterTaskStatusEnum.BUS_STATUS.FINISH.getCode()); + } + + @Override + public void doUnfinishDatacenterTaskStatus(TblDatacenterTaskStatus taskStatus){ + doFinishTashStatusInner(taskStatus, TblDatacenterTaskStatusEnum.BUS_STATUS.UNFINISH.getCode()); + } + private void doFinishTashStatusInner(TblDatacenterTaskStatus taskStatus, String busStatus) { + try { + Date time = BaseManagerUtils.getSystemTime().getDate(); + TblDatacenterTaskStatusVO param = new TblDatacenterTaskStatusVO(); + param.setTaskNo(taskStatus.getTaskNo()); + param.setTaskConditions(taskStatus.getTaskConditions()); + param.setVersionNum(taskStatus.getVersionNum()); + param.setRecToken(taskStatus.getRecToken()); + //结束任务 + TblDatacenterTaskStatus vo = new TblDatacenterTaskStatus(); + vo.setRecToken(BaseManagerUtils.getNewRecToken()); + vo.setReadCount(taskStatus.getReadCount()); + vo.setPreStartDate(taskStatus.getCurrStartDate()); + vo.setPreEndDate(time); + vo.setPreTotalTime(SyncDatacenterUtils.getTotalTime(vo.getPreStartDate(),vo.getPreEndDate())); + vo.setUpdateTime(time); + vo.setBusStatus(busStatus); + tblDatacenterTaskStatusMapper.updateByMap(vo, param); + }catch (Exception e) { + LOGGER.info("doFinishTashStatusInner>>异常",e); + } + } + + @Override + public List doRestartTaskStatusForError(BaseTime timeVO) throws Exception { + Date time = timeVO.getDate(); + + //错误任务 + TblDatacenterTaskStatusVO param = new TblDatacenterTaskStatusVO(); + param.setCurrStartDate(time); + param.setBusStatuss(Arrays.asList(TblDatacenterTaskStatusEnum.BUS_STATUS.UNFINISH.getCode() + ,TblDatacenterTaskStatusEnum.BUS_STATUS.END.getCode())); + List list = tblDatacenterTaskStatusMapper.selectErrorTaskList(param); + if(!list.isEmpty()) { + //只需要超过间隔的 + list = list.stream().filter(x-> SyncDatacenterUtils.checkTimeExceed(x.getCurrStartDate(),time, x.getRunIntervalTime())) + .collect(Collectors.toList()); + if(!list.isEmpty()) { + String newRecToken = BaseManagerUtils.getNewRecToken(); + for(TblDatacenterTaskStatus x:list) { + //让这些任务开始,次数减少1 + TblDatacenterTaskStatus vo = new TblDatacenterTaskStatus(); + vo.setRecToken(newRecToken); + vo.setUpdateTime(time); + vo.setCurrStartDate(time); + vo.setBusStatus(TblDatacenterTaskStatusEnum.BUS_STATUS.RUNING.getCode()); + param = new TblDatacenterTaskStatusVO(); + param.setTaskNo(x.getTaskNo()); + param.setTaskConditions(x.getTaskConditions()); + param.setBusStatuss(Arrays.asList(TblDatacenterTaskStatusEnum.BUS_STATUS.UNFINISH.getCode() + ,TblDatacenterTaskStatusEnum.BUS_STATUS.END.getCode())); + tblDatacenterTaskStatusMapper.updateErrorByMap(vo, param); + } + + List ids = list.stream().map(x->x.getTaskNo()).distinct().collect(Collectors.toList()); + + TblDatacenterTaskVO paramTask = new TblDatacenterTaskVO(); + paramTask.setDataStatus(TblDatacenterTaskStatusEnum.DATA_STATUS.NORMAL.getCode()); + paramTask.setTaskNos(ids); + List tasklist = tblDatacenterTaskMapper.selectListByMap(paramTask); + Map map = tasklist.stream().distinct().collect(Collectors.toMap(x->x.getTaskNo(), x->x)); + for(TblDatacenterTaskStatusVO x:list) { + x.setVersionNum(x.getVersionNum()+1);//一定加1 + x.setRecToken(newRecToken); + x.setCurrStartDate(time); + x.setUpdateTime(time); + x.setDatacenterTask(map.get(x.getTaskNo()));//配置 + } + } + } + + //临时任务 + TblDatacenterTaskVO paramtask = new TblDatacenterTaskVO(); + paramtask.setDataStatus(TblDatacenterTaskStatusEnum.DATA_STATUS.NORMAL.getCode()); +// List tasklist = tblDatacenterTaskMapper.selectTaskList(paramtask); +// if(!tasklist.isEmpty()) { +// List tempTasks = new ArrayList<>(); +// for(TblDatacenterTask task :tasklist) { +// if(StringUtils.isBlank(task.getTempQueryJson())) { +// continue; +// } +// String[] querys = task.getTempQueryJson().split(",|,"); +// boolean flag = false; +// for(String qx:querys) { +// if(StringUtils.isBlank(qx)) { +// continue; +// } +// //转换时间 +// Date date = SyncDatacenterUtils.convertStr2Date(qx.trim()); +// Map datemap = SyncDatacenterUtils.convertQueryDateParam(date, task.getDefaultQueryJson()); +// TblDatacenterTaskStatusVO taskStatus = SyncDatacenterUtils.createTaskStatusVO(time, task, datemap); +// this.doCreateDatacenterTaskStatus(taskStatus); +// tempTasks.add(taskStatus); +// flag = true; +// } +// if(flag) {//需要立即清空 +// TblDatacenterTaskVO taskvo = new TblDatacenterTaskVO(); +// taskvo.setTaskNo(task.getTaskNo()); +// taskvo.setLastRunDate(time); +// taskvo.setUpdateTime(time); +// tblDatacenterTaskMapper.updateClearTempQueryJson(taskvo); +// } +// } +// if(!tempTasks.isEmpty()) { +// list.addAll(tempTasks); +// } +// +// //查询任务是否有缺失,自动补充(日期最多的一条来计算间隔) +//// List waitTasks = new ArrayList<>(); +//// if(!waitTasks.isEmpty()) { +//// list.addAll(waitTasks); +//// } +// } + + return list; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/service/impl/SyncDatacenterService.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/service/impl/SyncDatacenterService.java new file mode 100644 index 00000000..fe2395f1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/business/service/impl/SyncDatacenterService.java @@ -0,0 +1,238 @@ +package com.jiuyv.sptccc.agile.business.service.impl; + +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.ExecutorService; +import java.util.concurrent.Executors; +import java.util.stream.Collectors; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.env.Environment; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Component; + +import com.jiuyv.sptccc.agile.business.common.model.DDsProperties; +import com.jiuyv.sptccc.agile.business.common.utils.SyncDatacenterUtils; +import com.jiuyv.sptccc.agile.business.common.utils.reader.ReaderWriterHelper; +import com.jiuyv.sptccc.agile.business.entity.TblDatacenterTask; +import com.jiuyv.sptccc.agile.business.entity.vo.TblDatacenterTaskStatusVO; +import com.jiuyv.sptccc.agile.business.service.IDatacenterTaskStatusService; +import com.jiuyv.sptccc.agile.common.BaseManagerUtils; +import com.jiuyv.sptccc.agile.common.model.BaseTime; +import com.jiuyv.sptccc.agile.common.utils.sftp.SshClientHostPool; +import com.jiuyv.sptccc.agile.common.utils.sftp.SshClientPool; +import com.jiuyv.sptccc.agile.common.utils.sftp.model.SFTPConfig; +import com.jiuyv.sptccc.agile.framework.config.SftpConfigProperties; + +import net.logstash.logback.encoder.org.apache.commons.lang3.StringUtils; + +/** + * 数据同步状态处理 + * @author zhoul + * @date 2024-08-07 + */ +@Component +public class SyncDatacenterService { + + private static final Logger LOGGER = LoggerFactory.getLogger(SyncDatacenterService.class); + + @Autowired + private IDatacenterTaskStatusService datacenterTaskStatusService; + @Autowired + private Environment environment; + @Autowired + private SftpConfigProperties sftpConfigProperties; + + /** 获取数据源配置 */ + public DDsProperties getDataSourceConf(String dbName) { + DDsProperties dsProperties = new DDsProperties(); + String url=environment.getProperty(dbName+".url"); + String username=environment.getProperty(dbName+".username"); + String password=environment.getProperty(dbName+".password"); + String driverClassName= environment.getProperty(dbName+".driverClassName"); + String confPath=environment.getProperty(dbName+".confPath"); + String singleWriteNumber=environment.getProperty(dbName+".singleWriteNumber"); + String readWritePath=environment.getProperty(dbName+".readWritePath"); + String fieldSeparator=environment.getProperty(dbName+".fieldSeparator"); + dsProperties.setUrl(url); + dsProperties.setUsername(username); + dsProperties.setPassword(password); + dsProperties.setDriverClassName(driverClassName); + dsProperties.setConfPath(confPath); + dsProperties.setReadWritePath(readWritePath); + if(StringUtils.isNotBlank(singleWriteNumber)) { + dsProperties.setSingleWriteNumber(Integer.valueOf(singleWriteNumber)); + } + if(StringUtils.isNotBlank(fieldSeparator)) { + dsProperties.setFieldSeparator(fieldSeparator); + } + String fileType=environment.getProperty(dbName+".fileType"); + String sftpHost=environment.getProperty(dbName+".sftpHost"); + String sftpPort=environment.getProperty(dbName+".sftpPort"); + String sftpUsername=environment.getProperty(dbName+".sftpUsername"); + String sftpPassword=environment.getProperty(dbName+".sftpPassword"); + if("sftp".equals(fileType)) { + dsProperties.setFileType(fileType); + dsProperties.setSftpHost(sftpHost); + if(sftpPort!=null) { + dsProperties.setSftpPort(Integer.valueOf(sftpPort)); + } + dsProperties.setSftpUsername(sftpUsername); + dsProperties.setSftpPassword(sftpPassword); + } + //如果这些属性全为空则认为是文件或没有配置,返回null + if(StringUtils.isBlank(url) && StringUtils.isBlank(username) && StringUtils.isBlank(singleWriteNumber) + && StringUtils.isBlank(readWritePath) && StringUtils.isBlank(fieldSeparator) + && StringUtils.isBlank(sftpHost) && StringUtils.isBlank(sftpPort) + && StringUtils.isBlank(sftpUsername) && StringUtils.isBlank(sftpPassword)) { + return null; + } + + return dsProperties; + } + public SFTPConfig getSftpConf(DDsProperties dbCfg) { + SFTPConfig sftpDetails = new SFTPConfig(); + sftpDetails.setUsername(dbCfg.getSftpUsername()); + sftpDetails.setPassword(dbCfg.getSftpPassword()); + sftpDetails.setPort(dbCfg.getSftpPort()); + sftpDetails.setHost(dbCfg.getSftpHost()); + sftpDetails.setPoolConfig(sftpConfigProperties.getPoolConfig()); + return sftpDetails; + } + + @Async + public void doStartTaskStatusForNormal(String taskNo) { + try { + BaseTime timeVO = BaseManagerUtils.getSystemTime(); + Date time = timeVO.getDate(); + TblDatacenterTask task = datacenterTaskStatusService.getDatacenterTaskDetail(taskNo); + if(StringUtils.isBlank(task.getRemoteFileName()) && StringUtils.isBlank(task.getRemoteTableSql())) { + return; + } + //转换时间 + Map datemap = SyncDatacenterUtils.convertQueryDateParam(time, task.getDefaultQueryJson()); + TblDatacenterTaskStatusVO taskStatus = SyncDatacenterUtils.createTaskStatusVO(time, task, datemap); + int num = datacenterTaskStatusService.doCreateDatacenterTaskStatus(taskStatus,task); + if(num==0) { + return; + } + LOGGER.info("【数据同步】doStartTaskStatusForNormal>>TaskNo={},TaskConditions={},Date={}",taskStatus.getTaskNo() + ,taskStatus.getTaskConditions(),datemap.get("dateTime")); + executeOneTask(taskStatus, datemap); + }catch (Exception e) { + LOGGER.info("【数据同步】执行任务异常>>{}",taskNo,e); + } + } + /** + * 执行一个任务 + * @param taskStatus + * @param datemap + */ + public void executeOneTask(TblDatacenterTaskStatusVO taskStatus,Map datemap) { + TblDatacenterTask task = taskStatus.getDatacenterTask(); + DDsProperties remoteDbCfg = getDataSourceConf(task.getRemoteDbName()); + DDsProperties localDbCfg = getDataSourceConf(task.getLocalDbName()); + SFTPConfig remoteSftpCfg = getSftpConf(remoteDbCfg); + + boolean finishFlag=true; + //内部报错不影响任务状态处理 + try { + if(remoteDbCfg==null) { + throw new RuntimeException("Database not configured>>dbName="+task.getRemoteDbName()); + } + if(localDbCfg==null) { + throw new RuntimeException("Database not configured>>dbName="+task.getLocalDbName()); + } + + ReaderWriterHelper readerWriterHelper=new ReaderWriterHelper(); + readerWriterHelper.setSingleWriteNumber(remoteDbCfg.getSingleWriteNumber()); + + boolean readSftpFlag=StringUtils.isNotBlank(task.getRemoteFileName());//默认是读数据库 + boolean writeSftpFlag=false;//默认写是数据库 + //读取 + if(readSftpFlag) { + String sourcePath=(remoteDbCfg.getReadWritePath()+"/"+taskStatus.getLoadFile()).replaceAll("//+", "/"); + SshClientPool sshPool = SshClientHostPool.getHostPool(remoteSftpCfg);//ssh连接池 + readerWriterHelper.setHasTitleFlag(StringUtils.isBlank(task.getRemoteFileFields()));//为空则使用文件标题 + readerWriterHelper.setFieldSeparator(remoteDbCfg.getFieldSeparator()); + readerWriterHelper.createSftpReader(task.getRemoteDbName(), sshPool,sourcePath); + }else { + readerWriterHelper.createJdbcReader(task.getRemoteDbName(),remoteDbCfg); + } + //写入,目前只有数据库 + readerWriterHelper.createJdbcWriter(task.getLocalDbName(),localDbCfg); + + //类型标志 + readerWriterHelper.setReadSftpFlag(readSftpFlag); + readerWriterHelper.setWriteSftpFlag(writeSftpFlag); + + boolean successFlag = readerWriterHelper.writeData(taskStatus, datemap); + if(!successFlag) { + finishFlag=false; + } + taskStatus.setReadCount(datemap.get("factReadCount")); + }catch(Exception e) { + LOGGER.info("executeOneTask error>>{}",e.getMessage(),e); + finishFlag=false; + }finally { + LOGGER.info("executeOneTask>>finishFlag={}",finishFlag); + if(finishFlag) { + datacenterTaskStatusService.doFinishDatacenterTaskStatus(taskStatus); + }else { + datacenterTaskStatusService.doUnfinishDatacenterTaskStatus(taskStatus); + } + } + } + + + @Async + public void doRestartTaskStatusForError(List errorTasks) { + //拆分为多组执行 + List> list = SyncDatacenterUtils.split(errorTasks, 3); + for(List taskStatus:list) { + BaseTime timeVO = BaseManagerUtils.getSystemTime(); + executorBatchAsyncTask(timeVO,taskStatus); + } + } + + /** + * 一次执行多个任务 + */ + public void executorBatchAsyncTask(BaseTime timeVO,List tasklist) { + final ExecutorService executor = Executors.newFixedThreadPool(tasklist.size()); + try{ + // 创建CompletableFuture + List> futures = tasklist.stream() + .map(taskStatus -> CompletableFuture.runAsync(() -> { + try { + //超过三个的都需要额外的等待时间,不记录在总时间里面 + taskStatus.setUpdateTime(timeVO.getDate()); + taskStatus.setCurrStartDate(timeVO.getDate()); + //使用保存下来的时间 + Date date = SyncDatacenterUtils.convertStr2Date(taskStatus.getLoadTime()); + Map datemap = SyncDatacenterUtils.convertQueryDateParam(date, null); + LOGGER.info("【数据同步】executorBatchAsyncTask>>TaskNo={},TaskConditions={},Date={}",taskStatus.getTaskNo() + ,taskStatus.getTaskConditions(),datemap.get("dateTime")); + executeOneTask(taskStatus, datemap); + }catch (Exception e) { + LOGGER.info("【数据同步】executorBatchAsyncTask error>>{}",taskStatus.getTaskNo(),e); + } + },executor)) + .collect(Collectors.toList()); + CompletableFuture allFutures = CompletableFuture.allOf(futures.toArray(new CompletableFuture[0])); + //等待所有异步操作都完成 + //allFutures.thenRun(() -> { System.out.println("All tasks have completed.");}).join(); + allFutures.get(); + }catch (Exception e) { + LOGGER.info("【数据同步】executorBatchAsyncTask error>>",e); + }finally { + if (executor != null){ + executor.shutdown(); + } + } + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/BaseManagerUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/BaseManagerUtils.java new file mode 100644 index 00000000..94a27f41 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/BaseManagerUtils.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptccc.agile.common; + +import java.time.Instant; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; +import java.util.Date; +import java.util.Locale; +import java.util.UUID; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.jiuyv.sptccc.agile.business.mapper.ISysTimeBaseMapper; +import com.jiuyv.sptccc.agile.common.model.BaseTime; +import com.jiuyv.sptccc.agile.common.utils.SpringUtils; +/** + * 某些普遍方法再次封装,减少引入快速使用 + * @author zhouliang + * + */ +public class BaseManagerUtils { + + protected static final Logger LOGGER = LoggerFactory.getLogger(BaseManagerUtils.class); + + private BaseManagerUtils() { + throw new IllegalStateException("Utility class"); + } + + /** 获取系统的时间*/ + public static BaseTime getSystemTime() { + //强行从数据库获取,如果没有也不报错 + BaseTime timeVO = null; + try{ + ISysTimeBaseMapper tmapper=SpringUtils.getBean(ISysTimeBaseMapper.class); + timeVO=tmapper.selectSysCurrentTime(); + }catch (Exception e) { + //正常是不会走到这里面的,只是兼容写法而已 + LOGGER.error("Exception in obtaining database time。Using System Time Substitution"); + timeVO = new BaseTime(); + timeVO.setUtcTime(Instant.now()); + } + timeVO.setDate(Date.from(timeVO.getUtcTime())); + timeVO.setDateTime(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss") + .withLocale(Locale.SIMPLIFIED_CHINESE).withZone(ZoneId.of(timeVO.getTimeZone())).format(timeVO.getUtcTime())); + timeVO.setDateDay(timeVO.getDateTime().substring(0, 10)); + return timeVO; + } + + public static String getNewRecToken() { + return UUID.randomUUID().toString().substring(0,8); + } + } \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/constant/Constants.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/constant/Constants.java new file mode 100644 index 00000000..34267979 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/constant/Constants.java @@ -0,0 +1,12 @@ +package com.jiuyv.sptccc.agile.common.constant; + +/** + * 通用常量信息 + * + * @author admin + */ +public class Constants { + + /** 一个固定的密钥,用于配置文件内容加密/解密 */ + public static final String SM4_SECERT_KEY = "a14751855ccb428d982c33dfa3535a57"; +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/exception/ServiceException.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/exception/ServiceException.java new file mode 100644 index 00000000..8eef05d0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/exception/ServiceException.java @@ -0,0 +1,59 @@ +package com.jiuyv.sptccc.agile.common.exception; + +/** + * 业务异常 + * + * @author admin + */ +public final class ServiceException extends RuntimeException +{ + private static final long serialVersionUID = 1L; + + /** + * 错误码 + */ + private Integer code; + + /** + * 错误提示 + */ + private String message; + + /** + * 错误明细,内部调试错误 + * + * 和 {@link CommonResult#getDetailMessage()} 一致的设计 + */ + private String detailMessage; + + /** + * 空构造方法,避免反序列化问题 + */ + public ServiceException() + { + } + + public ServiceException(String message) + { + this.message = message; + } + + + + public String getDetailMessage() + { + return detailMessage; + } + + public String getMessage() + { + return message; + } + + public Integer getCode() + { + return code; + } + + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/exception/UtilException.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/exception/UtilException.java new file mode 100644 index 00000000..12b883d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/exception/UtilException.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptccc.agile.common.exception; + +/** + * 工具类异常 + * + * @author admin + */ +public class UtilException extends RuntimeException +{ + private static final long serialVersionUID = 8247610319171014183L; + + public UtilException(Throwable e) + { + super(e.getMessage(), e); + } + + public UtilException(String message) + { + super(message); + } + + public UtilException(String message, Throwable throwable) + { + super(message, throwable); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/model/BaseTime.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/model/BaseTime.java new file mode 100644 index 00000000..cce729d0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/model/BaseTime.java @@ -0,0 +1,81 @@ +package com.jiuyv.sptccc.agile.common.model; + +import java.time.Instant; +import java.util.Date; + +/** + * 时间对象 + * @author zhouliang + * + */ +public class BaseTime implements java.io.Serializable { + + /** default Serial Version UID*/ + private static final long serialVersionUID = 1L; + + /** 当前时区 */ + private String timeZone ="+08:00"; + + /** 当前时区 YYYY-MM-DD */ + private String dateDay; + + /** 当前时区 YYYY-MM-DD HH:MM:SS */ + private String dateTime; + + /** 当前时区日期 */ + private Date date; + + /** UTC-0 带时区时间 */ + private Instant utcTime; + + /** UTC-0 带时区时间 */ + private String utcTimeStr; + + public String getTimeZone() { + return timeZone; + } + + public void setTimeZone(String timeZone) { + this.timeZone = timeZone; + } + + public String getDateDay() { + return dateDay; + } + + public void setDateDay(String dateDay) { + this.dateDay = dateDay; + } + + public String getDateTime() { + return dateTime; + } + + public void setDateTime(String dataTime) { + this.dateTime = dataTime; + } + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + + public Instant getUtcTime() { + return utcTime; + } + + public void setUtcTime(Instant utcTime) { + this.utcTime = utcTime; + } + + public String getUtcTimeStr() { + return utcTimeStr; + } + + public void setUtcTimeStr(String utcTimeStr) { + this.utcTimeStr = utcTimeStr; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/JsonUtil.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/JsonUtil.java new file mode 100644 index 00000000..61c711fc --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/JsonUtil.java @@ -0,0 +1,108 @@ +package com.jiuyv.sptccc.agile.common.utils; + +import java.text.SimpleDateFormat; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.core.JsonGenerator.Feature; +import com.fasterxml.jackson.core.JsonParser; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; + +/** + * + * @author zhouliang + * + */ +public abstract class JsonUtil { + + /** + * The Constant LOGGER. + */ + private static final Logger LOGGER = LoggerFactory.getLogger(JsonUtil.class); + + private JsonUtil() { + throw new IllegalStateException("Utility class"); + } + + /** + * The object mapper. + */ + private static ObjectMapper objectMapper = new ObjectMapper(); + + static { + objectMapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES); + objectMapper.setSerializationInclusion(Include.NON_NULL); + objectMapper.configure(Feature.WRITE_BIGDECIMAL_AS_PLAIN, true); + objectMapper.setDateFormat(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")); + objectMapper.configure(JsonParser.Feature.ALLOW_SINGLE_QUOTES, true);//允许单引号 + } + + public static ObjectMapper getObjectMapper() { + return objectMapper; + } + /** + * 转为json字符串 + * + * @param object the object + * @return the string + */ + public static String toJSONString(Object object) { + try { + return objectMapper.writeValueAsString(object); + } catch (Exception e) { + LOGGER.error("convert failed", e); + return ""; + } + } + + /** + * json字符串转为对象 + * @param + * @param json + * @param clz + * @return + */ + public static T json2Bean(String json, Class clz) { + try { + return objectMapper.readValue(json, clz); + } catch (Exception e) { + LOGGER.error("convert failed", e); + return null; + } + } + + /** + * json字符转ObjectNode + * @param json + * @return + */ + public static ObjectNode parseObject(String json) { + try { + return (ObjectNode) objectMapper.readTree(json); + } catch (Exception e) { + LOGGER.error("convert failed", e); + return null; + } + } + + /** + * json字符串转为对象 + * @param + * @param json + * @param clz + * @return + */ + public static T json2Bean(String json, TypeReference clz) { + try { + return objectMapper.readValue(json, clz); + } catch (Exception e) { + LOGGER.error("convert failed", e); + return null; + } + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/ServletUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/ServletUtils.java new file mode 100644 index 00000000..7197b74c --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/ServletUtils.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptccc.agile.common.utils; + +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; + +/** + * 客户端工具类 + * + * @author admin + */ +public class ServletUtils +{ + /** + * 内容编码 + * + * @param str 内容 + * @return 编码后的内容 + */ + public static String urlEncode(String str) + { + try + { + return URLEncoder.encode(str, StandardCharsets.UTF_8.name()); + } + catch (UnsupportedEncodingException e) + { + return ""; + } + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/Sm4Util.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/Sm4Util.java new file mode 100644 index 00000000..377d1169 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/Sm4Util.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptccc.agile.common.utils; + +import java.security.InvalidKeyException; +import java.security.Key; +import java.security.NoSuchAlgorithmException; +import java.security.NoSuchProviderException; +import java.security.Security; + +import javax.crypto.BadPaddingException; +import javax.crypto.Cipher; +import javax.crypto.IllegalBlockSizeException; +import javax.crypto.NoSuchPaddingException; +import javax.crypto.spec.SecretKeySpec; + +import org.apache.commons.codec.binary.Base64; +import org.apache.commons.codec.binary.Hex; +import org.bouncycastle.jce.provider.BouncyCastleProvider; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:04 + */ +public class Sm4Util { + public static final String ALGORITHM_NAME = "SM4"; + public static final String ALGORITHM_NAME_ECB_PADDING = "SM4/ECB/PKCS7Padding"; + public static final String ALGORITHM_NAME_ECB_NOPADDING = "SM4/ECB/NoPadding"; + public static final String ALGORITHM_NAME_CBC_PADDING = "SM4/CBC/PKCS7Padding"; + public static final String ALGORITHM_NAME_CBC_NOPADDING = "SM4/CBC/NoPadding"; + + /** + * SM4算法目前只支持128位(即密钥16字节) + */ + public static final int DEFAULT_KEY_SIZE = 128; + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + public static byte[] decrypt_ECB_Padding(byte[] key, byte[] cipherText) + throws IllegalBlockSizeException, BadPaddingException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.DECRYPT_MODE, key); + return cipher.doFinal(cipherText); + } + + private static Cipher generateECBCipher(String algorithmName, int mode, byte[] key) + throws NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException, + InvalidKeyException { + Cipher cipher = Cipher.getInstance(algorithmName, BouncyCastleProvider.PROVIDER_NAME); + Key sm4Key = new SecretKeySpec(key, ALGORITHM_NAME); + cipher.init(mode, sm4Key); + return cipher; + } + + + public static String decryptEcb(String key, String text) throws Exception { + return new String(Sm4Util.decrypt_ECB_Padding(Hex.decodeHex(key), Base64.decodeBase64((text)))); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/SpringUtils.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/SpringUtils.java new file mode 100644 index 00000000..791850b6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/SpringUtils.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptccc.agile.common.utils; + +import org.springframework.beans.BeansException; +import org.springframework.beans.factory.config.BeanFactoryPostProcessor; +import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; +import org.springframework.stereotype.Component; + +/** + * spring工具类 方便在非spring管理环境中获取bean + * + * @author admin + */ +@Component +public final class SpringUtils implements BeanFactoryPostProcessor, ApplicationContextAware { + /** Spring应用上下文环境 */ + private static ConfigurableListableBeanFactory beanFactory; + + private static ApplicationContext applicationContext; + + @Override + public void postProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) throws BeansException { + setBeanFactory(beanFactory); + } + + public static void setBeanFactory(ConfigurableListableBeanFactory beanFactory) { + SpringUtils.beanFactory = beanFactory; + } + + @Override + public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { + setContext(applicationContext); + } + + public static void setContext(ApplicationContext applicationContext) { + SpringUtils.applicationContext = applicationContext; + } + + /** + * 获取对象 + * + * @param name + * @return Object 一个以所给名字注册的bean的实例 + * @throws org.springframework.beans.BeansException + * + */ + @SuppressWarnings("unchecked") + public static T getBean(String name) throws BeansException { + return (T) beanFactory.getBean(name); + } + + /** + * 获取类型为requiredType的对象 + * + * @param clz + * @return + * @throws org.springframework.beans.BeansException + * + */ + public static T getBean(Class clz) throws BeansException { + T result = (T) beanFactory.getBean(clz); + return result; + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SFTPChannel.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SFTPChannel.java new file mode 100644 index 00000000..ccf5dfba --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SFTPChannel.java @@ -0,0 +1,170 @@ +package com.jiuyv.sptccc.agile.common.utils.sftp; + +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.util.ArrayList; +import java.util.List; +import java.util.Properties; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.jcraft.jsch.Channel; +import com.jcraft.jsch.ChannelExec; +import com.jcraft.jsch.ChannelSftp; +import com.jcraft.jsch.JSch; +import com.jcraft.jsch.JSchException; +import com.jcraft.jsch.Session; +import com.jiuyv.sptccc.agile.common.exception.UtilException; +import com.jiuyv.sptccc.agile.common.utils.sftp.model.SFTPConfig; + +/** + * SFTP构建 + * 自己使用时记得手动关闭 + * @author zhouliang + * + */ +public class SFTPChannel { + private Session session = null; + private Channel channel = null; + + private static final Logger LOG = LoggerFactory.getLogger(SFTPChannel.class); + + public Session getSession() { + return session; + } + public Channel getChannel() { + return channel; + } + + /** + * 服务器连接对象 + * @param sftpDetails + * @param timeout + * @return + * @throws JSchException + */ + public ChannelSftp getChannel(SFTPConfig sftpDetails, int timeout) throws JSchException { + setConnect(sftpDetails, timeout); + + channel = session.openChannel("sftp"); // 打开SFTP通道 + channel.connect(); // 建立SFTP通道的连接 + LOG.debug("Connected successfully to ftpHost = " + sftpDetails.getHost() + ",as ftpUserName = " + sftpDetails.getUsername()); + return (ChannelSftp) channel; + } + /** + * 在已存在的连接打开通道 + * @return + * @throws JSchException + */ + public ChannelSftp getChannelNew(final Session session) throws JSchException { + this.session = session; + this.channel = session.openChannel("sftp"); // 打开SFTP通道 + this.channel.connect(); // 建立SFTP通道的连接 + LOG.debug("Connected successfully to ftpHost"); + return (ChannelSftp) channel; + } + public void setConnect(SFTPConfig sftpDetails, int timeout) throws JSchException { + String ftpHost = sftpDetails.getHost(); + int ftpPort = sftpDetails.getPort(); + String ftpUserName = sftpDetails.getUsername(); + String ftpPassword = sftpDetails.getPassword(); + + JSch jsch = new JSch(); // 创建JSch对象 + session = jsch.getSession(ftpUserName, ftpHost, ftpPort); // 根据用户名,主机ip,端口获取一个Session对象 + if (ftpPassword != null) { + session.setPassword(ftpPassword); // 设置密码 + } + Properties config = new Properties(); + config.put("StrictHostKeyChecking", "no"); + config.put("PreferredAuthentications", "password"); + config.put("X11Forwarding", "no"); + session.setConfig(config); // 为Session对象设置properties + session.setTimeout(timeout); // 设置timeout时间 + session.connect(); // 通过Session建立链接 + } + + /** + * 关闭连接 + */ + public void closeChannel() { + if (channel != null) { + channel.disconnect(); + } + if (session != null) { + session.disconnect(); + } + LOG.debug("Channel connection close!"); + } + /** + * 关闭连接 + */ + public void closeInnerChannel() { + if (channel != null) { + channel.disconnect(); + } + } + + /** + * 提交单条命令,执行并解析结果 + * 每次使用独立exec,(不用shell,处理结束麻烦) + * @param shell + * @param command + * @return + * @throws IOException + * @throws JSchException + */ + public List commitCurrShellCmd(String command) throws IOException, JSchException { + return commitCurrShellCmd(command, true); + } + public List commitCurrShellCmd(String command,boolean errFlag) throws IOException, JSchException { + LOG.info("commitCurrShellCmd command>> "+command);//为了测试看 + List result=new ArrayList<>(); + + ChannelExec shell=(ChannelExec) session.openChannel("exec"); + shell.setPtyType("dumb");//禁用颜色 + shell.setCommand(command); + shell.connect(); + + InputStream in = shell.getInputStream(); + InputStream errin = shell.getErrStream(); + try(BufferedReader reader = new BufferedReader(new InputStreamReader(in)); + BufferedReader reader2 = new BufferedReader(new InputStreamReader(errin));) { + String line=null; + while ((line = reader.readLine())!=null) { +// if(LOG.isDebugEnabled()) { +// LOG.info("commitCurrShellCmd line>>"+line);//为了测试看 +// } + if(StringUtils.isNotBlank(line)&& !line.contains("]$") + && !line.startsWith("<")) { + result.add(line); + } + } + String errormsg=null; + String line2=null; + while (StringUtils.isNotBlank((line2 = reader2.readLine()))) { +// if(LOG.isDebugEnabled()) { +// LOG.info("commitCurrShellCmd line error>>"+line2);//为了测试看 +// } + errormsg=line2; + } + if(StringUtils.isNotBlank(errormsg)) { + LOG.info("commitCurrShellCmd line error>>"+errormsg); + if(errFlag) { + throw new UtilException("Command execution exception"); + }else { + result.add(errormsg);//收集错误,直接返回 + } + } + }catch (Exception e) { + LOG.info("commitCurrShellCmd error{}",e.getMessage(),e); + }finally { + shell.disconnect(); + } + LOG.info("commitCurrShellCmd result>>\n"+StringUtils.join(result,"\n"));//为了测试看 + return result; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SshClientFactory.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SshClientFactory.java new file mode 100644 index 00000000..df6201e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SshClientFactory.java @@ -0,0 +1,74 @@ +package com.jiuyv.sptccc.agile.common.utils.sftp; +import org.apache.commons.lang3.StringUtils; +import org.apache.commons.pool2.PooledObject; +import org.apache.commons.pool2.PooledObjectFactory; +import org.apache.commons.pool2.impl.DefaultPooledObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.jcraft.jsch.JSch; +import com.jcraft.jsch.JSchException; +import com.jcraft.jsch.Session; +import com.jiuyv.sptccc.agile.common.utils.sftp.model.SFTPConfig; + +/** + * ssh连接对象创建/销毁工厂 + */ +public class SshClientFactory implements PooledObjectFactory{ + + private static final Logger LOG = LoggerFactory.getLogger(SshClientFactory.class); + + private SFTPConfig config; + + public SshClientFactory(SFTPConfig sshClientConfig){ + this.config = sshClientConfig; + } + + @Override + public PooledObject makeObject() throws Exception { + JSch jSch = new JSch(); +// if (!StringUtils.isEmpty(config.getRsaPath())){ +// jSch.addIdentity(config.getRsaPath()); +// } + Session session = jSch.getSession(config.getUsername(),config.getHost(),config.getPort()); + if (!StringUtils.isEmpty(config.getPassword())){ + session.setPassword(config.getPassword()); + } + session.setConfig("StrictHostKeyChecking", "no"); + session.setConfig("PreferredAuthentications", "password"); + session.setConfig("X11Forwarding", "no"); + session.setTimeout(120000); // 设置timeout时间 + LOG.info("SshClientFactory init ssh client:{},{}",config.getHost(), config.getUsername()); + return new DefaultPooledObject<>(session); + } + + @Override + public void destroyObject(PooledObject pooledObject) throws Exception { + Session session = pooledObject.getObject(); + if (session != null){ + session.disconnect(); + } + } + + @Override + public boolean validateObject(PooledObject pooledObject) { + Session session = pooledObject.getObject(); + return session.isConnected(); + } + + @Override + public void activateObject(PooledObject pooledObject) throws Exception { + Session session = pooledObject.getObject(); + try { + session.connect(); + }catch (JSchException e) { + //忽略错误 + //LOG.info("activateObject>>",e); + } + } + + @Override + public void passivateObject(PooledObject pooledObject) throws Exception { + // 忽略 + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SshClientHostPool.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SshClientHostPool.java new file mode 100644 index 00000000..f9b150e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SshClientHostPool.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptccc.agile.common.utils.sftp; + +import java.util.HashMap; +import java.util.Map; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.jiuyv.sptccc.agile.common.utils.sftp.model.SFTPConfig; + + +/** + * 不同的主机对应不同的ssh连接池 + */ +public class SshClientHostPool { + private static final Logger LOG = LoggerFactory.getLogger(SshClientFactory.class); + + private static Map poolMap = new HashMap<>(); + + public static SshClientPool getHostPool(SFTPConfig config){ + SshClientPool clientPool = poolMap.get(config.getHost()+"-"+config.getUsername()); + if (clientPool==null){ + synchronized (poolMap){ + //当两个线程都来到synchronized这一行时,需要再代码块再次进行判断,否则会再次新建 + clientPool = poolMap.get(config.getHost()+"-"+config.getUsername()); + if (clientPool==null){ + LOG.info("SSH client does not exist,create :{}", config.getHost()+"-"+config.getUsername()); + clientPool = new SshClientPool(config); + poolMap.put(config.getHost()+"-"+config.getUsername(), clientPool); + } + } + } + return clientPool; + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SshClientPool.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SshClientPool.java new file mode 100644 index 00000000..ba85c7e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/SshClientPool.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptccc.agile.common.utils.sftp; + +import org.apache.commons.pool2.impl.GenericObjectPool; +import org.apache.commons.pool2.impl.GenericObjectPoolConfig; + +import com.jcraft.jsch.Session; +import com.jiuyv.sptccc.agile.common.utils.sftp.model.SFTPConfig; + +/** + * ssh连接对象池 + */ +public class SshClientPool { + private GenericObjectPool pool; + + public SshClientPool(SFTPConfig sshClientConfig){ + init(sshClientConfig); + } + + public void init(SFTPConfig sshClientConfig){ + SshClientFactory factory = new SshClientFactory(sshClientConfig); + GenericObjectPoolConfig poolConfig = sshClientConfig.getPoolConfig(); + pool = new GenericObjectPool<>(factory, poolConfig!=null?poolConfig:new GenericObjectPoolConfig<>()); + } + + /** + * 获取会话 + * @return + * @throws Exception + */ + public Session getSession() throws Exception{ + return pool.borrowObject(); + } + + /** + * 归还会话 + * @param session + */ + public void returnSession(Session session){ + try { + if (session != null){ + pool.returnObject(session); + } + } catch (Exception e) { + //无需错误 + } + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/model/SFTPConfig.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/model/SFTPConfig.java new file mode 100644 index 00000000..351450df --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/common/utils/sftp/model/SFTPConfig.java @@ -0,0 +1,126 @@ +package com.jiuyv.sptccc.agile.common.utils.sftp.model; + +import org.apache.commons.pool2.impl.GenericObjectPoolConfig; + +import com.jcraft.jsch.Session; + +/** + * sftp配置类 + * @author zhouliang + * + */ +public class SFTPConfig implements java.io.Serializable{ + /** + * + */ + private static final long serialVersionUID = 1L; + + /** + * 主机ip + */ + private String host; + /** + * 端口 + */ + private int port=22; + /** + * 用户账号 + */ + private String username; + /** + * 密码 + */ + private String password; + + /** + * location + */ + private int location; + + /** 连接池配置*/ + private transient GenericObjectPoolConfig poolConfig; + + /** + * @return the host + */ + public String getHost() { + return host; + } + + /** + * @param host the host to set + */ + public void setHost(String host) { + this.host = host; + } + + /** + * @return the port + */ + public int getPort() { + return port; + } + + /** + * @param port the port to set + */ + public void setPort(int port) { + this.port = port; + } + + /** + * @return the username + */ + public String getUsername() { + return username; + } + + /** + * @param username the username to set + */ + public void setUsername(String username) { + this.username = username; + } + + /** + * @return the password + */ + public String getPassword() { + return password; + } + + /** + * @param password the password to set + */ + public void setPassword(String password) { + this.password = password; + } + + /** + * @return the location + */ + public int getLocation() { + return location; + } + + /** + * @param location the location to set + */ + public void setLocation(int location) { + this.location = location; + } + + /** + * @return the poolConfig + */ + public GenericObjectPoolConfig getPoolConfig() { + return poolConfig; + } + + /** + * @param poolConfig the poolConfig to set + */ + public void setPoolConfig(GenericObjectPoolConfig poolConfig) { + this.poolConfig = poolConfig; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/ActuatorSecurityConfig.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/ActuatorSecurityConfig.java new file mode 100644 index 00000000..8073b207 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/ActuatorSecurityConfig.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptccc.agile.framework.config; + + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.env.Environment; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; + +@Configuration +@EnableWebSecurity +public class ActuatorSecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + Environment env; + + @Override + protected void configure(HttpSecurity security) throws Exception { + + String contextPath = env.getProperty("management.endpoints.web.base-path"); + if(StringUtils.isEmpty(contextPath)) { + contextPath = "/actuator"; + } + security.csrf().disable(); + security.authorizeRequests() + .antMatchers("/**"+contextPath+"/serviceregistry","/**"+contextPath+"/refresh") + .access("hasIpAddress(\"127.0.0.1\")") + .antMatchers("/**"+contextPath+"/**") + .authenticated() + .anyRequest() + .permitAll() + .and() + .httpBasic(); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/ApplicationConfig.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/ApplicationConfig.java new file mode 100644 index 00000000..0976d19d --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/ApplicationConfig.java @@ -0,0 +1,28 @@ +package com.jiuyv.sptccc.agile.framework.config; + +import java.util.TimeZone; + +import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.EnableAspectJAutoProxy; + +/** + * 程序注解配置 + * + * @author admin + */ +@Configuration +// 表示通过aop框架暴露该代理对象,AopContext能够访问 +@EnableAspectJAutoProxy(exposeProxy = true) +public class ApplicationConfig +{ + /** + * 时区配置 + */ + @Bean + public Jackson2ObjectMapperBuilderCustomizer jacksonObjectMapperCustomization() + { + return jacksonObjectMapperBuilder -> jacksonObjectMapperBuilder.timeZone(TimeZone.getDefault()); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/AsyncConfig.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/AsyncConfig.java new file mode 100644 index 00000000..19fc37c0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/AsyncConfig.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptccc.agile.framework.config; + +import java.util.concurrent.Executor; +import java.util.concurrent.ThreadPoolExecutor; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableAsync; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; +import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler; + +@EnableAsync +@Configuration +public class AsyncConfig { + + @Bean("taskExecutor") + public Executor taskExecutor() { + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + executor.setCorePoolSize(5); + executor.setMaxPoolSize(30); + executor.setQueueCapacity(100); + executor.setKeepAliveSeconds(30); + executor.setThreadNamePrefix("pool-task-service-"); + executor.setWaitForTasksToCompleteOnShutdown(true); + executor.setAwaitTerminationSeconds(60); + executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); + executor.initialize(); + return executor; + } + + @Bean(name = "delayAsyncPoolTaskScheduler") + public ThreadPoolTaskScheduler delayAsyncPoolTaskScheduler() { + ThreadPoolTaskScheduler threadPoolTaskScheduler = new ThreadPoolTaskScheduler(); + //线程池维护线程的数量 + threadPoolTaskScheduler.setPoolSize(20); + // 线程名称 + threadPoolTaskScheduler.setThreadNamePrefix("pool-task-scheduler-"); + // 等待时长 + threadPoolTaskScheduler.setAwaitTerminationSeconds(60); + // 调度器shutdown被调用时等待当前被调度的任务完成 + threadPoolTaskScheduler.setWaitForTasksToCompleteOnShutdown(true); + threadPoolTaskScheduler.initialize(); + return threadPoolTaskScheduler; + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/ConsoleConfig.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/ConsoleConfig.java new file mode 100644 index 00000000..36be816f --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/ConsoleConfig.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptccc.agile.framework.config; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +/** + * 总体的一些配置参数 + * @author zhouliang + * @date 2024年8月14日 + */ +@Component +@ConfigurationProperties(prefix = "console") +public class ConsoleConfig { + + /** 版本 */ + private static String version; + //是否关闭注册的定时任务 + private static boolean taskClose=false; + //要清理数据源 + private static String clearDs; + //多久清理数据源的文件 + private static int clearDay=7; + + + public static String getVersion() { + return version; + } + public void setVersion(String version) { + setVersion2(version); + } + public static void setVersion2(String version) { + ConsoleConfig.version = version; + } + + public static boolean getTaskClose() { + return taskClose; + } + public void setTaskClose(boolean taskClose) { + setTaskClose2(taskClose); + } + public static void setTaskClose2(boolean taskClose) { + ConsoleConfig.taskClose = taskClose; + } + + public static String getClearDs() { + return clearDs; + } + public static void setClearDs(String clearDs) { + setClearDs2(clearDs); + } + public static void setClearDs2(String clearDs) { + ConsoleConfig.clearDs = clearDs; + } + + public static int getClearDay() { + return clearDay; + } + public void setClearDay(int clearDay) { + setClearDay2(clearDay); + } + public static void setClearDay2(int clearDay) { + ConsoleConfig.clearDay = clearDay; + } + +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/SftpConfigProperties.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/SftpConfigProperties.java new file mode 100644 index 00000000..97e2a0df --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/SftpConfigProperties.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptccc.agile.framework.config; + +import org.apache.commons.pool2.impl.GenericObjectPoolConfig; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +import com.jcraft.jsch.Session; + +/** + * sftp配置类 + * @author zhouliang + * + */ +@Component +@ConfigurationProperties(prefix = "filesftp") +public class SftpConfigProperties implements java.io.Serializable{ + /** + * + */ + private static final long serialVersionUID = 1L; + + + /** 连接池配置*/ + private transient GenericObjectPoolConfig poolConfig; + + /** + * @return the poolConfig + */ + public GenericObjectPoolConfig getPoolConfig() { + return poolConfig; + } + + /** + * @param poolConfig the poolConfig to set + */ + public void setPoolConfig(GenericObjectPoolConfig poolConfig) { + this.poolConfig = poolConfig; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/scheduled/CronTaskRegistrar.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/scheduled/CronTaskRegistrar.java new file mode 100644 index 00000000..afe61a71 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/scheduled/CronTaskRegistrar.java @@ -0,0 +1,59 @@ +package com.jiuyv.sptccc.agile.framework.config.scheduled; + +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +import org.springframework.beans.factory.DisposableBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler; +import org.springframework.scheduling.config.CronTask; +import org.springframework.stereotype.Component; + +@Component +public class CronTaskRegistrar implements DisposableBean { + + private final Map scheduledTasks = new ConcurrentHashMap<>(20); + + @Autowired + private ThreadPoolTaskScheduler delayAsyncPoolTaskScheduler; + + public ThreadPoolTaskScheduler getScheduler() { + return this.delayAsyncPoolTaskScheduler; + } + + public void addCronTask(String jobId, Runnable task, String cronExpression) { + addCronTask(jobId, new CronTask(task, cronExpression)); + } + + public void addCronTask(String jobId, CronTask cronTask) { + if (cronTask != null) { + Runnable task = cronTask.getRunnable(); + if (this.scheduledTasks.containsKey(jobId)) { + removeCronTask(jobId); + } + + this.scheduledTasks.put(jobId, scheduleCronTask(cronTask)); + } + } + + public void removeCronTask(String jobId) { + ScheduledTask scheduledTask = this.scheduledTasks.remove(jobId); + if (scheduledTask != null) + scheduledTask.cancel(); + } + + public ScheduledTask scheduleCronTask(CronTask cronTask) { + ScheduledTask scheduledTask = new ScheduledTask(); + scheduledTask.future = delayAsyncPoolTaskScheduler.schedule(cronTask.getRunnable(), cronTask.getTrigger()); + return scheduledTask; + } + + + @Override + public void destroy() { + for (ScheduledTask task : this.scheduledTasks.values()) { + task.cancel(); + } + this.scheduledTasks.clear(); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/scheduled/ScheduledTask.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/scheduled/ScheduledTask.java new file mode 100644 index 00000000..e0fec892 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/config/scheduled/ScheduledTask.java @@ -0,0 +1,17 @@ +package com.jiuyv.sptccc.agile.framework.config.scheduled; + +import java.util.concurrent.ScheduledFuture; + +public final class ScheduledTask { + + volatile ScheduledFuture future; + /** + * 取消定时任务 + */ + public void cancel() { + ScheduledFuture future = this.future; + if (future != null) { + future.cancel(true); + } + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/web/exception/GlobalExceptionHandler.java b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/web/exception/GlobalExceptionHandler.java new file mode 100644 index 00000000..4e74b2f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/java/com/jiuyv/sptccc/agile/framework/web/exception/GlobalExceptionHandler.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptccc.agile.framework.web.exception; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; + +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.exception.ServiceException; + +/** + * 全局异常处理器 + * + * @author admin + */ +@RestControllerAdvice +public class GlobalExceptionHandler { + private static final Logger log = LoggerFactory.getLogger(GlobalExceptionHandler.class); + + /** + * 业务异常 + */ + @ExceptionHandler({ServiceException.class}) + public R handleServiceException(ServiceException e, HttpServletRequest request, HttpServletResponse response) { + log.error(e.getMessage(), e); + Integer code = e.getCode(); + + return code!=null ? R.fail(code, e.getMessage()) : R.fail(e.getMessage()); + } + + /** + * 系统异常 + */ + @ExceptionHandler(Exception.class) + public R handleException(Exception e, HttpServletRequest request, HttpServletResponse response) { + response.setStatus(301); + + String requestURI = request.getRequestURI(); + log.error("请求地址'{}',发生系统异常.", requestURI, e); + return R.fail(e.getMessage()); + } +} diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/application-dev.yml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/application-dev.yml new file mode 100644 index 00000000..21b4d97b --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/application-dev.yml @@ -0,0 +1,75 @@ +# 项目相关配置 +console: + # 版本 + version: 1.0 + taskClose: false #是否关闭定时任务注册 + clearDs: sjztHiveDs #要清理的数据源,逗号分隔 + clearDay: 14 #数据源的文件保留天数,到期清除 + + +#路由服务地址 +gateway: + messageService: message-service + + +# 开发环境配置 +server: + port: 18084 #本地 + servlet: + # 应用的访问路径 + context-path: /datacenter-sync + tomcat: + # tomcat的URI编码 + uri-encoding: UTF-8 + # 连接数满后的排队数,默认为100 + accept-count: 1000 + threads: + # tomcat最大线程数,默认为200 + max: 200 + # Tomcat启动初始化的线程数,默认值10 + min-spare: 100 + +# 日志配置 +logging: + level: + com.jiuyv.sptccc.agile: info + root: info + + +spring: + devtools: + restart: + enabled: true + datasource: #数据源配置 + driver-class-name: org.postgresql.Driver + url: jdbc:postgresql://172.16.12.105:5432/keliubao + username: postgres + password: postgres + +#主要为了使用其中的连接池 +filesftp: + poolConfig: + maxTotal: 15 + maxIdle: 3 + minIdle: 1 + maxWait: PT3M + minEvictableIdleTime: PT15M + timeBetweenEvictionRuns: PT1M + softMinEvictableIdleTime: PT10M + +#自定义数据源:文件或jdbc +klbPgDs: #客流宝pg + url: ${spring.datasource.url} + username: ${spring.datasource.username} + password: ${spring.datasource.password} + driverClassName: ${spring.datasource.driver-class-name} +sjztHiveDs: #数据中台hive + fileType: sftp #local或sftp; 默认local + singleWriteNumber: 20000 #读取一定数量写入一次 + readWritePath: /home/flink/zltmp/ #文件存放路径,覆盖默认 + fieldSeparator: ',' #文件字段分隔符号,默认就是逗号 + sftpHost: 172.16.12.108 + sftpPort: 22 + sftpUsername: flink + sftpPassword: flink123 + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/application.yml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/application.yml new file mode 100644 index 00000000..41244a84 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/application.yml @@ -0,0 +1,49 @@ +# Spring配置 +spring: + application: + name: datacenter-sync + # 资源信息 + messages: + # 国际化资源文件路径 + basename: i18n/messages + jackson: + date-format: yyyy-MM-dd HH:mm:ss # 常用的时间格式 + default-property-inclusion: non_null # 忽略空对象 + serialization: + fail-on-empty-beans: false # 序列化空对象时不抛出异常 + indent-output: true # 输出格式化为缩进的JSON + write-dates-as-timestamps: false # 日期序列化为时间戳而不是ISO-8601格式 + deserialization: + fail-on-unknown-properties: false # 反序列化时忽略未知的属性 + +# MyBatis配置 +mybatis: + # 搜索指定包别名 + typeAliasesPackage: com.jiuyv.sptccc.agile.** + # 配置mapper的扫描,找到所有的mapper.xml映射文件 + mapperLocations: classpath*:mapper/**/*Mapper.xml + # 加载全局的配置文件 + configLocation: classpath:mybatis/mybatis-config.xml + +feign: + httpclient: + enabled: false + okhttp: + enabled: true + compression: + request: + enabled: true + response: + enabled: true + useGzipDecoder: true + +management: + endpoints: + web: + exposure: + include: '*' + endpoint: + health: + show-details: ALWAYS + shutdown: + enabled: true \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/banner.txt b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/banner.txt new file mode 100644 index 00000000..f301659b --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/banner.txt @@ -0,0 +1,6 @@ +Application Version: ${console.version} +Spring Boot Version: ${spring-boot.version} +//////////////////////////////////////////////////////////////////// +// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ // +// 永不宕机 永无BUG // +//////////////////////////////////////////////////////////////////// \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/bootstrap.yml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/bootstrap.yml new file mode 100644 index 00000000..d8358e88 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/bootstrap.yml @@ -0,0 +1,42 @@ +console: + version: 1.0 + +# Spring配置 +spring: + application: + name : datacenter-sync + profiles: + active: dev + cloud: + config: + #本地可以置为关闭false + enabled: false + discovery: + service-id: config-service #使用服务名 + enabled: false + name: ${spring.application.name} + profile: ${spring.profiles.active} + fail-fast: true + security: + user: + name: sptcc + password: 123456 + +# 配置eureka客户端信息 +eureka: + instance: + appname: ${spring.application.name} + lease-expiration-duration-in-seconds: 30 + lease-renewal-interval-in-seconds: 10 + prefer-ip-address: true + instance-id: ${spring.cloud.client.ip-address}:${server.port} + metadata-map: + user.name: ${spring.security.user.name} + user.password: ${spring.security.user.password} + client: + enabled: true + registry-fetch-interval-seconds: 1 + register-with-eureka: true + fetch-registry: true + service-url: + defaultZone: http://172.16.12.109:8761/eureka/ \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/i18n/messages.properties b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/i18n/messages.properties new file mode 100644 index 00000000..9c19d396 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/i18n/messages.properties @@ -0,0 +1,3 @@ +#错误消息 +not.null=* 必须填写 +length.not.valid=长度必须在{min}到{max}个字符之间 \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/logback-spring.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/logback-spring.xml new file mode 100644 index 00000000..4628dabc --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/logback-spring.xml @@ -0,0 +1,134 @@ + + + + + + + + + + + + + System.out + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + UTF-8 + + + + + ${LOG_HOME}/${APP_NAME}.log + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log.zip + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + + ${JSON_LOG_HOME}/${APP_NAME}.json.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + + + + { + "timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}", + "severity": "%level", + "service": "${APP_NAME:-}", + "trace": "%X{X-B3-TraceId:-}", + "span": "%X{X-B3-SpanId:-}", + "parent": "%X{X-B3-ParentSpanId:-}", + "exportable": "%X{X-Span-Export:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + + ${JSON_LOG_HOME}/${APP_NAME}.json.log + + + ${JSON_LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.json.log.zip + + + 100MB + + + + + + + { + "timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}", + "severity": "%level", + "service": "${APP_NAME:-}", + "trace": "%X{X-B3-TraceId:-}", + "span": "%X{X-B3-SpanId:-}", + "parent": "%X{X-B3-ParentSpanId:-}", + "exportable": "%X{X-Span-Export:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + System.err + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mapper/datacenter/TblDatacenterTaskMapper.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mapper/datacenter/TblDatacenterTaskMapper.xml new file mode 100644 index 00000000..709876c8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mapper/datacenter/TblDatacenterTaskMapper.xml @@ -0,0 +1,105 @@ + + + + + + a.task_no, a.task_title, a.task_type, a.version_num, a.rec_token, a.remote_db_name, + a.remote_table_sql, a.remote_file_name, a.remote_file_fields, a.local_db_name, + a.local_pre_sql, a.local_table, a.mapping_json, a.default_query_json, a.temp_query_json, + a.attempts_num, a.run_interval_time, a.last_run_date, a.scheduled_cron, a.remarks, + a.order_num, a.data_status, a.create_time, a.update_time, a.rsv1, a.rsv2, a.rsv3 + + + + + and a.task_no = #{taskNo} + and a.task_no in(#{idx}) + + and version_num = #{versionNum} + and rec_token = #{recToken} + and data_status = #{dataStatus} + + + + + + + + + + + update tbl_datacenter_task + + task_title = #{vo.taskTitle}, + task_type = #{vo.taskType}, + version_num = #{vo.versionNum}, + version_num = version_num+1, + rec_token = #{vo.recToken}, + remote_db_name = #{vo.remoteDbName}, + remote_table_sql = #{vo.remoteTableSql}, + remote_file_name = #{vo.remoteFileName}, + remote_file_fields = #{vo.remoteFileFields}, + local_db_name = #{vo.localDbName}, + local_pre_sql = #{vo.localPreSql}, + local_table = #{vo.localTable}, + mapping_json = #{vo.mappingJson}, + default_query_json = #{vo.defaultQueryJson}, + temp_query_json = #{vo.tempQueryJson}, + attempts_num = #{vo.attemptsNum}, + run_interval_time = #{vo.runIntervalTime}, + last_run_date = #{vo.lastRunDate}, + scheduled_cron = #{vo.scheduledCron}, + remarks = #{vo.remarks}, + order_num = #{vo.orderNum}, + data_status = #{vo.dataStatus}, + create_time = #{vo.createTime}, + update_time = #{vo.updateTime}, + rsv1 = #{vo.rsv1}, + rsv2 = #{vo.rsv2}, + rsv3 = #{vo.rsv3}, + + + + and task_no = #{map.taskNo} + and version_num = #{map.versionNum} + and rec_token = #{map.recToken} + and data_status = #{map.dataStatus} + + + + + + + + + update tbl_datacenter_task + set + temp_query_json = null, + update_time = #{updateTime} + where + task_no = #{taskNo} + + + diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mapper/datacenter/TblDatacenterTaskStatusMapper.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mapper/datacenter/TblDatacenterTaskStatusMapper.xml new file mode 100644 index 00000000..d8f10e91 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mapper/datacenter/TblDatacenterTaskStatusMapper.xml @@ -0,0 +1,182 @@ + + + + + + a.task_no, a.task_conditions, a.task_type, a.version_num, a.rec_token, a.pre_start_date, + a.pre_end_date, a.pre_total_time, a.curr_start_date, a.load_file, a.load_time, + a.attempts_num, a.run_interval_time, a.read_count, a.bus_status, a.data_status, + a.create_time, a.update_time, a.rsv1, a.rsv2, a.rsv3 + + + + and a.task_no = #{taskNo} + and a.task_conditions = #{taskConditions} + and version_num = #{versionNum} + and rec_token = #{recToken} + and data_status = #{dataStatus} + + + + + + + + insert into tbl_datacenter_task_status + + task_no, + task_conditions, + task_type, + version_num, + rec_token, + pre_start_date, + pre_end_date, + pre_total_time, + curr_start_date, + load_file, + load_time, + attempts_num, + run_interval_time, + read_count, + bus_status, + data_status, + create_time, + update_time, + rsv1, + rsv2, + rsv3, + + + #{taskNo}, + #{taskConditions}, + #{taskType}, + #{versionNum}, + #{recToken}, + #{preStartDate}, + #{preEndDate}, + #{preTotalTime}, + #{currStartDate}, + #{loadFile}, + #{loadTime}, + #{attemptsNum}, + #{runIntervalTime}, + #{readCount}, + #{busStatus}, + #{dataStatus}, + #{createTime}, + #{updateTime}, + #{rsv1}, + #{rsv2}, + #{rsv3}, + + + + + + update tbl_datacenter_task_status + + task_type = #{vo.taskType}, + version_num = #{vo.versionNum}, + version_num = version_num+1, + rec_token = #{vo.recToken}, + pre_start_date = #{vo.preStartDate}, + pre_end_date = #{vo.preEndDate}, + pre_total_time = #{vo.preTotalTime}, + curr_start_date = #{vo.currStartDate}, + load_file = #{vo.loadFile}, + load_time = #{vo.loadTime}, + attempts_num = #{vo.attemptsNum}, + run_interval_time = #{vo.runIntervalTime}, + read_count = #{vo.readCount}, + bus_status = #{vo.busStatus}, + data_status = #{vo.dataStatus}, + create_time = #{vo.createTime}, + update_time = #{vo.updateTime}, + rsv1 = #{vo.rsv1}, + rsv2 = #{vo.rsv2}, + rsv3 = #{vo.rsv3}, + + + + + and task_no = #{map.taskNo} + and task_no in(#{idx}) + + + and task_conditions = #{map.taskConditions} + and task_conditions in(#{idx}) + + and version_num = #{map.versionNum} + and rec_token = #{map.recToken} + and data_status = #{map.dataStatus} + + + + + + + + + + update tbl_datacenter_task_status + + version_num = version_num+1, + rec_token = #{vo.recToken}, + curr_start_date = #{vo.currStartDate}, + attempts_num = attempts_num - 1, + bus_status = #{vo.busStatus}, + update_time = #{vo.updateTime}, + + + and task_no = #{map.taskNo} + and task_conditions = #{map.taskConditions} + AND bus_status in(#{idx}) + + + + + + update tbl_datacenter_task_status + + version_num = version_num+1, + rec_token = #{vo.recToken}, + attempts_num = attempts_num + 1, + bus_status = #{vo.busStatus}, + update_time = #{vo.updateTime}, + + + attempts_num > 0 + AND data_status = '00' + + + AND curr_start_date < NOW() - INTERVAL '${map.overdate} minutes' + + + AND curr_start_date < NOW() - INTERVAL '${map.overdate} hour' + + + AND curr_start_date < #{map.currStartDate} + + + AND bus_status = #{map.busStatus} + + + + diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mapper/system/SysBaseMapper.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mapper/system/SysBaseMapper.xml new file mode 100644 index 00000000..67967a3c --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mapper/system/SysBaseMapper.xml @@ -0,0 +1,10 @@ + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mybatis/mybatis-config.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mybatis/mybatis-config.xml new file mode 100644 index 00000000..1ca69c62 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/main/resources/mybatis/mybatis-config.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/test/resources/application-test.yml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/test/resources/application-test.yml new file mode 100644 index 00000000..aadb2a11 --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/agile-datacenter-sync/src/test/resources/application-test.yml @@ -0,0 +1,54 @@ +# 项目相关配置 +console: + # 名称 + name: message-gateway + # 版本 + version: 1.0 + # 版权年份 + copyrightYear: 2022 + # 实例演示开关 + demoEnabled: true + # 获取ip地址开关 + addressEnabled: false + + +# 开发环境配置 +server: + port: 18080 #本地 + servlet: + # 应用的访问路径 + context-path: /message-gateway + tomcat: + # tomcat的URI编码 + uri-encoding: UTF-8 + # 连接数满后的排队数,默认为100 + accept-count: 1000 + threads: + # tomcat最大线程数,默认为200 + max: 200 + # Tomcat启动初始化的线程数,默认值10 + min-spare: 100 + +# 日志配置 +logging: + level: + com.jiuyv.sptccc.agile: debug + org.springframework: warn + + +spring: + application: + name: message-gateway + # 资源信息 + messages: + # 国际化资源文件路径 + basename: i18n/messages + jackson: + date-format: yyyy-MM-dd HH:mm:ss # 常用的时间格式 + default-property-inclusion: non_null # 忽略空对象 + serialization: + fail-on-empty-beans: false # 序列化空对象时不抛出异常 + indent-output: true # 输出格式化为缩进的JSON + write-dates-as-timestamps: false # 日期序列化为时间戳而不是ISO-8601格式 + deserialization: + fail-on-unknown-properties: false # 反序列化时忽略未知的属性 \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/pom.xml b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/pom.xml new file mode 100644 index 00000000..d1f58b5e --- /dev/null +++ b/sptcc_agile_etl/src/agile-datacenter/src/trunk/agile-datacenter/pom.xml @@ -0,0 +1,195 @@ + + 4.0.0 + com.jiuyv.sptcc.agile + agile-datacenter + 0.0.1-SNAPSHOT + pom + + + + org.springframework.boot + spring-boot-starter-parent + 2.6.7 + + + + UTF-8 + UTF-8 + 1.8 + 1.8 + 3.1.1 + 3.1.0 + 3.1.0 + 3.1.0 + + 3.1.0 + 2.2.2 + 1.4.1 + 2.11.0 + 1.15 + 3.2.2 + 6.4 + 1.2.11 + 0.1.55 + 2021.0.5 + + 0.1.10 + 0.0.1-SNAPSHOT + 0.1.7 + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + org.springframework.cloud + spring-cloud-starter-openfeign + ${openfeign.version} + + + + com.jiuyv.sptcc.agile + agile-mobile-message-api + ${agile-mobile-message-api.version} + + + + com.jiuyv.sptcc.agile + agile-datacenter-api + ${agile-datacenter-api.version} + + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + ${mybatis-spring-boot.version} + + + + + com.github.pagehelper + pagehelper-spring-boot-starter + ${pagehelper.boot.version} + + + + commons-io + commons-io + ${commons.io.version} + + + + + commons-collections + commons-collections + ${commons.collections.version} + + + + commons-codec + commons-codec + ${commons.code.version} + + + + net.logstash.logback + logstash-logback-encoder + ${logstash.version} + + + com.jcraft + jsch + ${jsch.version} + + + + + + + nexus-releases + Internal Releases + http://172.16.12.11:8082/repository/maven-releases/ + + + + nexus-snapshots + Internal Snapshots + http://172.16.12.11:8082/repository/maven-snapshots/ + + + + + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/datacenter/src/trunk/agile-datacenter + + + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/datacenter/src/trunk/agile-datacenter + + + + + + jiuyv + jiuyv + http://172.16.12.11:8082/repository/maven-public/ + + true + always + + + + aliyun-releases + Internal Releases + http://maven.aliyun.com/nexus/content/groups/public + + + spring-milestone-releases + Internal Releases + https://repo.spring.io/milestone + + + + + + jiuyv + jiuyv Plugin Repository + http://172.16.12.11:8082/repository/maven-public/ + + + aliyun-releases + Internal Releases + http://maven.aliyun.com/nexus/content/groups/public + + + central + Maven Plugin Repository + http://repo1.maven.org/maven2/ + + + + + + agile-datacenter-api + agile-datacenter-service + agile-datacenter-sync + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + none + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/pom.xml new file mode 100644 index 00000000..e667c8ac --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/pom.xml @@ -0,0 +1,73 @@ + + + + agile-data + com.jiuyv.sptcc.agile + 0.2.15 + + 4.0.0 + jar + + agile-data-api + + + 8 + 8 + + true + + + + + + com.fasterxml.jackson.core + jackson-annotations + + + org.hibernate.validator + hibernate-validator + compile + + + + org.springframework + spring-web + + + + org.springframework + spring-context + + + + com.jiuyv.sptcc.agile + agile-common + + + + io.github.openfeign + feign-core + + + + org.apache.tomcat.embed + tomcat-embed-core + + + org.junit.jupiter + junit-jupiter-api + test + + + org.springframework + spring-test + test + + + org.springframework.boot + spring-boot-test + test + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/OrgAuthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/OrgAuthApi.java new file mode 100644 index 00000000..6fd7e300 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/OrgAuthApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * @ClassName : OrgAuthApi + * @Description : 获取机构权限列表 + * @Author : sky + * @Date: 2023-07-13 11:45 + */ +public interface OrgAuthApi { + + String PREFIX_PATH = "/public/agile-data/auth"; + + @PostMapping(PREFIX_PATH + "/info") + R getOrgAuth(OrgAuthReq req); + /** + * 接口权限验证 + * @param request 入参 + */ + @PostMapping(PREFIX_PATH + "/auth") + R check(OrgAuthRequest request); + + /** + * 获取密钥 + * @param orgCode + * @return + */ + @GetMapping(PREFIX_PATH+"/getKey") + R getKey(@RequestParam("orgCode") String orgCode); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java new file mode 100644 index 00000000..2e43162b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.dataservice.api.batch; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.batch.DateVo; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +public interface BatchApi { + + String PREFIX_PATH = "/public/agile-data"; + + /** + * 机构到期提醒 + * + * @param date + * @return + */ + @PostMapping(PREFIX_PATH + "/orgInfo/expire") + R expire(@RequestParam(value = "date",required = false) String date); + + /** + * 机构到期下架 + * + * @param date + * @return + */ + @PostMapping(PREFIX_PATH + "/orgInfo/down") + R down(@RequestParam(value = "date",required = false) String date); + + + /** + * pos匹配率异常告警 + * @param dateVo + * @return + */ + @PostMapping(PREFIX_PATH + "/pos/posRate") + R posCheck(DateVo dateVo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/ApiLogApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/ApiLogApi.java new file mode 100644 index 00000000..0799737f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/ApiLogApi.java @@ -0,0 +1,28 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiLogRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiLogResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @ClassName : ApiLogApi + * @Description : 日志接口 + * @Author : sky + * @Date: 2023-09-22 10:25 + */ +public interface ApiLogApi { + + + String PREFIX_PATH = "/public/agile-data/apilog"; + + + @PostMapping(PREFIX_PATH + "/page") + R> list(ApiLogRequest request); + + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("id") Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/DataApiFeign.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/DataApiFeign.java new file mode 100644 index 00000000..6ec1b3c6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/DataApiFeign.java @@ -0,0 +1,145 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import feign.Response; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 敏捷API + * + * @author yulei + */ +public interface DataApiFeign { + + String PREFIX_PATH = "/public/agile-data/agileApi"; + + + @GetMapping(PREFIX_PATH + "/getPrefixPath") + R getApiPrefixPath(); + + /** + * 获取详情 + * + * @param id + * @return + */ + @PostMapping(PREFIX_PATH + "/getDate") + R getDataApiById(@RequestParam("id") Long id); + + /** + * 获取数据源的API列表 + * + * @param sourceId + * @return + */ + @GetMapping(PREFIX_PATH + "/sourceList") + R> getDataApiList(@RequestParam("sourceId") Long sourceId); + + /** + * 获取分页列表 + * + * @param apiQuery + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> getDataApiPage(ApiPageRequest apiQuery); + + /** + * 新增API + * + * @param dataApi + * @return + */ + @PostMapping(PREFIX_PATH + "/add") + R saveDataApi(ApiAddRequest dataApi); + + /** + * 修改API + * + * @param dataApi + * @return + */ + @PostMapping(PREFIX_PATH + "/update") + R updateDataApi(ApiUpdateRequest dataApi); + + /** + * 删除API + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/delete") + R deleteDataApiById(@RequestBody @Validated ApiDelRequest request); + + /** + * 复制API + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/copy") + R copyDataApi(ApiCopyRequest request); + + /** + * 注册API + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/register") + R registerDataApi(ApiStatusRequest request); + + /** + * 发布API + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/release") + R releaseDataApi(ApiStatusRequest dto); + + /** + * 注销API + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/cancel") + R cancelDataApi(ApiStatusRequest dto); + + /** + * 下架API + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/down") + R downDataApi(ApiStatusRequest dto); + + /** + * 获取api树状结构数据 + * + * @return + */ + @PostMapping(PREFIX_PATH + "/tree") + R> apiTree(); + + /** + * 生成接口文档 + * + * @param id + * @return + */ + @GetMapping(PREFIX_PATH + "/word/down") + Response wordDataApi(@RequestParam("id") Long id) throws Exception; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgCfgConsoleApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgCfgConsoleApi.java new file mode 100644 index 00000000..5dde2c4a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgCfgConsoleApi.java @@ -0,0 +1,75 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 机构配置接口 + * + * @ClassName : OrgConfigApi + * @Description : + * @Author : sky + * @Date: 2023-09-07 15:44 + */ +public interface OrgCfgConsoleApi { + + String PREFIX_PATH = "/public/agile-data/orgConfig"; + + /** + * 分页查询列表 + * + * @param query + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(OrgConfigQueryRequest query); + + /** + * 查询详细 + * + * @param configId + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R queryDetail(@RequestParam("configId") Long configId); + + /** + * 新增 + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/add") + R add(OrgConfigAddRequest dto); + + /** + * 修改 + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/edit") + R edit(OrgConfigEditRequest dto); + + /** + * 删除 + * + * @param configId + * @return + */ + @PostMapping(PREFIX_PATH + "/delete") + R delete(@RequestParam("configId") Long configId); + + + @GetMapping(PREFIX_PATH + "/getOrgCfg") + R> getConfig(@RequestParam("orgCode") String orgCode); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgInfoConsoleApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgInfoConsoleApi.java new file mode 100644 index 00000000..c17163cc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgInfoConsoleApi.java @@ -0,0 +1,108 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 机构管控台服务接口 + * + * @ClassName : OrgInfoApi + * @Description : + * @Author : sky + * @Date: 2023-09-07 15:51 + */ +public interface OrgInfoConsoleApi { + + String PREFIX_PATH = "/public/agile-data/orgInfo"; + + /** + * 分页查询 + * + * @param query + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(OrgInfoQueryReq query); + + /** + * 详情 + * + * @param orgNo + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R getInfo(@RequestParam("orgNo") String orgNo); + + /** + * 新增接口 + * + * @param addReq + * @return + */ + @PostMapping(PREFIX_PATH + "/add") + R add(OrgInfoAddReq addReq); + + /** + * 编辑接口 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/edit") + R edit(OrgInfoEditReq request); + + /** + * 删除接口 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/remove") + R remove(OrgDelReq request); + + /** + * 启用机构 + */ + @PostMapping(PREFIX_PATH + "/run") + R run(OrgInfoStatusReq request); + + /** + * 停用机构 + */ + @PostMapping(PREFIX_PATH + "/stop") + R stop(OrgInfoStatusReq request); + + /** + * 获取密钥 + * + * @return + */ + @GetMapping(PREFIX_PATH + "/key") + R getGenerateKeyHex(); + + /** + * 授权 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/auth") + R orgApiAuth(OrgApiAuthRequest request); + + /** + * 获取权限信息 + * + * @param orgNo + * @return + */ + @GetMapping(PREFIX_PATH + "/auth/list") + R orgApiAuthInfo(@RequestParam("orgNo") String orgNo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgStcsConsoleApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgStcsConsoleApi.java new file mode 100644 index 00000000..50985f92 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgStcsConsoleApi.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiStatisticsResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 机构接口调用次数统计 + * + * @ClassName : OrgStcsConsoleApi + * @Author : sky + * @Date: 2023-09-07 16:02 + */ +public interface OrgStcsConsoleApi { + + String PREFIX_PATH = "/public/agile-data/orgStcs"; + + @PostMapping(PREFIX_PATH + "/list") + R> queryByPage(OrgStatisticsQueryReq request); + + /** + * 查询用户接口调用统计列表 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/userApiStatistics") + R> getUserApiStatistics(ApiUserRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/DataApiFeignApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/DataApiFeignApi.java new file mode 100644 index 00000000..91144fbb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/DataApiFeignApi.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.api.portal; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +public interface DataApiFeignApi { + + String PREFIX_PATH = "/public/agile-data/agileApi"; + + /** + * 查询用户接口列表 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/userApiList") + R> getUserApiList(ApiUserRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/SdkDownload.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/SdkDownload.java new file mode 100644 index 00000000..f56a2997 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/SdkDownload.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.api.portal; + +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; + +/** + * @ClassName : SdkDownload + * @Description : + * @Author : sky + * @Date: 2023-09-21 10:42 + */ +public interface SdkDownload { + + String PREFIX_PATH = "/public/agile-data/port"; + + /** + * sdk 文件下载 + * + * @return + */ + @GetMapping(PREFIX_PATH + "/download/sdk") + ResponseEntity download(); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/DownloadApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/DownloadApi.java new file mode 100644 index 00000000..c3433710 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/DownloadApi.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import feign.Response; +import org.springframework.web.bind.annotation.PostMapping; + +import java.io.IOException; + + +/** + * sftp文件下载 + * + * @ClassName : DownloadApi + * @Description : + * @Author : sky + * @Date: 2023-09-13 13:21 + */ +public interface DownloadApi { + + String PREFIX_PATH = "/public/agile-data/product"; + + @PostMapping(PREFIX_PATH + "/download") + Response download(DownLoadRequest request) throws IOException; + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineInfoApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineInfoApi.java new file mode 100644 index 00000000..313112d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineInfoApi.java @@ -0,0 +1,68 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineInfoReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineStationInfoReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineInfoRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineStationInfoRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 线路站点基础信息表 + * + * @ClassName : LineInfoApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 18:51 + */ +public interface LineInfoApi { + + String PREFIX_PATH = "/public/agile-data/lineInfo"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineInfoReq request); + + + /** + * 根据线路名称获取线路编码 + * + * @param lineName + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("lineName") String lineName); + + + /** + * 获取站点列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/stationList") + R> stationList(LineStationInfoReq request); + + + /** + * 根据站点名称获取站点信息 + * + * @param lineName + * @return + */ + @GetMapping(PREFIX_PATH + "/stationDetail") + R stationDetail(@RequestParam("lineName") String lineName); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricDayApi.java new file mode 100644 index 00000000..1a2c3791 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricDayApi.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : LineMetricDay + * @Description : + * @Author : sky + * @Date: 2023-09-18 15:17 + */ +public interface LineMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/lineDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineDayPageReq request); + + + /** + * 机构获取线路日客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(LineDayReqRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricHourApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricHourApi.java new file mode 100644 index 00000000..4d6e86e2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricHourApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : LineMetricDay + * @Description : + * @Author : sky + * @Date: 2023-09-18 15:17 + */ +public interface LineMetricHourApi { + + String PREFIX_PATH = "/public/agile-data/linHour"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineHourPageReq request); + + + + /** + * 机构获取线路小时客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(LineHourRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricMonthApi.java new file mode 100644 index 00000000..a7e7dac8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricMonthApi.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : LineMetricDay + * @Description : + * @Author : sky + * @Date: 2023-09-18 15:17 + */ +public interface LineMetricMonthApi { + + String PREFIX_PATH = "/public/agile-data/linMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineMetricMonthReq request); + + + /** + * 机构获取线路月客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(LineMonthRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/RouteMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/RouteMetricDayApi.java new file mode 100644 index 00000000..fc92e38f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/RouteMetricDayApi.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.RouteMetricDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @ClassName : RouteMetricDayApi + * @Description : 班线 + * @Author : sky + * @Date: 2023-09-19 13:56 + */ +public interface RouteMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/routeMetricDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteMetricDayReq request); + + /** + * 查看详情 + * + * @param id + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("id") Long id); + + + + /** + * 机构获取班次日客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(RouteDayRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricDayApi.java new file mode 100644 index 00000000..8576595e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricDayApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * 常乘客站点换乘客流量 + * + * @ClassName : StationFreqMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 14:03 + */ +public interface StationFreqMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/stationFreqMetricDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationFreqMetricDayReq request); + + + /** + * 机构获站点常乘客日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqDayRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricMonthApi.java new file mode 100644 index 00000000..0c8861d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricMonthApi.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * 常乘客站点客流量月统计 + * + * @ClassName : StationFreqMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 14:03 + */ +public interface StationFreqMetricMonthApi { + + String PREFIX_PATH = "/public/agile-data/stationFreqMetricMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list( StationFreqMetricMonthReq request); + + + /** + * 机构获站点常乘客月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqMonthRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransDayApi.java new file mode 100644 index 00000000..b704b641 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransDayApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @ClassName : StationFreqTransDay + * @Description : 常乘客换乘客流量日统计 + * @Author : sky + * @Date: 2023-09-19 14:14 + */ +public interface StationFreqTransDayApi { + + + String PREFIX_PATH = "/public/agile-data/stationFreqTransDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationFreqTransDayReq request); + + + /** + * 机构获取站点换乘日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqTransDayRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransMonthApi.java new file mode 100644 index 00000000..0db5dfa7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransMonthApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @ClassName : StationFreqTransDay + * @Description : 常乘客换乘客流量月统计 + * @Author : sky + * @Date: 2023-09-19 14:14 + */ +public interface StationFreqTransMonthApi { + + + String PREFIX_PATH = "/public/agile-data/stationFreqTransMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationFreqTransMonthReq request); + + + /** + * 机构获取站点换乘月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqTransMonthRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricDayApi.java new file mode 100644 index 00000000..4bca773f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricDayApi.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 13:33 + */ +public interface StationMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/StationMetricDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricDayReq request); + + /** + * 机构获取站点日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationDayRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricHourApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricHourApi.java new file mode 100644 index 00000000..1de15825 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricHourApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 13:33 + */ +public interface StationMetricHourApi { + + String PREFIX_PATH = "/public/agile-data/StationMetricHour"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricHourReq request); + + + /** + * 机构获取站点小时路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationHourRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricMonthApi.java new file mode 100644 index 00000000..a1626d6d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricMonthApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 13:33 + */ +public interface StationMetricMonthApi { + + String PREFIX_PATH = "/public/agile-data/StationMetricMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricMonthReq request); + + + /** + * 机构获取站点月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationMonthRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransDayApi.java new file mode 100644 index 00000000..9fdc8566 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransDayApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationTransDayApi + * @Description : 换乘 + * @Author : sky + * @Date: 2023-09-19 13:45 + */ +public interface StationTransDayApi { + + + String PREFIX_PATH = "/public/agile-data/StationTransDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationTransDayReq request); + + + /** + * 机构获取站点换乘日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationTransDayRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransHourApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransHourApi.java new file mode 100644 index 00000000..70fd2d24 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransHourApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationTransDayApi + * @Description : 换乘 + * @Author : sky + * @Date: 2023-09-19 13:45 + */ +public interface StationTransHourApi { + + + String PREFIX_PATH = "/public/agile-data/StationTransHour"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricHourReq request); + + + /** + * 机构获取站点换乘小时路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationTransHourRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransMonthApi.java new file mode 100644 index 00000000..4eaf6132 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransMonthApi.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationTransDayApi + * @Description : 换乘 + * @Author : sky + * @Date: 2023-09-19 13:45 + */ +public interface StationTransMonthApi { + + String PREFIX_PATH = "/public/agile-data/StationTransMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationTransMonthReq request); + + + /** + * 机构获取站点换乘月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationTransMonthRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/CentimeDelayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/CentimeDelayApi.java new file mode 100644 index 00000000..81dc92af --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/CentimeDelayApi.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.CentimeDelayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 延迟上送 + * + * @Author : sky + * @Date: 2023-09-20 17:35 + */ +public interface CentimeDelayApi { + + String PREFIX_PATH = "/public/agile-data/quality/centimeDelay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(CentimeDelayReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/PosMatchRateApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/PosMatchRateApi.java new file mode 100644 index 00000000..7fa22436 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/PosMatchRateApi.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.PosMatchRateRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * Pos匹配率 + * + * @ClassName : PosMatchRateApi + * @Description : + * @Author : sky + * @Date: 2023-09-20 17:25 + */ +public interface PosMatchRateApi { + + + String PREFIX_PATH = "/public/agile-data/quality/posMatchRate"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(PosMatchRateReq request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteDailyCountApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteDailyCountApi.java new file mode 100644 index 00000000..af82e804 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteDailyCountApi.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteDailyRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 日运营线路数 + * + * @ClassName : RouteDailyCountApi + * @Description : 日运营线路数 + * @Author : sky + * @Date: 2023-09-20 17:19 + */ +public interface RouteDailyCountApi { + + String PREFIX_PATH = "/public/agile-data/quality/routeDailyCount"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteDailyReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteMissApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteMissApi.java new file mode 100644 index 00000000..705e158b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteMissApi.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteMissRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 班次缺失率 + * + * @Author : sky + * @Date: 2023-09-20 16:58 + */ +public interface RouteMissApi { + + String PREFIX_PATH = "/public/agile-data/quality/routeMiss"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteMissReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteTurnoverTimeApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteTurnoverTimeApi.java new file mode 100644 index 00000000..5f23deb8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteTurnoverTimeApi.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteTurnoverRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 班次周转时间 + * + * @ClassName : RouteTurnoverTimeApi + * @Description : 班次周转时间 + * @Author : sky + * @Date: 2023-09-20 16:44 + */ +public interface RouteTurnoverTimeApi { + + String PREFIX_PATH = "/public/agile-data/quality/routeTurnover"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteTurnoverReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/StationMissApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/StationMissApi.java new file mode 100644 index 00000000..3965e2d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/StationMissApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.StationMissRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 站点缺失率 + * + * @ClassName : StationMissApi + * @Description : + * @Author : sky + * @Date: 2023-09-20 16:33 + */ +public interface StationMissApi { + + + String PREFIX_PATH = "/public/agile-data/quality/stationMiss"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMissReq request); + + + /** + * 获取列表信息 + * + * @param id + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("id") Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/VehicleDailyApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/VehicleDailyApi.java new file mode 100644 index 00000000..0e831b5b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/VehicleDailyApi.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDailyRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDayResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : VehicleDailyApi + * @Description : 运营车辆数 + * @Author : sky + * @Date: 2023-09-20 15:05 + */ +public interface VehicleDailyApi { + + String PREFIX_PATH = "/public/agile-data/quality/vehicleDaily"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R list(VehicleDailyReq request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java new file mode 100644 index 00000000..31a760d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum AlgorithmCrypto implements IDictEnum { + + BASE64("1", "BASE64加密"), + MD5("2", "MD5加密"), + SHA_1("3", "SHA_1加密"), + SHA_256("4", "SHA_256加密"), + AES("5", "AES加密"); + // DES("6", "DES加密"); + + private final String key; + + private final String val; + + AlgorithmCrypto(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + public String getVal() { + return val; + } + + public static AlgorithmCrypto getAlgorithmCrypto(String algorithmCrypt) { + for (AlgorithmCrypto type : AlgorithmCrypto.values()) { + if (type.key.equals(algorithmCrypt)) { + return type; + } + } + return BASE64; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApiCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApiCrypto.java new file mode 100644 index 00000000..bf51fe5e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApiCrypto.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public class ApiCrypto { + + public enum ApiState implements IDictEnum{ + WAIT("1","待注册"), + REGISTER("2","已注册"), + RELEASE("3","已发布"); + + ApiState(String code, String msg) { + this.code = code; + this.msg = msg; + } + private final String code; + private final String msg; + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApicodeEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApicodeEnum.java new file mode 100644 index 00000000..50b429ab --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApicodeEnum.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + + +public enum ApicodeEnum implements IDictEnum { + + LINE_HOUR("lineHour", "线路小时客流指标"), + LINE_DAY("lineDay", "线路每日客流指标"), + LINE_MONTH("lineMonth", "线路每月客流指标"), + STATION_HOUR("stationHour", "站点小时客流指标"), + STATION_DAY("stationDay", "站点每日客流指标"), + STATION_MONTH("stationMonth", "站点每月客流指标"), + STATION_TRANS_HOUR("stationTransHour", "站点换乘小时指标"), + STATION_TRANS_DAY("stationTransDay", "站点换乘日指标"), + STATION_TRNAS_MONTH("stationTransMonth", "站点换乘月指标"), + STATION_FREQ_DAY("stationFreqDay", "站点常乘客日指标"), + STATION_FREQ_MONTH("stationFreqMonth", "站点常乘客月指标"), + STATION_FREQ_TRANS_DAY("stationFreqTransDay", "站点常乘客换乘日指标"), + STATION_FREQ_TRANS_MONTH("stationFreqTransMonth", "站点常乘客换乘月指标"), + ROUTE_DAY("routeDay", "班次客流量"), + DWONLOAD("download", "下载接口"); + + private final String code; + + private final String msg; + + + ApicodeEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ConfigCrypot.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ConfigCrypot.java new file mode 100644 index 00000000..4ef814c8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ConfigCrypot.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public class ConfigCrypot { + + public enum ConfigStatus implements IDictEnum{ + + STOP("1","停用"), + NORMAL("0","正常"); + + ConfigStatus(String code, String msg) { + this.code = code; + this.msg = msg; + } + + private String code; + + private String msg; + + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 机构配置参数 + * + * @ClassName : OrgCfnKeyEnum + * @Description : + * @Author : sky + * @Date: 2023-09-22 17:44 + */ + public enum OrgCfnKeyEnum implements IDictEnum { + + DATA_BEGIN("data_begin", "数据起始时间"), + DATA_END("data_end", "数据结束时间"), + DOWN_RIGHT("downLoadRigth","文件下载权限") + ; + + private final String code; + + private final String msg; + + OrgCfnKeyEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataApiEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataApiEnum.java new file mode 100644 index 00000000..b326abad --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataApiEnum.java @@ -0,0 +1,486 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +import java.math.BigDecimal; +import java.text.ParseException; +import java.text.SimpleDateFormat; + +/** + * @ClassName : DataApiEnum + * @Description : + * @Author : sky + * @Date: 2023-09-04 17:44 + */ +public class DataApiEnum { + + /** + * API状态 + */ + public enum API_STATUS implements IDictEnum { + WAIT("1", "待注册"), + REGISTER("2", "已注册"), + RELEASE("3", "已发布"), + DOWN("4", "下架"); + private final String code; + private final String msg; + + API_STATUS(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * API类型 + */ + public enum API_TYPE implements IDictEnum { + AGILE("1", "敏捷API"), + SYSTEM("2", "系统API"); + private final String code; + private final String msg; + + API_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + public enum ResType implements IDictEnum{ + + JSON("JSON", "json类型"); + + private final String code; + + private final String msg; + + ResType(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 脱敏类型 + */ + public enum CIPHER_TYPE implements IDictEnum { + + REGEX("1", "正则替换"), + ALGORITHM("2", "加密算法"); + + private final String code; + + private final String msg; + + CIPHER_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static CIPHER_TYPE getCipherType(String cipherType) { + for (CIPHER_TYPE type : CIPHER_TYPE.values()) { + if (type.code.equals(cipherType)) { + return type; + } + } + return REGEX; + } + + public String getKey() { + return code; + } + + public String getVal() { + return msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 加密规则类型 + */ + public enum ALGORITHM_CRYPTO implements IDictEnum { + + BASE64("1", "BASE64加密"), + MD5("2", "MD5加密"), + SHA_1("3", "SHA_1加密"), + SHA_256("4", "SHA_256加密"), + AES("5", "AES加密"); + + private final String code; + + private final String msg; + + ALGORITHM_CRYPTO(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static ALGORITHM_CRYPTO getAlgorithmCrypto(String algorithmCrypt) { + for (ALGORITHM_CRYPTO type : ALGORITHM_CRYPTO.values()) { + if (type.code.equals(algorithmCrypt)) { + return type; + } + } + return BASE64; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 正则规则类型 + */ + public enum REGEX_CRYPTO implements IDictEnum { + + CHINESE_NAME("1", "中文姓名"), + ID_CARD("2", "身份证号"), + FIXED_PHONE("3", "固定电话"), + MOBILE_PHONE("4", "手机号码"), + ADDRESS("5", "地址"), + EMAIL("6", "电子邮箱"), + BANK_CARD("7", "银行卡号"), + CNAPS_CODE("8", "公司开户银行联号"); + + private final String code; + + private final String msg; + + REGEX_CRYPTO(String code, String msg) { + this.code = code; + this.msg = msg; + } + + + public static REGEX_CRYPTO getRegexCrypto(String regexCrypt) { + for (REGEX_CRYPTO type : REGEX_CRYPTO.values()) { + if (type.code.equals(regexCrypt)) { + return type; + } + } + return CHINESE_NAME; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 配置方式 + */ + public enum CONFIG_TYPE implements IDictEnum { + + FORM("1", "表引导模式"), + SCRIPT("2", "脚本模式"); + + private final String code; + + private final String msg; + + CONFIG_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 参数类型 + */ + public enum ParamType implements IDictEnum { + + STRING("String", "字符串"), + INTEGER("Integer", "整型"), + DECIMAL("Number", "浮点型"), + DATE("Date", "时间"), + LIST("List", "集合"), + LONG("Long","长整型"); + + private final String code; + + private final String msg; + + ParamType(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static Object parse(ParamType paramType, Object obj) throws ParseException { + if (obj == null) { + return null; + } + switch (paramType) { + case STRING: + return obj.toString(); + + case DECIMAL: + return new BigDecimal(obj.toString()).doubleValue(); + + case INTEGER: + return java.lang.Integer.parseInt(obj.toString()); + + case LIST: + return (java.util.List) obj; + + case LONG: + return Long.valueOf(obj.toString()); + + case DATE: + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + return sdf.parse(obj.toString()); + } + return null; + } + + public static ParamType getParamType(String paramType) { + for (ParamType type : ParamType.values()) { + if (type.code.equals(paramType)) { + return type; + } + } + return STRING; + } + + public static String parse(String paramType){ + //Integer + //Long + //number + //Date + //List + //string + return null; + } + + @Override + public java.lang.String getCode() { + return code; + } + + @Override + public java.lang.String getMsg() { + return msg; + } + } + + /** + * 请求方式 + */ + public enum REQ_METHOD implements IDictEnum { + + GET("GET", "get請求"), + POST("POST", "post請求"); + + private final String code; + + private final String msg; + + REQ_METHOD(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * SQL操作符 + */ + public enum WHERE_TYPE implements IDictEnum{ + + EQUALS("=", "=", "等于"), + NOT_EQUALS("!=", "!=", "不等于"), + LIKE("LIKE", "LIKE", "全模糊查询"), + LIKE_LEFT("LIKE%", "LIKE", "左模糊查询"), + LIKE_RIGHT("%LIKE", "LIKE", "右模糊查询"), + GREATER_THAN(">", ">", "大于"), + GREATER_THAN_EQUALS(">=", ">=", "大于等于"), + LESS_THAN("<", "<", "小于"), + LESS_THAN_EQUALS("<=", "<=", "小于等于"), + NULL("isNull", "IS NULL", "是否为空"), + NOT_NULL("isNotNull", "IS NOT NULL", "是否不为空"), + IN("in", "IN", "IN"); + + private final String type; + + private final String key; + + private final String desc; + + WHERE_TYPE(String type, String key, String desc) { + this.type = type; + this.key = key; + this.desc = desc; + } + + public static WHERE_TYPE getWhereType(String whereType) { + for (WHERE_TYPE type : WHERE_TYPE.values()) { + if (type.type.equals(whereType)) { + return type; + } + } + return EQUALS; + } + + public String getType() { + return type; + } + + public String getKey() { + return key; + } + + public String getDesc() { + return desc; + } + + @Override + public String getCode() { + return type; + } + + @Override + public String getMsg() { + return desc; + } + } + + /** + * 请求方式 + */ + public enum PARAM_NULL implements IDictEnum { + + NULL("1", "可以为空"), + NOT_NULL("0", "不能为空"); + + private final String code; + + private final String msg; + + PARAM_NULL(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + public enum CipherType implements IDictEnum { + + REGEX("1", "正则替换"), + ALGORITHM("2", "加密算法"); + + private final String key; + + private final String val; + + CipherType(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + public String getVal() { + return val; + } + + public static CipherType getCipherType(String cipherType) { + for (CipherType type : CipherType.values()) { + if (type.key.equals(cipherType)) { + return type; + } + } + return REGEX; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataStatusEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataStatusEnum.java new file mode 100644 index 00000000..991fda2e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataStatusEnum.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum DataStatusEnum implements IDictEnum{ + SUCCESS("00", "成功"), + + FAILED("01", "失败"), + OTHER("99", "其他"), + ; + private final String code; + private final String msg; + + DataStatusEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/EnableState.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/EnableState.java new file mode 100644 index 00000000..884566a0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/EnableState.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum EnableState implements IDictEnum { + + DISABLE("1", "失败"), + ENABLE("0", "成功"); + + private final String code; + private final String msg; + EnableState(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/FileTypeEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/FileTypeEnum.java new file mode 100644 index 00000000..215c3fba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/FileTypeEnum.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +/** + * 文件类型枚举 + * @ClassName : FileType + * @Author : sky + * @Date: 2023-09-13 13:25 + */ +public enum FileTypeEnum implements IDictEnum { + /** + * 文件类型,文件名称 + */ + LINE_HOUR("lineHour", "获取线路小时客流指标"), + LINE_DAY("lineDay", "获取线路每日客流指标"), + LINE_MONTH("lineMonth", "获取线路每月客流指标"), + STATION_HOUR("stationHour","获取线路站点小时客流指标"), + STATION_DAY("stationDay", "获取线路站点每日客流指标"), + STATION_MONTH("stationMonth", "获取线路站点每月客流指标"), + STATION_TRANS_HOUR("stationTransHour","获取线路站点小时换乘指标"), + STATION_TRANS_DAY("stationTransDay", "获取线路站点每日换乘指标"), + STATION_TRNAS_MONTH("stationTrnasMonth", "站点换乘月指标"), + STATION_FREQ_DAY("stationFreqDay", "站点常乘客日指标"), + STATION_FREQ_MONTH("stationFreqMonth","站点常乘客日指标"), + STATION_FREQ_TRANS_DAY("stationFreqTransDay","站点常乘客换乘月日指标"), + STATION_FREQ_TRANS_MONTH("stationFreqTransMonth", "站点常乘客换乘月指标"), + ROUTE("routeMetricDay","班次客流量"), + ; + + FileTypeEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + private String code; + + private String msg; + + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + + public static FileTypeEnum getEnum(String fileType) { + if (fileType == null) { + return null; + } + FileTypeEnum[] values = FileTypeEnum.values(); + for (FileTypeEnum value : values) { + if (value.getCode().equals(fileType)) { + return value; + } + } + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/IDictEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/IDictEnum.java new file mode 100644 index 00000000..38399448 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/IDictEnum.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +/** + * 字段代码通用枚举接口 + * 便于统一方式处理 + * + * @author zhouliang + */ +public interface IDictEnum { + + public String getCode(); + + public String getMsg(); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/OrgCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/OrgCrypto.java new file mode 100644 index 00000000..faf64efd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/OrgCrypto.java @@ -0,0 +1,124 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public class OrgCrypto { + /** + * @ClassName : OrgInfoStatus + * @Description : + * @Author : sky + * @Date: 2023-07-13 17:02 + */ + public enum OrgInfoStatusCrypto implements IDictEnum { + DOWN("1", "停用"), + UP("0", "正常"), + DUE("2", "到期"); + + private final String key; + + private final String val; + + OrgInfoStatusCrypto(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } + } + + /** + * @ClassName : OrgStatus + * @Description : 机构状态枚举类 + * @Author : sky + * @Date: 2023-09-07 11:31 + */ + public enum OrgStatus implements IDictEnum { + + NORMAL("0", "正常"), + STOP("1", "停用"), + END("2", "到期"); + + private final String code; + + private final String msg; + + OrgStatus(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * @ClassName : OrgType + * @Description : + * @Author : sky + * @Date: 2023-09-07 20:51 + */ + public enum OrgType implements IDictEnum { + + /** + * 01.国家机关; + * 02.全额事业单位; + * 03.差额事业单位; + * 04.自收自支事业单位; + * 05.有限责任公司; + * 06.股份有限公司; + * 07.合伙企业; + * 08.办事处(代表处、联络处); + * 09.社会团体; + * 10.独资企业; + * 11.民办非企业单位; + * 12.其他 + */ + GJJG("01", "国家机关"), + SYDW("02", "事业单位"), + YXGS("05", "有限责任公司"), + GFGS("06", "股份有限公司"), + HHQY("07", "合伙企业"), + BSC("08", "办事处(代表处、联络处)"), + SHTT("09", "社会团体"), + DZQY("10", "独资企业"), + MBFQYDW("11", "民办非企业单位"), + OTHER("12", "其他"), + ; + + private final String code; + + private final String msg; + + OrgType(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/RegexCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/RegexCrypto.java new file mode 100644 index 00000000..b132b435 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/RegexCrypto.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum RegexCrypto implements IDictEnum { + + CHINESE_NAME("1", "中文姓名"), + ID_CARD("2", "身份证号"), + FIXED_PHONE("3", "固定电话"), + MOBILE_PHONE("4", "手机号码"), + ADDRESS("5", "地址"), + EMAIL("6", "电子邮箱"), + BANK_CARD("7", "银行卡号"), + CNAPS_CODE("8", "公司开户银行联号"); + + private final String key; + + private final String val; + + RegexCrypto(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + public String getVal() { + return val; + } + + public static RegexCrypto getRegexCrypto(String regexCrypt) { + for (RegexCrypto type : RegexCrypto.values()) { + if (type.key.equals(regexCrypt)) { + return type; + } + } + return CHINESE_NAME; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/WhereType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/WhereType.java new file mode 100644 index 00000000..6f2a0d70 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/WhereType.java @@ -0,0 +1,60 @@ +// package com.jiuyv.sptcc.agile.dataservice.dto.enums; +// +// public enum WhereType implements IDictEnum { +// +// EQUALS("1", "=", "等于"), +// NOT_EQUALS("2", "!=", "不等于"), +// LIKE("3", "LIKE", "全模糊查询"), +// LIKE_LEFT("4", "LIKE", "左模糊查询"), +// LIKE_RIGHT("5", "LIKE", "右模糊查询"), +// GREATER_THAN("6", ">", "大于"), +// GREATER_THAN_EQUALS("7", ">=", "大于等于"), +// LESS_THAN("8", "<", "小于"), +// LESS_THAN_EQUALS("9", "<=", "小于等于"), +// NULL("10", "IS NULL", "是否为空"), +// NOT_NULL("11", "IS NOT NULL", "是否不为空"), +// IN("12", "IN", "IN"); +// +// private final String type; +// +// private final String key; +// +// private final String desc; +// +// WhereType(String type, String key, String desc) { +// this.type = type; +// this.key = key; +// this.desc = desc; +// } +// +// public String getType() { +// return type; +// } +// +// public String getKey() { +// return key; +// } +// +// public String getDesc() { +// return desc; +// } +// +// public static WhereType getWhereType(String whereType) { +// for (WhereType type : WhereType.values()) { +// if (type.type.equals(whereType)) { +// return type; +// } +// } +// return EQUALS; +// } +// +// @Override +// public String getCode() { +// return key; +// } +// +// @Override +// public String getMsg() { +// return desc; +// } +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/DbSchema.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/DbSchema.java new file mode 100644 index 00000000..d334f04b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/DbSchema.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 数据源连接信息Model + */ +public class DbSchema implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主机 + */ + @NotBlank(message = "主机不能为空") + private String host; + + /** + * 端口 + */ + @NotNull(message = "端口不能为空") + private Integer port; + + /** + * 用户名 + */ + @NotBlank(message = "用户名不能为空") + private String username; + + /** + * 密码 + */ + @NotBlank(message = "密码不能为空") + private String password; + + /** + * 数据库 + */ + private String dbName; + + /** + * 服务名 + */ + private String sid; + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public Integer getPort() { + return port; + } + + public void setPort(Integer port) { + this.port = port; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getDbName() { + return dbName; + } + + public void setDbName(String dbName) { + this.dbName = dbName; + } + + public String getSid() { + return sid; + } + + public void setSid(String sid) { + this.sid = sid; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ExecuteConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ExecuteConfig.java new file mode 100644 index 00000000..929b34b9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ExecuteConfig.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.List; + +/** + * 执行配置信息Model + */ +public class ExecuteConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + + /** + * 数据源 + */ + @NotNull(message = "数据源不能为空") + private Long sourceId; + + /** + * 配置方式 + */ + @NotBlank(message = "配置方式不能为空") + @EnumCheckValue(value = DataApiEnum.CONFIG_TYPE.class) + private String configType; + + /** + * 数据库表主键 + */ + private Long tableId; + + /** + * 数据库表 + */ + private String tableName; + + /** + * 表字段列表 + */ + @Valid + private List fieldParams; + + /** + * 解析SQL + */ + private String sqlText; + + public Long getSourceId() { + return sourceId; + } + + public void setSourceId(Long sourceId) { + this.sourceId = sourceId; + } + + public String getConfigType() { + return configType; + } + + public void setConfigType(String configType) { + this.configType = configType; + } + + public Long getTableId() { + return tableId; + } + + public void setTableId(Long tableId) { + this.tableId = tableId; + } + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public List getFieldParams() { + return fieldParams; + } + + public void setFieldParams(List fieldParams) { + this.fieldParams = fieldParams; + } + + public String getSqlText() { + return sqlText; + } + + public void setSqlText(String sqlText) { + this.sqlText = sqlText; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldParam.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldParam.java new file mode 100644 index 00000000..804d4c84 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldParam.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import java.io.Serializable; + +/** + * 字段信息Model + */ +public class FieldParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 列名 + */ + private String columnName; + + /** + * 数据类型 + */ + private String dataType; + + /** + * 数据长度 + */ + private Integer dataLength; + + /** + * 数据精度 + */ + private Integer dataPrecision; + + /** + * 数据小数位 + */ + private Integer dataScale; + + /** + * 是否主键 + */ + private String columnKey; + + /** + * 是否允许为空 + */ + private String columnNullable; + + /** + * 列的序号 + */ + private Integer columnPosition; + + /** + * 列默认值 + */ + private String dataDefault; + + /** + * 列注释 + */ + private String columnComment; + + /** + * 作为请求参数 + */ + private String reqable; + + /** + * 作为返回参数 + */ + private String resable; + + public String getColumnName() { + return columnName; + } + + public void setColumnName(String columnName) { + this.columnName = columnName; + } + + public String getDataType() { + return dataType; + } + + public void setDataType(String dataType) { + this.dataType = dataType; + } + + public Integer getDataLength() { + return dataLength; + } + + public void setDataLength(Integer dataLength) { + this.dataLength = dataLength; + } + + public Integer getDataPrecision() { + return dataPrecision; + } + + public void setDataPrecision(Integer dataPrecision) { + this.dataPrecision = dataPrecision; + } + + public Integer getDataScale() { + return dataScale; + } + + public void setDataScale(Integer dataScale) { + this.dataScale = dataScale; + } + + public String getColumnKey() { + return columnKey; + } + + public void setColumnKey(String columnKey) { + this.columnKey = columnKey; + } + + public String getColumnNullable() { + return columnNullable; + } + + public void setColumnNullable(String columnNullable) { + this.columnNullable = columnNullable; + } + + public Integer getColumnPosition() { + return columnPosition; + } + + public void setColumnPosition(Integer columnPosition) { + this.columnPosition = columnPosition; + } + + public String getDataDefault() { + return dataDefault; + } + + public void setDataDefault(String dataDefault) { + this.dataDefault = dataDefault; + } + + public String getColumnComment() { + return columnComment; + } + + public void setColumnComment(String columnComment) { + this.columnComment = columnComment; + } + + public String getReqable() { + return reqable; + } + + public void setReqable(String reqable) { + this.reqable = reqable; + } + + public String getResable() { + return resable; + } + + public void setResable(String resable) { + this.resable = resable; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldRule.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldRule.java new file mode 100644 index 00000000..69e4d33a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldRule.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 字段信息Model + */ +public class FieldRule implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 字段名称 + */ + @NotBlank(message = "字段名称不能为空") + private String fieldName; + /** + * 脱敏类型 + */ + @NotNull(message = "脱敏类型不能为空") + private String cipherType; + /** + * 规则类型 + */ + @NotNull(message = "规则类型不能为空") + private String cryptType; + + public String getFieldName() { + return fieldName; + } + + public void setFieldName(String fieldName) { + this.fieldName = fieldName; + } + + public String getCipherType() { + return cipherType; + } + + public void setCipherType(String cipherType) { + this.cipherType = cipherType; + } + + public String getCryptType() { + return cryptType; + } + + public void setCryptType(String cryptType) { + this.cryptType = cryptType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/RateLimit.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/RateLimit.java new file mode 100644 index 00000000..41938541 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/RateLimit.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 限流信息Model + */ +public class RateLimit implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 是否限流:0:否,1:是 + */ + @NotNull(message = "是否限流不能为空") + private String enable; + + /** + * 请求次数默认5次 + */ + private Integer times = 5; + + /** + * 请求时间范围默认60秒 + */ + private Integer seconds = 60; + + public String getEnable() { + return enable; + } + + public void setEnable(String enable) { + this.enable = enable; + } + + public Integer getTimes() { + return times; + } + + public void setTimes(Integer times) { + this.times = times; + } + + public Integer getSeconds() { + return seconds; + } + + public void setSeconds(Integer seconds) { + this.seconds = seconds; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqParam.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqParam.java new file mode 100644 index 00000000..428a2125 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqParam.java @@ -0,0 +1,116 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 请求参数信息Model + */ +public class ReqParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 参数名称 + */ + @NotBlank(message = "参数名称不能为空") + private String paramName; + + /** + * 是否为空 + */ + @NotNull(message = "是否为空不能为空") + private String nullable; + + /** + * 描述 + */ + @NotBlank(message = "描述不能为空") + private String paramComment; + + /** + * 操作符 + */ + @NotNull(message = "操作符不能为空") + @EnumCheckValue(value = DataApiEnum.WHERE_TYPE.class,isNullable = true) + private String whereType; + + /** + * 参数类型 + */ + @NotNull(message = "参数类型不能为空") + @EnumCheckValue(DataApiEnum.ParamType.class) + private String paramType; + + /** + * 示例值 + */ + @NotBlank(message = "示例值不能为空") + private String exampleValue; + + /** + * 默认值 + */ + @NotBlank(message = "默认值不能为空") + private String defaultValue; + + public String getParamName() { + return paramName; + } + + public void setParamName(String paramName) { + this.paramName = paramName; + } + + public String getNullable() { + return nullable; + } + + public void setNullable(String nullable) { + this.nullable = nullable; + } + + public String getParamComment() { + return paramComment; + } + + public void setParamComment(String paramComment) { + this.paramComment = paramComment; + } + + public String getWhereType() { + return whereType; + } + + public void setWhereType(String whereType) { + this.whereType = whereType; + } + + public String getParamType() { + return paramType; + } + + public void setParamType(String paramType) { + this.paramType = paramType; + } + + public String getExampleValue() { + return exampleValue; + } + + public void setExampleValue(String exampleValue) { + this.exampleValue = exampleValue; + } + + public String getDefaultValue() { + return defaultValue; + } + + public void setDefaultValue(String defaultValue) { + this.defaultValue = defaultValue; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqVo.java new file mode 100644 index 00000000..c633bbf7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqVo.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import java.io.Serializable; + +/** + * API请求参数 + * + * @author yulei + */ +public class ReqVo implements Serializable { + + + /** + * 报文内容 + */ + private String body; + + /** + * 签名 + */ + private String sign; + + public String getBody() { + return body; + } + + public void setBody(String body) { + this.body = body; + } + + public String getSign() { + return sign; + } + + public void setSign(String sign) { + this.sign = sign; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiAddRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiAddRequest.java new file mode 100644 index 00000000..ea31c1cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiAddRequest.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; + +import java.io.Serializable; + +/** + *

+ * 数据API信息表 实体DTO + *

+ */ +public class ApiAddRequest extends ApiDtoBase implements Serializable { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiCopyRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiCopyRequest.java new file mode 100644 index 00000000..9c38a1ea --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiCopyRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @ClassName : ApiCopyRequest + * @Description : + * @Author : sky + * @Date: 2023-09-04 19:05 + */ +public class ApiCopyRequest extends User implements Serializable { + + @NotNull(message = "apiId不能为空") + private Long apiId; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiDelRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiDelRequest.java new file mode 100644 index 00000000..01d21583 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiDelRequest.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @ClassName : ApiCopyRequest + * @Description : + * @Author : sky + * @Date: 2023-09-04 19:05 + */ +public class ApiDelRequest extends User implements Serializable { + + @NotNull(message = "apiId不能为空") + private Long apiId; + + @NotBlank(message = "recToken不能为空") + private String recToken; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiLogRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiLogRequest.java new file mode 100644 index 00000000..ded50001 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiLogRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.io.Serializable; + +/** + *

+ * api调用日志信息表 查询实体 + *

+ */ +public class ApiLogRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + + private String apiName; + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiPageRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiPageRequest.java new file mode 100644 index 00000000..4ccc1689 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiPageRequest.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.io.Serializable; + +/** + *

+ * 数据API信息表 查询实体 + *

+ */ +public class ApiPageRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + + private String apiName; + + @EnumCheckValue(value = ApiCrypto.ApiState.class,isNullable = true) + private String status; + + private String sourceId; + + @EnumCheckValue(value = DataApiEnum.API_TYPE.class,isNullable = true) + private String apiType = DataApiEnum.API_TYPE.AGILE.getCode(); + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getSourceId() { + return sourceId; + } + + public void setSourceId(String sourceId) { + this.sourceId = sourceId; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiStatusRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiStatusRequest.java new file mode 100644 index 00000000..ca3cda00 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiStatusRequest.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * API更改状态参数DTO + * + * @author yulei + **/ +public class ApiStatusRequest extends User implements Serializable { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空") + private Long apiId; + + /** + * 验证token + */ + @NotBlank(message = "recToken不能为空") + private String recToken; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUpdateRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUpdateRequest.java new file mode 100644 index 00000000..926a3430 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUpdateRequest.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + *

+ * 数据API信息表 实体DTO + *

+ */ +public class ApiUpdateRequest extends ApiDtoBase implements Serializable { + + private static final long serialVersionUID = 1L; + + @NotNull(message = "appId不能为空") + private Long apiId; + /** + * 验证token + */ + @NotBlank(message = "recToken不能为空") + private String recToken; + + @NotNull(message = "版本号不能为空") + private Long versionNum; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUserRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUserRequest.java new file mode 100644 index 00000000..232e5a8f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUserRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotNull; + +/** + * @ClassName : ApiUserRequest + * @Description : + * @Author : sky + * @Date: 2023-09-12 11:42 + */ +public class ApiUserRequest extends PageSize { + + @NotNull(message = "会员Id不能为空") + private String memberId; + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/Range.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/Range.java new file mode 100644 index 00000000..b032766c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/Range.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.base; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 范围查询 + * + * @ClassName : Range + * @Description : + * @Author : sky + * @Date: 2023-09-19 16:29 + */ +public class Range extends PageSize { + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date beginDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endDate; + + public Date getBeginDate() { + return beginDate; + } + + public void setBeginDate(Date beginDate) { + this.beginDate = beginDate; + } + + public Date getEndDate() { + return endDate; + } + + public void setEndDate(Date endDate) { + this.endDate = endDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/User.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/User.java new file mode 100644 index 00000000..66d9a2de --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/User.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.base; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +/** + * @ClassName : User + * @Description : + * @Author : sky + * @Date: 2023-09-04 18:27 + */ +public class User { + + @NotBlank(message = "用户名不能为空") + private String userName; + + @NotNull(message = "用户Id不能为空") + private Long userId; + + private String deptId; + + private String nickName; + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } + + public String getDeptId() { + return deptId; + } + + public void setDeptId(String deptId) { + this.deptId = deptId; + } + + public String getNickName() { + return nickName; + } + + public void setNickName(String nickName) { + this.nickName = nickName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/batch/DateVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/batch/DateVo.java new file mode 100644 index 00000000..c3ea6141 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/batch/DateVo.java @@ -0,0 +1,17 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.batch; + +public class DateVo { + + /** + * 请求日期 + */ + private String date; + + public String getDate() { + return date; + } + + public void setDate(String date) { + this.date = date; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/console/OrgApiAuthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/console/OrgApiAuthRequest.java new file mode 100644 index 00000000..e4569266 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/console/OrgApiAuthRequest.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 组织接口权限DTO + * + * @author yulei + **/ +public class OrgApiAuthRequest extends User implements Serializable { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * APIID + */ + @NotNull(message = "APIDS不能为空") + private Long[] apiIds; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Long[] getApiIds() { + return apiIds; + } + + public void setApiIds(Long[] apiIds) { + this.apiIds = apiIds; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/ApiDtoBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/ApiDtoBase.java new file mode 100644 index 00000000..be1baba8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/ApiDtoBase.java @@ -0,0 +1,228 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.extend; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import org.hibernate.validator.constraints.Length; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.Size; +import java.io.Serializable; +import java.util.List; + +/** + * @ClassName : ApiDtoBase + * @Description : + * @Author : sky + * @Date: 2023-09-04 18:41 + */ +public class ApiDtoBase extends User implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * API名称 + */ + @NotBlank(message = "API名称不能为空") + @Length(max = 100) + private String apiName; + + /** + * API版本 + */ + @NotBlank(message = "API版本不能为空") + @Length(max = 60) + private String apiVersion; + + /** + * API路径 + */ + @NotBlank(message = "API路径不能为空") + @Length(max = 100) + private String apiUrl; + + /** + * 请求方式 + */ + @EnumCheckValue(value = DataApiEnum.REQ_METHOD.class) + private String reqMethod; + + /** + * 返回格式 + */ + @NotBlank(message = "返回格式不能为空") + @EnumCheckValue(value = DataApiEnum.ResType.class) + private String resType; + + /** + * IP黑名单多个用英文,隔开 + */ + private String deny; + + /** + * 限流配置 + */ + @Valid + private RateLimit rateLimit; + + /** + * 执行配置 + */ + @Valid + private ExecuteConfig executeConfig; + + /** + * 请求参数 + */ + @Valid + @NotEmpty(message = "请求参数不能为空") + @Size(min = 1, message = "请求参数长度不能少于{min}位") + private List reqParams; + + /** + * 返回参数 + */ + @Valid + @NotEmpty(message = "返回字段不能为空") + @Size(min = 1, message = "返回字段长度不能少于{min}位") + private List resParams; + + /** + * 状态 + */ + @EnumCheckValue(value = DataApiEnum.API_STATUS.class,isNullable = true) + private String status = DataApiEnum.API_STATUS.WAIT.getCode(); + + /** + * 备注 + */ + @Length(max = 500) + private String remark; + + /** + * apiCode + */ + @NotBlank(message = "apiCode不能为空") + @Length(max = 20) + private String apiCode; + + private String apiType = DataApiEnum.API_TYPE.AGILE.getCode(); + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public String getDeny() { + return deny; + } + + public void setDeny(String deny) { + this.deny = deny; + } + + public RateLimit getRateLimit() { + return rateLimit; + } + + public void setRateLimit(RateLimit rateLimit) { + this.rateLimit = rateLimit; + } + + public ExecuteConfig getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(ExecuteConfig executeConfig) { + this.executeConfig = executeConfig; + } + + public List getReqParams() { + return reqParams; + } + + public void setReqParams(List reqParams) { + this.reqParams = reqParams; + } + + public List getResParams() { + return resParams; + } + + public void setResParams(List resParams) { + this.resParams = resParams; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgConfigBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgConfigBase.java new file mode 100644 index 00000000..ff93894d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgConfigBase.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.extend; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; + +/** + * 机构配置基础信息 + * + * @ClassName : OrgConfigBase + * @Author : sky + * @Date: 2023-09-06 16:23 + */ +public class OrgConfigBase extends User { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + @Length(max = 32) + private String orgNo; + + /** + * data:config:start:time + * data:config:end:time + * 配置项 + */ + @NotBlank(message = "配置key不能为空") + @Length(max = 40) + @EnumCheckValue(value = ConfigCrypot.OrgCfnKeyEnum.class) + private String configKey; + + /** + * 配置说明 + */ + @NotBlank(message = "配置说明不能为空") + @Length(max = 100) + private String configDesc; + + /** + * 配置值 + */ + @NotBlank(message = "配置值不能为空") + @Length(max = 40) + private String configValue; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 状态 + */ + @EnumCheckValue(value = ConfigCrypot.ConfigStatus.class, isNullable = true) + private String status; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigDesc() { + return configDesc; + } + + public void setConfigDesc(String configDesc) { + this.configDesc = configDesc; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgInfoBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgInfoBase.java new file mode 100644 index 00000000..12602634 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgInfoBase.java @@ -0,0 +1,192 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.extend; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 机构信息VO + * + * @author yulei + **/ +public class OrgInfoBase extends User implements Serializable { + + /** + * 会员号 + */ + private String memberId; + + /** + * 【机构名称】 + */ + @NotBlank(message = "机构名称不能为空") + @Length(max = 100) + private String orgName; + + /** + * 【机构类型】 + */ + @NotBlank(message = "机构类型不能为空") + @EnumCheckValue(OrgCrypto.OrgType.class) + private String orgType; + + /** + * 【机构描述】 + */ + @Length(max = 150) + private String orgDesc; + + /** + * 【加盐】 + */ + @NotBlank(message = "加盐不能为空") + @Length(max = 200) + private String salt; + + /** + * 【加密】 + */ + @NotBlank(message = "加密不能为空") + @Length(max = 1000) + private String encrypt; + + /** + * 【生效时间】 + */ + @NotNull(message = "生效时间不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @NotNull(message = "到期时间不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + /** + * 【ip白名单】 + */ + @Length(max = 32) + private String ip; + + /** + * 【联系人电话】 + */ + @NotBlank(message = "联系人电话不能为空") + @Length(max = 20) + private String contractTel; + + @EnumCheckValue(value = OrgCrypto.OrgStatus.class,isNullable = true) + private String status; + + /** + * 备注 + */ + @Length(max = 200) + private String remark; + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthReq.java new file mode 100644 index 00000000..ee1f72cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthReq.java @@ -0,0 +1,78 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +/** + * @ClassName : AuthReq + * @Description : 权限接口请求类 + * @Author : sky + * @Date: 2023-07-13 13:28 + */ +public class OrgAuthReq implements Serializable { + + /** + * 秘钥版本号 + */ + private String keyVersion; + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + @Length(max = 64) + private String orgCode; + + private String subOrgCode; + + @NotBlank(message = "交易码不能为空") + private String apiCode; + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") + private Date requsetTime; + + public String getKeyVersion() { + return keyVersion; + } + + public void setKeyVersion(String keyVersion) { + this.keyVersion = keyVersion; + } + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public Date getRequsetTime() { + return requsetTime; + } + + public void setRequsetTime(Date requsetTime) { + this.requsetTime = requsetTime; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthRequest.java new file mode 100644 index 00000000..955df034 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthRequest.java @@ -0,0 +1,72 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +public class OrgAuthRequest implements Serializable { + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + @Length(max = 64) + private String orgCode; + + @NotBlank(message = "交易码不能为空") + private String apiCode; + + @NotBlank(message = "机构ip不能为空") + private String ip; + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") + private Date requsetTime; + /** + * 数据时间 + */ + private Date dataDate; + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public Date getRequsetTime() { + return requsetTime; + } + + public void setRequsetTime(Date requsetTime) { + this.requsetTime = requsetTime; + } + + public Date getDataDate() { + return dataDate; + } + + public void setDataDate(Date dataDate) { + this.dataDate = dataDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigAddRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigAddRequest.java new file mode 100644 index 00000000..b8655502 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigAddRequest.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgConfigBase; + +import java.io.Serializable; + +/** + * 机构信息DTO + * + * @author yulei + **/ +public class OrgConfigAddRequest extends OrgConfigBase implements Serializable { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigEditRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigEditRequest.java new file mode 100644 index 00000000..ab21d0c4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigEditRequest.java @@ -0,0 +1,58 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgConfigBase; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 机构信息DTO + * + * @author yulei + **/ +public class OrgConfigEditRequest extends OrgConfigBase implements Serializable { + + /** + * 主键ID + */ + @NotNull(message = "配置ID不能为空") + private Long configId; + + /** + * 随机码 + */ + @NotBlank(message = "随机码不能为空") + private String recToken; + + @EnumCheckValue(value = OrgCrypto.OrgStatus.class) + private String status = OrgCrypto.OrgStatus.STOP.getCode(); + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + @Override + public String getStatus() { + return status; + } + + @Override + public void setStatus(String status) { + this.status = status; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigQueryRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigQueryRequest.java new file mode 100644 index 00000000..e1abb404 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigQueryRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.io.Serializable; + +/** + * 机构配置信息查询 + * + * @author yulei + **/ +public class OrgConfigQueryRequest extends PageSize implements Serializable { + + /** + * 机构号 + */ + private String orgNo; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgDelReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgDelReq.java new file mode 100644 index 00000000..3181ca1d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgDelReq.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; + +/** + * 删除请求 + * + * @ClassName : OrgDelReq + * @Description : + * @Author : sky + * @Date: 2023-09-07 14:05 + */ +public class OrgDelReq extends User { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 随机码 + */ + @NotBlank(message = "随机码不能为空") + private String recToken; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoAddReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoAddReq.java new file mode 100644 index 00000000..79119818 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoAddReq.java @@ -0,0 +1,13 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase; + +/** + * 机构管理信息DTO + * + * @author shu_k + **/ +public class OrgInfoAddReq extends OrgInfoBase { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoEditReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoEditReq.java new file mode 100644 index 00000000..4a96cd00 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoEditReq.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase; + +import javax.validation.constraints.NotBlank; + +/** + * 机构管理信息DTO + * + * @author shu_k + **/ +public class OrgInfoEditReq extends OrgInfoBase { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 随机码 + */ + @NotBlank(message = "随机码不能为空") + private String recToken; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoQueryReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoQueryReq.java new file mode 100644 index 00000000..51943881 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoQueryReq.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +/** + * 机构管理信息查询条件 + * + * @author shu_k + **/ +public class OrgInfoQueryReq extends PageSize { + + /** + * 【机构号】 + */ + private String orgNo; + + /** + * 【机构名称】 + */ + private String orgName; + + /** + * 【机构类型】 + */ + private String orgType; + + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + + /** + * 会员号 + */ + private String mermberId; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getMermberId() { + return mermberId; + } + + public void setMermberId(String mermberId) { + this.mermberId = mermberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoStatusReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoStatusReq.java new file mode 100644 index 00000000..0cafb3c0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoStatusReq.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 机构更改状态DTO + * + * @author shu_k + **/ +public class OrgInfoStatusReq extends User implements Serializable { + + @NotBlank(message = "orgNo不能为空") + private String orgNo; + + /** + * 验证token + */ + @NotBlank(message = "recToken不能为空") + private String recToken; + + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgStatisticsQueryReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgStatisticsQueryReq.java new file mode 100644 index 00000000..8a80c9f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgStatisticsQueryReq.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +/** + * 接口调用次数统计查询条件 + * + * @author shu_k + **/ +public class OrgStatisticsQueryReq extends PageSize { + + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名 + */ + private String orgName; + + /** + * 接口名称 + */ + private String apiName; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/DownLoadRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/DownLoadRequest.java new file mode 100644 index 00000000..0db95388 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/DownLoadRequest.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.FileTypeEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.util.Date; + +/** + * @ClassName : downLoadRequest + * @Description : 下载文件请求报文 + * @Author : sky + * @Date: 2023-09-13 13:24 + */ +public class DownLoadRequest { + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + @NotNull + private Date date; + + @EnumCheckValue(value = FileTypeEnum.class) + private String fileType; + @NotBlank + private String orgNo; + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + + public String getFileType() { + return fileType; + } + + public void setFileType(String fileType) { + this.fileType = fileType; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineDayPageReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineDayPageReq.java new file mode 100644 index 00000000..a0b31ed2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineDayPageReq.java @@ -0,0 +1,97 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 线路分页查询请求类 + * + * @ClassName : LineDayPageReq + * @Description : 分页查询 + * @Author : sky + * @Date: 2023-09-18 15:19 + */ +public class LineDayPageReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineHourPageReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineHourPageReq.java new file mode 100644 index 00000000..69331bc4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineHourPageReq.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 线路分页查询请求类 + * + * @ClassName : LineDayPageReq + * @Description : 分页查询 + * @Author : sky + * @Date: 2023-09-18 15:19 + */ +public class LineHourPageReq extends Range { + + + /** + * 线路名称 + */ + private String lineName; + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + + private Long hour; + + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getHour() { + return hour; + } + + public void setHour(Long hour) { + this.hour = hour; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineInfoReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineInfoReq.java new file mode 100644 index 00000000..44fd25a6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineInfoReq.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + + +/** + * 线路基础信息列表请求对象 + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineInfoReq { + /** + * 线路名称 + */ + private String lineName; + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineMetricMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineMetricMonthReq.java new file mode 100644 index 00000000..08f6fcca --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineMetricMonthReq.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricMonthReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineStationInfoReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineStationInfoReq.java new file mode 100644 index 00000000..cfd98316 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineStationInfoReq.java @@ -0,0 +1,46 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +/** + * 站点基础信息对象 tbl_prd_base_line_station + * + * @author ruoyi + * @date 2023-09-19 + */ +public class LineStationInfoReq { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 方向 + */ + private String up; + /** + * 站序 + */ + private Long levels; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/RouteMetricDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/RouteMetricDayReq.java new file mode 100644 index 00000000..d2a83006 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/RouteMetricDayReq.java @@ -0,0 +1,135 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteMetricDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 起点 + */ + private String startStation; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 终点 + */ + private String endStation; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 路单类型 + */ + private String waybillType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getWaybillType() { + return waybillType; + } + + public void setWaybillType(String waybillType) { + this.waybillType = waybillType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricDayReq.java new file mode 100644 index 00000000..997376f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricDayReq.java @@ -0,0 +1,93 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricMonthReq.java new file mode 100644 index 00000000..3df9e634 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricMonthReq.java @@ -0,0 +1,89 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_station_freq_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricMonthReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + + @Override + public String toString() { + return "StationFreqMetricMonthReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", metricMonth='" + metricMonth + '\'' + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransDayReq.java new file mode 100644 index 00000000..9068861c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransDayReq.java @@ -0,0 +1,102 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + @Override + public String toString() { + return "StationFreqTransDayReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", metricDate=" + metricDate + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransMonthReq.java new file mode 100644 index 00000000..39b6df5c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransMonthReq.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonthReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricDayReq.java new file mode 100644 index 00000000..2fb8f4ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricDayReq.java @@ -0,0 +1,79 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricHourReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricHourReq.java new file mode 100644 index 00000000..445a7c96 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricHourReq.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricHourReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 时间 + */ + private Integer hour; + + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Integer getHour() { + return hour; + } + + public void setHour(Integer hour) { + this.hour = hour; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricMonthReq.java new file mode 100644 index 00000000..b0fbb261 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricMonthReq.java @@ -0,0 +1,90 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricMonthReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + + @Override + public String toString() { + return "StationMetricMonthReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", metricMonth='" + metricMonth + '\'' + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransDayReq.java new file mode 100644 index 00000000..04b55aa8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransDayReq.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransDayReq extends PageSize { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + @Override + public String toString() { + return "StationTransDayReq{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransHourReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransHourReq.java new file mode 100644 index 00000000..aae32954 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransHourReq.java @@ -0,0 +1,119 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransHourReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 时间 + */ + private Integer hour; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Integer getHour() { + return hour; + } + + public void setHour(Integer hour) { + this.hour = hour; + } + + @Override + public String toString() { + return "StationTransHourReq{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", hour=" + hour + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransMonthReq.java new file mode 100644 index 00000000..8170a0cd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransMonthReq.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransMonthReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + + @Override + public String toString() { + return "StationTransMonthReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth=" + metricMonth + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineDayReqRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineDayReqRequest.java new file mode 100644 index 00000000..fece24e0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineDayReqRequest.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +public class LineDayReqRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineHourRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineHourRequest.java new file mode 100644 index 00000000..7fa20838 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineHourRequest.java @@ -0,0 +1,50 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 线路分页查询请求类 + * + * @ClassName : LineDayPageReq + * @Description : 分页查询 + * @Author : sky + * @Date: 2023-09-18 15:19 + */ +public class LineHourRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineMonthRequest.java new file mode 100644 index 00000000..d75dcc77 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineMonthRequest.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMonthRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 指标月份 + */ + @NotNull(message = "月份不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/RouteDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/RouteDayRequest.java new file mode 100644 index 00000000..767cda5d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/RouteDayRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationDayRequest.java new file mode 100644 index 00000000..16c5f0cf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationDayRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqDayRequest.java new file mode 100644 index 00000000..f1453961 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqDayRequest.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqMonthRequest.java new file mode 100644 index 00000000..36f8ddd2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqMonthRequest.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMonthRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransDayRequest.java new file mode 100644 index 00000000..569db922 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransDayRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransMonthRequest.java new file mode 100644 index 00000000..e376c30d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransMonthRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonthRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationHourRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationHourRequest.java new file mode 100644 index 00000000..6b051f3a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationHourRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationHourRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationMonthRequest.java new file mode 100644 index 00000000..5d23069f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationMonthRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMonthRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransDayRequest.java new file mode 100644 index 00000000..eb2702f6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransDayRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransDayRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransHourRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransHourRequest.java new file mode 100644 index 00000000..a21b360c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransHourRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransHourRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransMonthRequest.java new file mode 100644 index 00000000..18686e44 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransMonthRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransMonthRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "月份不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/CentimeDelayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/CentimeDelayReq.java new file mode 100644 index 00000000..d3133471 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/CentimeDelayReq.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 延迟上送比率对象 tbl_qa_centime_delay + * + * @author shu_k + * @date 2023-09-20 + */ +public class CentimeDelayReq extends Range { + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/PosMatchRateReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/PosMatchRateReq.java new file mode 100644 index 00000000..9aedeff1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/PosMatchRateReq.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * Pos匹配率对象 tbl_qa_pos_match_rate + * + * @author shu_k + * @date 2023-09-20 + */ +public class PosMatchRateReq extends Range { + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteDailyReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteDailyReq.java new file mode 100644 index 00000000..a4eba18b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteDailyReq.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运线路条数对象 tbl_qa_route_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteDailyReq extends Range { + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 运营公司编码 + */ + private String companyCode; + + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteMissReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteMissReq.java new file mode 100644 index 00000000..04a9448a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteMissReq.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次缺失率对象 tbl_qa_route_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteMissReq extends Range { + + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteTurnoverReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteTurnoverReq.java new file mode 100644 index 00000000..ed7f817a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteTurnoverReq.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次周转时间对象 tbl_qa_route_turnover_time + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteTurnoverReq extends Range { + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 早晚高峰名称 + */ + private String hlowPeakName; + + /** + * 路单类型 + */ + private String wayBillType; + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getHlowPeakName() { + return hlowPeakName; + } + + public void setHlowPeakName(String hlowPeakName) { + this.hlowPeakName = hlowPeakName; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/StationMissReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/StationMissReq.java new file mode 100644 index 00000000..a2db38a9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/StationMissReq.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点缺失率对象 tbl_qa_station_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class StationMissReq extends Range { + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 上下行 + */ + private String up; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/VehicleDailyReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/VehicleDailyReq.java new file mode 100644 index 00000000..438233e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/VehicleDailyReq.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运车辆数对象 tbl_qa_vehicle_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class VehicleDailyReq extends Range { + + /** + * 公司编码 + */ + private String companyCode; + + /** + * 公司名称 + */ + private String companyName; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/ResParam.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/ResParam.java new file mode 100644 index 00000000..da217215 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/ResParam.java @@ -0,0 +1,111 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 返回参数信息Model + */ +public class ResParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 字段名称 + */ + @NotBlank(message = "字段名称不能为空") + private String fieldName; + + /** + * 描述 + */ + @NotBlank(message = "描述不能为空") + private String fieldComment; + + /** + * 数据类型 + */ + @NotNull(message = "数据类型不能为空") + private String dataType; + + /** + * 示例值 + */ + @NotBlank(message = "示例值不能为空") + private String exampleValue; + + /** + * 字段别名 + */ + private String fieldAliasName; + + /** + * 脱敏类型 + */ + @EnumCheckValue(value = DataApiEnum.CIPHER_TYPE.class,isNullable = true) + private String cipherType; + /** + * 规则类型 + */ + private String cryptType; + + public String getFieldName() { + return fieldName; + } + + public void setFieldName(String fieldName) { + this.fieldName = fieldName; + } + + public String getFieldComment() { + return fieldComment; + } + + public void setFieldComment(String fieldComment) { + this.fieldComment = fieldComment; + } + + public String getDataType() { + return dataType; + } + + public void setDataType(String dataType) { + this.dataType = dataType; + } + + public String getExampleValue() { + return exampleValue; + } + + public void setExampleValue(String exampleValue) { + this.exampleValue = exampleValue; + } + + public String getFieldAliasName() { + return fieldAliasName; + } + + public void setFieldAliasName(String fieldAliasName) { + this.fieldAliasName = fieldAliasName; + } + + public String getCipherType() { + return cipherType; + } + + public void setCipherType(String cipherType) { + this.cipherType = cipherType; + } + + public String getCryptType() { + return cryptType; + } + + public void setCryptType(String cryptType) { + this.cryptType = cryptType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/RespVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/RespVo.java new file mode 100644 index 00000000..4ab0454a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/RespVo.java @@ -0,0 +1,55 @@ +// package com.jiuyv.sptcc.agile.dataservice.dto.response; +// +// import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +// +// import java.io.Serializable; +// +///** +// * API返回参数 +// * +// * @author yulei +// */ +// public class RespVo implements Serializable { +// +// /** 返回码*/ +// private Integer respCode; +// +// /** 返回说明 */ +// private String respDesc; +// +// public RespVo() { +// } +// +// public RespVo(Integer code, String message) { +// this.respCode = code; +// this.respDesc = message; +// } +// +// public static RespVo ok(){ +// return new RespVo(ResultCode.SUCCESS.getCode(),ResultCode.SUCCESS.getMessage()); +// } +// +// public Integer getRespCode() { +// return respCode; +// } +// +// public void setRespCode(Integer respCode) { +// this.respCode = respCode; +// } +// +// public String getRespDesc() { +// return respDesc; +// } +// +// public void setRespDesc(String respDesc) { +// this.respDesc = respDesc; +// } +// +// @Override +// public String toString() { +// return "RespVo{" + +// "respCode='" + respCode + '\'' + +// ", respDesc='" + respDesc + '\'' + +// '}'; +// } +//} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/TreeSelect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/TreeSelect.java new file mode 100644 index 00000000..12568280 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/TreeSelect.java @@ -0,0 +1,59 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response; + +import com.fasterxml.jackson.annotation.JsonInclude; + +import java.io.Serializable; +import java.util.List; + +/** + * Treeselect树结构实体类 + * + * @author shy_k + */ +public class TreeSelect implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 节点ID + */ + private Long id; + + /** + * 节点名称 + */ + private String label; + + /** + * 子节点 + */ + @JsonInclude(JsonInclude.Include.NON_EMPTY) + private List children; + + public TreeSelect() { + + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLabel() { + return label; + } + + public void setLabel(String label) { + this.label = label; + } + + public List getChildren() { + return children; + } + + public void setChildren(List children) { + this.children = children; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiLogResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiLogResponse.java new file mode 100644 index 00000000..2d9fda1e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiLogResponse.java @@ -0,0 +1,127 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * api调用日志信息响应 + * + * @author yulei + */ +public class ApiLogResponse implements Serializable { + + private static final long serialVersionUID = 1L; + + private Long apiLogId; + private Long apiId; + private String apiName; + private String callerId; + private String callerIp; + private String callerUrl; + private Integer callerSize; + private String callerParams; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date callerDate; + private Long time; + private String msg; + private String status; + + public Long getApiLogId() { + return apiLogId; + } + + public void setApiLogId(Long apiLogId) { + this.apiLogId = apiLogId; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getCallerId() { + return callerId; + } + + public void setCallerId(String callerId) { + this.callerId = callerId; + } + + public String getCallerIp() { + return callerIp; + } + + public void setCallerIp(String callerIp) { + this.callerIp = callerIp; + } + + public String getCallerUrl() { + return callerUrl; + } + + public void setCallerUrl(String callerUrl) { + this.callerUrl = callerUrl; + } + + public Integer getCallerSize() { + return callerSize; + } + + public void setCallerSize(Integer callerSize) { + this.callerSize = callerSize; + } + + public String getCallerParams() { + return callerParams; + } + + public void setCallerParams(String callerParams) { + this.callerParams = callerParams; + } + + public Date getCallerDate() { + return callerDate; + } + + public void setCallerDate(Date callerDate) { + this.callerDate = callerDate; + } + + public Long getTime() { + return time; + } + + public void setTime(Long time) { + this.time = time; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiResponse.java new file mode 100644 index 00000000..5151e4d1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiResponse.java @@ -0,0 +1,225 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + *

+ * 数据API信息表 实体VO + *

+ */ +public class ApiResponse implements Serializable { + + private static final long serialVersionUID = 1L; + + private Long apiId; + private String status; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** 创建者id(或账户) */ + private String createBy; + /** 更新者姓名 */ + + /** 更新者id(或账户) */ + private String updateBy; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + private String remark; + private String apiName; + private String apiVersion; + private String apiUrl; + private String reqMethod; + private String deny; + private String resType; + private RateLimit rateLimit; + private ExecuteConfig executeConfig; + private List reqParams; + private List resParams; + /** + * 随机码 + */ + private String recToken; + + private String apiType; + + private String apiCode; + + private Long versionNum; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getDeny() { + return deny; + } + + public void setDeny(String deny) { + this.deny = deny; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public RateLimit getRateLimit() { + return rateLimit; + } + + public void setRateLimit(RateLimit rateLimit) { + this.rateLimit = rateLimit; + } + + public ExecuteConfig getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(ExecuteConfig executeConfig) { + this.executeConfig = executeConfig; + } + + public List getReqParams() { + return reqParams; + } + + public void setReqParams(List reqParams) { + this.reqParams = reqParams; + } + + public List getResParams() { + return resParams; + } + + public void setResParams(List resParams) { + this.resParams = resParams; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiResponse.java new file mode 100644 index 00000000..4a6c9cbd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiResponse.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +public class DataApiResponse implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名称 + */ + private String orgName; + + /** + * 接口id + */ + private Long apiId; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 接口描述 + */ + private String remark; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** + * 【生效时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResp.java new file mode 100644 index 00000000..d01dcdd7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResp.java @@ -0,0 +1,111 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import java.io.Serializable; +import java.util.Date; + +public class DataApiStatisticsResp implements Serializable { + private static final long serialVersionUID = 1L; + /** + * + */ + private Object id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名称 + */ + private String orgName; + + /** + * API ID + */ + private Object apiId; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 成功次数 + */ + private Object successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 更新时间 + */ + private Date updateTime; + + public Object getId() { + return id; + } + + public void setId(Object id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Object getApiId() { + return apiId; + } + + public void setApiId(Object apiId) { + this.apiId = apiId; + } + + public Object getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Object successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResponse.java new file mode 100644 index 00000000..1078dca4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResponse.java @@ -0,0 +1,111 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import java.io.Serializable; +import java.util.Date; + +public class DataApiStatisticsResponse implements Serializable { + private static final long serialVersionUID = 1L; + /** + * + */ + private Object id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名称 + */ + private String orgName; + + /** + * API ID + */ + private Object apiId; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 成功次数 + */ + private Object successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 更新时间 + */ + private Date updateTime; + + public Object getId() { + return id; + } + + public void setId(Object id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Object getApiId() { + return apiId; + } + + public void setApiId(Object apiId) { + this.apiId = apiId; + } + + public Object getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Object successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgApiAuthVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgApiAuthVo.java new file mode 100644 index 00000000..10b1306a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgApiAuthVo.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.console; + + +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; + +import java.io.Serializable; +import java.util.List; + +/** + * @author yulei + **/ +public class OrgApiAuthVo implements Serializable { + + + private Long[] checkedKeys; + + private List treeSelectList; + + public Long[] getCheckedKeys() { + return checkedKeys; + } + + public void setCheckedKeys(Long[] checkedKeys) { + this.checkedKeys = checkedKeys; + } + + public List getTreeSelectList() { + return treeSelectList; + } + + public void setTreeSelectList(List treeSelectList) { + this.treeSelectList = treeSelectList; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgStatisticsVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgStatisticsVo.java new file mode 100644 index 00000000..c68cfc4c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgStatisticsVo.java @@ -0,0 +1,141 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.console; + +import java.io.Serializable; + +/** + * 接口调用次数统计VO + * + * @author yulei + **/ +public class OrgStatisticsVo implements Serializable { + + /** + * id + */ + private String id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名 + */ + private String orgName; + + /** + * 接口id + */ + private String apiId; + + /** + * 成功次数 + */ + private Integer successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 版本号 + */ + private String versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 是否删除【0否,1是】 + */ + private String delFlag; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getApiId() { + return apiId; + } + + public void setApiId(String apiId) { + this.apiId = apiId; + } + + public Integer getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Integer successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgAuthResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgAuthResp.java new file mode 100644 index 00000000..1dcfdc66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgAuthResp.java @@ -0,0 +1,318 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * @ClassName : OrgAuthResp + * @Description : 机构权限返回类 + * @Author : sky + * @Date: 2023-07-13 13:31 + */ +public class OrgAuthResp implements Serializable { + + /** + * orgCode : 机构代码. ORG_CODE: VARCHAR(32) + */ + private String orgCode; + + /** + * subOrgCode 接入二级机构号 SUB_ORG_CODE: VARCHAR(32) + */ + private String subOrgCode; + + /** + * 【机构名称】 + */ + private String orgName; + /** + * 【机构类型】 + */ + private String orgType; + /** + * 【加盐】 + */ + private String salt; + /** + * 【加密】 + */ + private String encrypt; + /** + * 【ip白名单】 + */ + private String ip; + /** + * 数据起始时间 + */ + private Date dataBegin; + /** + * 数据结束时间 + */ + private Date dataEnd; + + private List apiList; + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public Date getDataBegin() { + return dataBegin; + } + + public void setDataBegin(Date dataBegin) { + this.dataBegin = dataBegin; + } + + public Date getDataEnd() { + return dataEnd; + } + + public void setDataEnd(Date dataEnd) { + this.dataEnd = dataEnd; + } + + public List getApiList() { + return apiList; + } + + public void setApiList(List apiList) { + this.apiList = apiList; + } + + public static class Api { + + /** + * 主键 + */ + private Long apiId; + + /** + * 状态(0不启用,1启用) + */ + private String status; + + /** + * 备注 + */ + private String remark; + + /** + * API名称 + */ + private String apiName; + + /** + * API版本 + */ + private String apiVersion; + + /** + * API路径 + */ + private String apiUrl; + + /** + * 请求类型 + */ + private String reqMethod; + + /** + * 返回格式 + */ + private String resType; + + /** + * 执行配置 + */ + private String executeConfig; + + /** + * 请求参数 + */ + private String reqParams; + + /** + * 返回字段 + */ + private String resParams; + + /** + * 接口交易码 + */ + private String apiCode; + /** + * 类型:1敏捷API 2系统API + */ + private String apiType; + /** + * 数据源id + */ + private String sourceId; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public String getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(String executeConfig) { + this.executeConfig = executeConfig; + } + + public String getReqParams() { + return reqParams; + } + + public void setReqParams(String reqParams) { + this.reqParams = reqParams; + } + + public String getResParams() { + return resParams; + } + + public void setResParams(String resParams) { + this.resParams = resParams; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } + + public String getSourceId() { + return sourceId; + } + + public void setSourceId(String sourceId) { + this.sourceId = sourceId; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgConfigResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgConfigResponse.java new file mode 100644 index 00000000..cb312f4b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgConfigResponse.java @@ -0,0 +1,141 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +import java.io.Serializable; + +/** + * 机构配置信息Vo + * + * @author yulei + **/ +public class OrgConfigResponse implements Serializable { + + /** + * 主键ID + */ + private Long configId; + + /** + * 机构号 + */ + private String orgNo; + + /** + * data:config:start:time + * data:config:end:time + * 配置项 + */ + private String configKey; + + /** + * 配置说明 + */ + private String configDesc; + + /** + * 配置值 + */ + private String configValue; + + /** + * 版本号 + */ + private Long versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 状态 + */ + private String status; + + + private String orgName; + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigDesc() { + return configDesc; + } + + public void setConfigDesc(String configDesc) { + this.configDesc = configDesc; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgInfoResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgInfoResp.java new file mode 100644 index 00000000..149932a4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgInfoResp.java @@ -0,0 +1,285 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 机构信息VO + * + * @author yulei + **/ +public class OrgInfoResp implements Serializable { + + /** + * 【机构号】 + */ + private String orgNo; + + /** + * 【机构名称】 + */ + private String orgName; + + /** + * 【机构类型】 + */ + private String orgType; + + /** + * 【机构描述】 + */ + private String orgDesc; + + /** + * 【加盐】 + */ + private String salt; + + /** + * 【加密】 + */ + private String encrypt; + + /** + * 【生效时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + + /** + * 【版本号】 + */ + private String versionNum; + + /** + * 【随机码】 + */ + private String recToken; + + /** + * 【删除标志】0代表存在 2代表删除 + */ + private String delFlag; + + + /** + * 【ip白名单】 + */ + private String ip; + + /** + * 【联系人电话】 + */ + private String contractTel; + + /** + * 【门户用户号】 + */ + private String memberId; + /** + * 接口id集合 + */ + private Long[] apiIds; + + /** + * 创建者id(或账户) + */ + private String createBy; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** 创建者姓名 */ + private String createByName; + + /** 更新者姓名 */ + private String updateByName; + + private Date createTime; + + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } + + public Long[] getApiIds() { + return apiIds; + } + + public void setApiIds(Long[] apiIds) { + this.apiIds = apiIds; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgKeyResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgKeyResponse.java new file mode 100644 index 00000000..6948ca19 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgKeyResponse.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +public class OrgKeyResponse { + + private String salt; + private String encrypt; + + private OrgAuthResp.Api api; + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public OrgAuthResp.Api getApi() { + return api; + } + + public void setApi(OrgAuthResp.Api api) { + this.api = api; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineDayPageRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineDayPageRes.java new file mode 100644 index 00000000..2b49b6ab --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineDayPageRes.java @@ -0,0 +1,163 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * @ClassName : LineDayPageRes + * @Description : 线路日客流返回列表报文 + * @Author : sky + * @Date: 2023-09-18 15:22 + */ +public class LineDayPageRes { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "LineDayPageRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", lineStatus='" + lineStatus + '\'' + + ", companyCode='" + companyCode + '\'' + + ", companyName='" + companyName + '\'' + + ", serviceType='" + serviceType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineInfoRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineInfoRes.java new file mode 100644 index 00000000..a75bfbf0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineInfoRes.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + + +import java.util.List; + +/** + * 线路基础信息对象 tbl_prd_base_line + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineInfoRes { + + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + public static class Line { + /** + * 线路名称 + */ + private String lineName; + + /** + * 6位线路编码 + */ + private String lineCode; + + /** + * 五位线路编码 + */ + private String lineNo; + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLineNo() { + return lineNo; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricHourRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricHourRes.java new file mode 100644 index 00000000..1bf986ef --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricHourRes.java @@ -0,0 +1,190 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 线路小时客流量统计对象 tbl_prd_line_metric_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricHourRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标小时 + */ + private Long metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * $column.columnComment + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Long getMetricHour() { + return metricHour; + } + + public void setMetricHour(Long metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "LineMetricHourRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", lineStatus='" + lineStatus + '\'' + + ", companyCode='" + companyCode + '\'' + + ", companyName='" + companyName + '\'' + + ", serviceType='" + serviceType + '\'' + + ", metricHour=" + metricHour + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricMonthRes.java new file mode 100644 index 00000000..5b08bcc4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricMonthRes.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricMonthRes { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "LineMetricMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", lineStatus='" + lineStatus + '\'' + + ", companyCode='" + companyCode + '\'' + + ", companyName='" + companyName + '\'' + + ", serviceType='" + serviceType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineStationInfoRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineStationInfoRes.java new file mode 100644 index 00000000..f85f4527 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineStationInfoRes.java @@ -0,0 +1,88 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +/** + * 站点基础信息对象 tbl_prd_base_line_station + * + * @author ruoyi + * @date 2023-09-19 + */ +public class LineStationInfoRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 方向 + */ + private String up; + + /** + * 站序 + */ + private Long levels; + + /** + * 站点名称 + */ + private String levelName; + + /** + * 五位线路编码 + */ + private String lineNo; + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + public void setUp(String up) { + this.up = up; + } + + public String getUp() { + return up; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Long getLevels() { + return levels; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public String getLevelName() { + return levelName; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLineNo() { + return lineNo; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/RouteMetricDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/RouteMetricDayRes.java new file mode 100644 index 00000000..dfcdbcca --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/RouteMetricDayRes.java @@ -0,0 +1,234 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteMetricDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 司机工号 + */ + private String driverCode; + + /** + * 起点 + */ + private String startStation; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date startTime; + + /** + * 终点 + */ + private String endStation; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 路单类型 + */ + private String waybillType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getWaybillType() { + return waybillType; + } + + public void setWaybillType(String waybillType) { + this.waybillType = waybillType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "RouteMetricDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", licensePlate='" + licensePlate + '\'' + + ", driverCode='" + driverCode + '\'' + + ", startStation='" + startStation + '\'' + + ", startTime=" + startTime + + ", endStation='" + endStation + '\'' + + ", arrivalTime=" + arrivalTime + + ", waybillType='" + waybillType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricDayRes.java new file mode 100644 index 00000000..1ee7b6bf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricDayRes.java @@ -0,0 +1,175 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqMetricDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", lineStatus='" + lineStatus + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricMonthRes.java new file mode 100644 index 00000000..87eba0ce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricMonthRes.java @@ -0,0 +1,175 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_station_freq_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricMonthRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqMetricMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", lineStatus='" + lineStatus + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransDayRes.java new file mode 100644 index 00000000..5d09220b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransDayRes.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqTransDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransMonthRes.java new file mode 100644 index 00000000..cb28dc87 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransMonthRes.java @@ -0,0 +1,178 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonthRes implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqTransMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricDayRes.java new file mode 100644 index 00000000..154c0c41 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricDayRes.java @@ -0,0 +1,161 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationMetricDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levelName='" + levelName + '\'' + + ", levels=" + levels + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricHourRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricHourRes.java new file mode 100644 index 00000000..c2354430 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricHourRes.java @@ -0,0 +1,187 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricHourRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 换乘方式 + */ + private String exchangeType; + /** + * 指标小时 + */ + private Integer metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationMetricHourRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", levelName='" + levelName + '\'' + + ", metricHour=" + metricHour + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricMonthRes.java new file mode 100644 index 00000000..c6ada8ee --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricMonthRes.java @@ -0,0 +1,160 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricMonthRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationMetricMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", levelName='" + levelName + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransDayRes.java new file mode 100644 index 00000000..c43e2977 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransDayRes.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationTransDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransHourRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransHourRes.java new file mode 100644 index 00000000..6d1f0981 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransHourRes.java @@ -0,0 +1,172 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransHourRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标小时 + */ + private Long metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getMetricHour() { + return metricHour; + } + + public void setMetricHour(Long metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransMonthRes.java new file mode 100644 index 00000000..edb7d72b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransMonthRes.java @@ -0,0 +1,175 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransMonthRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationTransMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/CentimeDelayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/CentimeDelayRes.java new file mode 100644 index 00000000..fd619e33 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/CentimeDelayRes.java @@ -0,0 +1,80 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 延迟上送比率对象 tbl_qa_centime_delay + * + * @author shu_k + * @date 2023-09-20 + */ +public class CentimeDelayRes { + + /** + * 主键 + */ + private Long id; + + /** + * 时间范围 + */ + private String timeRange; + + /** + * 延迟数量 + */ + private Long delayCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getTimeRange() { + return timeRange; + } + + public void setTimeRange(String timeRange) { + this.timeRange = timeRange; + } + + public Long getDelayCount() { + return delayCount; + } + + public void setDelayCount(Long delayCount) { + this.delayCount = delayCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/PosMatchRateRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/PosMatchRateRes.java new file mode 100644 index 00000000..06ea31f2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/PosMatchRateRes.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * Pos匹配率对象 tbl_qa_pos_match_rate + * + * @author shu_k + * @date 2023-09-20 + */ +public class PosMatchRateRes { + + /** + * 主键ID + */ + private Long id; + + /** + * 交易数量 + */ + private Long tranNum; + + /** + * 匹配数量 + */ + private Long matchNum; + + /** + * 匹配率 + */ + private BigDecimal matchRate; + + /** + * 匹配率 + */ + private Long differNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getTranNum() { + return tranNum; + } + + public void setTranNum(Long tranNum) { + this.tranNum = tranNum; + } + + public Long getMatchNum() { + return matchNum; + } + + public void setMatchNum(Long matchNum) { + this.matchNum = matchNum; + } + + public BigDecimal getMatchRate() { + return matchRate; + } + + public Long getDifferNum() { + return differNum; + } + + public void setDifferNum(Long differNum) { + this.differNum = differNum; + } + + public void setMatchRate(BigDecimal matchRate) { + this.matchRate = matchRate; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteDailyRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteDailyRes.java new file mode 100644 index 00000000..12f0495e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteDailyRes.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运线路条数对象 tbl_qa_route_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteDailyRes { + + /** + * 主键ID + */ + private Long id; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 线路数量 + */ + private Long routeCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 运营公司编码 + */ + private String companyCode; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getRouteCount() { + return routeCount; + } + + public void setRouteCount(Long routeCount) { + this.routeCount = routeCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteMissRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteMissRes.java new file mode 100644 index 00000000..0e4c5b56 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteMissRes.java @@ -0,0 +1,104 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 班次缺失率对象 tbl_qa_route_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteMissRes { + + /** + * 主键Id + */ + private Long id; + + /** + * 缺失率 + */ + private BigDecimal missRate; + + private Long differNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 电子路单数量班次 + */ + private Long routeCount; + + /** + * 调离站班次数量 + */ + private Long busStopCount; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public void setId(Long id) { + this.id = id; + } + + public Long getId() { + return id; + } + + public void setMissRate(BigDecimal missRate) { + this.missRate = missRate; + } + + public BigDecimal getMissRate() { + return missRate; + } + + public Long getDifferNum() { + return differNum; + } + + public void setDifferNum(Long differNum) { + this.differNum = differNum; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setRouteCount(Long routeCount) { + this.routeCount = routeCount; + } + + public Long getRouteCount() { + return routeCount; + } + + public void setBusStopCount(Long busStopCount) { + this.busStopCount = busStopCount; + } + + public Long getBusStopCount() { + return busStopCount; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteTurnoverRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteTurnoverRes.java new file mode 100644 index 00000000..86df561a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteTurnoverRes.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次周转时间对象 tbl_qa_route_turnover_time + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteTurnoverRes { + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 平均周转时间 + */ + private Long turnoverTime; + + /** + * 早晚高峰名称 + */ + private String hlowPeakName; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public Long getTurnoverTime() { + return turnoverTime; + } + + public void setTurnoverTime(Long turnoverTime) { + this.turnoverTime = turnoverTime; + } + + public String getHlowPeakName() { + return hlowPeakName; + } + + public void setHlowPeakName(String hlowPeakName) { + this.hlowPeakName = hlowPeakName; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/StationMissRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/StationMissRes.java new file mode 100644 index 00000000..bcbddf07 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/StationMissRes.java @@ -0,0 +1,259 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 站点缺失率对象 tbl_qa_station_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class StationMissRes { + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 驾驶员工号 + */ + private String driverCode; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date startTime; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 起点 + */ + private String startStation; + + /** + * 终点 + */ + private String endStation; + + /** + * 上下行 + */ + private String up; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 起点站级 + */ + private Long startStationLevels; + + /** + * 终点站级 + */ + private Long endStationLevels; + + /** + * 班次站点数 + */ + private Long levelNum; + + /** + * 车辆到离站数 + */ + private Long busStopNum; + + private Long differNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + /** + * 站点缺失率 + */ + private BigDecimal missRate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Long getStartStationLevels() { + return startStationLevels; + } + + public void setStartStationLevels(Long startStationLevels) { + this.startStationLevels = startStationLevels; + } + + public Long getEndStationLevels() { + return endStationLevels; + } + + public void setEndStationLevels(Long endStationLevels) { + this.endStationLevels = endStationLevels; + } + + public Long getLevelNum() { + return levelNum; + } + + public void setLevelNum(Long levelNum) { + this.levelNum = levelNum; + } + + public Long getBusStopNum() { + return busStopNum; + } + + public void setBusStopNum(Long busStopNum) { + this.busStopNum = busStopNum; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public BigDecimal getMissRate() { + return missRate; + } + + public void setMissRate(BigDecimal missRate) { + this.missRate = missRate; + } + + public Long getDifferNum() { + return differNum; + } + + public void setDifferNum(Long differNum) { + this.differNum = differNum; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDailyRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDailyRes.java new file mode 100644 index 00000000..1b5dbe5a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDailyRes.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运车辆数对象 tbl_qa_vehicle_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class VehicleDailyRes { + + /** + * 主键ID + */ + private Long id; + + /** + * 公司编码 + */ + private String companyCode; + + /** + * 公司名称 + */ + private String companyName; + + /** + * 车辆数 + */ + private Long vehicleCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getVehicleCount() { + return vehicleCount; + } + + public void setVehicleCount(Long vehicleCount) { + this.vehicleCount = vehicleCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDayResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDayResponse.java new file mode 100644 index 00000000..27d78046 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDayResponse.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.jiuyv.sptccc.agile.common.core.page.PageResult; + +public class VehicleDayResponse { + + /** + * 获取总车辆数据 + */ + private Long totalBus; + + private PageResult page; + + public Long getTotalBus() { + return totalBus; + } + + public void setTotalBus(Long totalBus) { + this.totalBus = totalBus; + } + + public PageResult getPage() { + return page; + } + + public void setPage(PageResult page) { + this.page = page; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/BaseResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/BaseResp.java new file mode 100644 index 00000000..3e67d4aa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/BaseResp.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.web; + +import java.time.LocalDateTime; + +/** + * 返回基础类 + * + * @author yulei + **/ +public class BaseResp { + + private String code; + + private String msg; + + private Integer version; + + private String seqNo; + + public String getSeqNo() { + return seqNo; + } + + public void setSeqNo(String seqNo) { + this.seqNo = seqNo; + } + + public Integer getVersion() { + return version; + } + + public void setVersion(Integer version) { + this.version = version; + } + + public LocalDateTime getRequestTime() { + return requestTime; + } + + public void setRequestTime(LocalDateTime requestTime) { + this.requestTime = requestTime; + } + + private LocalDateTime requestTime; + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/ResultCode.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/ResultCode.java new file mode 100644 index 00000000..49bceb66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/ResultCode.java @@ -0,0 +1,281 @@ +package com.jiuyv.sptcc.agile.dataservice.web; + +import com.jiuyv.sptccc.agile.common.core.IErrorCode; + +/** + * 常用API返回对象 + * Created by macro on 2019/4/19. + */ +public enum ResultCode implements IErrorCode { + /** success : 成功. */ + SUCCESS("success", "操作成功"), + PROCESS("process", "订单处理中,请稍后查询"), + + FAILED("failed", "操作失败,请刷新重试"), + VALIDATE_FAILED("input_not_valid", "输入不合法"), + SYS_ERROR("sys_error","系统异常"), + /** date_not_exist : 数据不存在*/ + DATE_NOT_EXIST("date_not_exist","数据不存在"), + /** update_failed : 更新失败*/ + UPDATE_FAILED("update_failed","更新失败,版本过期"), + /** + * 接口权限相关 + */ + FORBIDDEN("forbidden","禁止访问"), + /**该机构不存在 */ + ORG_NOT_FOUND("org_not_found","该机构不存在"), + /** org_date_time_error: 启动时间不在有效时间范围内*/ + ORG_DATE_TIME_ERROR("org_date_time_error","启动时间不在有效时间范围内"), + + /** org_ip_while_list: 该ip不在允许的白名单范围*/ + ORG_IP_WHILE_LIST("org_ip_while_list","该ip不在允许的白名单范围"), + API_NOT_RIGHT("api_not_right","api接口没有权限"), + API_BECOME_DUE("api_become_due","api接口到期,请重新授权"), + + API_HAS_ORG("api_has_org","该api已绑定了机构"), + API_ERROR_STATUS("api_error_status","数据状态不对"), + API_NOT_RELEASE("api_not_release","api接口已注销"), + API_HAS_RELEASE("api_has_release","api接口已注册"), + API_DELETE_ERROR("api_delete_error","只能删除下架和待注册API"), + API_IS_DOWN("api_is_down","机构权限为上架"), + API_CODE_HAS_USED("api_code_has_used","交易码已被使用"), + /**api_path_has_used : 该注册地址已被使用*/ + API_PATH_HAS_USED("api_path_has_used","该注册地址已被使用"), + /**api_register_check_error :注册校验异常 */ + API_REGISTER_CHECK_ERROR("api_register_check_error","注册校验异常"), + + /**api_is_used :该API已经被机构使用,不能删除 */ + API_IS_USED("api_is_used","该API已经被机构使用,不能删除"), + + /**data_time_no_right :没有改范围的数据权限 */ + DATA_TIME_NO_RIGHT("data_time_no_right","没有该范围的数据权限"), + + REPEAT_SUBMIT("duplicate_req_id", "请勿重复提交"), + AUTHORIZATION_LIMIT("authorization limit", "权限限制"), + ILLEGALLY("illegally request", "不合法请求"), + /** input_not_valid : 输入不合法. */ + INPUT_NOT_VALID("input_not_valid", "输入不合法"), + /** duplicate_req_id : 重复请求. */ + DUPLICATE_REQ_ID("duplicate_req_id","重复请求"), + + BUSINESS_ERROR("business_error","调用返回非成功"), + + /** sql_lock_exception : 乐观锁异常*/ + SQL_EXCEPTION("sql_lock_exception","乐观锁异常"), + + /** batch_exception : 跑批数据异常 */ + BATCH_EXCEPTION("batch_exception","跑批数据异常"), + + /** PORTAL_USER_HAS_BINGED : 该会员已经绑定机构,不能重复绑定 */ + PORTAL_USER_HAS_BINGED("portal_user_has_binged","该会员已经绑定机构,不能重复绑定"), + + /** FILE_DOWN_FAIL : 文件下载失败 */ + FILE_DOWN_FAIL("file_down_fail","文件下载失败"), + /** file_down_no_right : 没有文件下载权限 */ + FILE_DOWN_NO_RIGHT("file_down_no_right","没有文件下载权限"), + + /** file_down_no_exist : 文件不存在 */ + FILE_DOWN_NO_EXIST("file_down_no_exist","文件不存在"), + + /** file_down_no_exist : 文件不存在 */ + FILE_DOWN_DATA_ERROR("file_down_data_error","只保留最近一个月的文件,T+4生成文件"), + ; + private String code; + private String message; + + private ResultCode(String code, String message) { + this.code = code; + this.message = message; + } + + @Override + public String getCode() { + return code; + } + @Override + public String getMessage() { + return message; + } + + public static boolean success(String code) { + return SUCCESS.getCode().equalsIgnoreCase(code); + } + +// /** success : 成功. */ +// String SUCCESS = "success"; +// +// /** duplicate_req_id : 重复请求. */ +// String DUPLICATE_REQ_ID = "duplicate_req_id"; +// +// /** input_not_valid : 输入不合法. */ +// String INPUT_NOT_VALID = "input_not_valid"; +// +// /** sign_check_failed : 请求验签失败. */ +// String SIGN_CHECK_FAILED = "sign_check_failed"; +// +// /** sc_not_valid : 非法销售渠道代码. */ +// String SC_NOT_VALID = "sc_not_valid"; +// +// /** duplicate_order : 订单重复. */ +// String DUPLICATE_ORDER = "duplicate_order"; +// +// /** token_not_valid : token不合法. */ +// String TOKEN_NOT_VALID = "token_not_valid"; +// +// /** rule_not_found : 未找到积分规则. */ +// String RULE_NOT_FOUND = "rule_not_found"; +// +// /** order_not_found : 订单未找到. */ +// String ORDER_NOT_FOUND = "order_not_found"; +// +// /** trans_sync_failed : 交易同步失败. */ +// String TRANS_SYNC_FALIED = "trans_sync_failed"; +// +// /** trans_processing : 交易正在承兑. */ +// String TRANS_PROCESSING = "trans_processing"; +// +// /** bussiness_error : 业务错误. */ +// String BUSSINESS_ERROR = "bussiness_error"; +// +// /** smfQry_processing : 查询处理中. */ +// String SMFQRY_PROCESSING = "smfQry_processing"; +// +// /** info_error : 信息完善失败. */ +// String INFO_ERROR = "info_error"; +// +// /** user_not_found : 用户查询失败. */ +// String USER_NOT_FOUND = "user_not_found"; +// +// /** pay_not_found : 支付方式查询失败. */ +// String PAY_NOT_FOUND = "pay_not_found"; +// +// /** sec_scene_not_valid : 非法验证码类型. */ +// String SEC_SCENE_NOT_VALID = "sec_scene_not_valid"; +// +// /** msg_code_not_valid : 验证码验证失败. */ +// String MSG_CODE_NOT_VALID = "msg_code_not_valid"; +// +// /** CUSTOMER_IS_FAIL : 关联常客失败 */ +// String CUSTOMER_IS_FAIL = "customer_is_fail"; +// +// /** bussiness_processing : 业务处理中. */ +// String BUSSINESS_PROCESSING = "bussiness_processing"; +// +// /** no_acc2_account : 用户尚未开户. */ +// String NO_ACC2_ACCOUNT = "no_acc2_account"; +// +// /** not_zero_bal : 账户资产不为零. */ +// String NOT_ZERO_BAL = "not_zero_bal"; +// +// /** post_faild : 通信失败. */ +// String POST_FAILED = "post_faild"; +// +// /** token_sys_error : 系统异常. */ +// String SYS_ERROR = "sys_error"; +// +// /** already_acct_upd : 用户已开二类户. */ +// String ALREADY_ACCT_UPD = "already_acct_upd"; +// +// /** quick_relUser_is_fail: 快捷支付用户中心同步失败. */ +// String QUICK_RELUSER_IS_FAIL = "quick_relUser_is_fail"; +// +// /** acc2_exist : 该用户已开过电子账户*/ +// String ACC2_EXIST = "acc2_exist"; +// +// /** uesr_status_error : 您的用户状态为{0},不支持进行此操作 */ +// String USER_STATUS_ERROR = "user_status_error"; +// +// /** bankInnerPathFailed : 入金通道签约失败. */ +// String BANK_INNER_PATH_FAILED = "bankInnerPathFailed"; +// +// /** search_error : 查询失败*/ +// String SEARCH_ERROR = "search error"; +// +// /** mufly_query_error : 获取偏好信息失败. */ +// String MUFLY_QUERY_ERROR = "mufly_query_error"; +// +// /** user_update_error : 用户信息更新失败. */ +// String USER_UPDATE_ERROR = "user_update_error"; +// +// /** mufly_notice_error : 系统通信失败. */ +// String MUFLY_NOTICE_ERROR = "mufly_notice_error"; +// +// /** mufly_update_9999 : 常客未知错误. */ +// String MUFLY_UPDATE_9999 = "mufly_update_9999"; +// +// /** user_regist_error : 用户注册失败. */ +// String USER_REGIST_ERROR = "user_regist_error"; +// +// /** mufly_error : 常客系统异常. */ +// String MIFLY_ERROR = "mufly_error"; +// +// /** soa_error : SOA系统异常. */ +// String SOA_ERROR = "soa_error"; +// +// /** msgbuss_error : 事找人系统异常. */ +// String MSGBUSS_ERROR = "msgbuss_error"; +// +// /**user_has_regist_code :用户证件号已经注册. */ +// String USER_HAS_REGIST_CODE= "user_has_regist"; +// +// /**user_has_connect_custom :用户常客号已关联. */ +// String USER_HAS_CONNECT_CUSTOM= "user_has_connect_custom"; +// +// /**callcenter_cancel_user_fail :客服中心注销钱包账户失败. */ +// String CALLCENTER_CANCEL_USER_FAIL= "callcenter_cancel_user_fail"; +// +// /**sign_info_fail :签约失败,请稍后再试. */ +// String SIGN_INFO_FAIL = "sign_info_fail"; +// +// /** user_cancel_failed : 钱包用户注销失败. */ +// String USER_CANCEL_FAILED = "user_cancel_failed"; +// +// /** real_cert_failed : 查询实名验证失败. */ +// String REAL_CERT_FAILED = "real_cert_failed"; +// +// /** real_cert_expired : 实名验证过期. */ +// String REAL_CERT_EXPIRED = "real_cert_expired"; +// +// /** process_not_found : 未查询到进行中的流程. */ +// String PROCESS_NOT_FOUND = "process_not_found"; +// +// /** fetch_sku_msg_faile : 获取产品信息失败. */ +// String FETCH_SKU_MEG_FAILE = "fetch_sku_msg_faile"; +// +// /** SKU_STOCK_LOCK_FAILE : 库存锁定失败. */ +// String SKU_STOCK_LOCK_FAILE = "sku_stock_lock_faile"; +// +// /** sku_sale_out_faile : 产品出库失败. */ +// String SKU_SALE_OUT_FAILE = "sku_sale_out_faile"; +// +// /** sku_unlock_faile : 解锁库存失败. */ +// String SKU_UNLOCK_FAILE = "sku_unlock_faile"; +// +// /** order_no_data_null : 根据销售订单号未找到销售订单记录. */ +// String ORDER_NO_DATA_NULL = "order_no_data_null"; +// +// /** refund_num_excess : 退款数量超过原始销售数量. */ +// String REFUND_NUM_EXCESS = "refund_num_excess"; +// +// /** cancle_faile : 订单状态为已完成,不支持取消. */ +// String CANCLE_FAILE = "cancle_faile"; +// +// /** refund_amt_error : 退货总金额不能大于支付金额. */ +// String REFUND_AMT_ERROR = "refund_amt_error"; +// +// /** sales_prod_not_match : 未匹配到原销售子订单. */ +// String SALES_PROD_NOT_MATCH = "sales_prod_not_match"; +// +// /** sku_msg_not_match : 未匹配到sku信息. */ +// String SKU_MSG_NOT_MATCH = "sku_msg_not_match"; +// +// /** fetch_user_info_faile : 获取用户信息失败. */ +// String FETCH_USER_INFO_FAILE = "fetch_user_info_faile"; +// +// /** ord_amt_vali_faile : 订单总金额校验失败. */ +// String ORD_AMT_VALI_FAILE = "ord_amt_vali_faile"; +// +// /** refund_amt_vali_faile : 退款金额校验失败. */ +// String REFUND_AMT_VALI_FAILE = "refund_amt_vali_faile"; + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/annotation/EnumCheckValue.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/annotation/EnumCheckValue.java new file mode 100644 index 00000000..a46b41a8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/annotation/EnumCheckValue.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.web.annotation; + + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.IDictEnum; +import com.jiuyv.sptcc.agile.dataservice.web.validator.EnumStringValidator; + +import javax.validation.Constraint; +import javax.validation.Payload; +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 注解:用于标记需要截取内容的属性 + */ +@Target({ElementType.FIELD}) +@Retention(RetentionPolicy.RUNTIME) +@Constraint(validatedBy = {EnumStringValidator.class}) +public @interface EnumCheckValue { + /** + * 枚举类型 + * @return + */ + Class> value(); + + /** + * 错误信息 + * @return + */ + String message() default "值不在枚举范围内"; + + /** + * 是否允许为空,默认不允许 + * @return + */ + boolean isNullable() default false; + + Class[] groups() default {}; + + Class[] payload() default {}; +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/DateTimeFormatConstant.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/DateTimeFormatConstant.java new file mode 100644 index 00000000..56ecc5ce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/DateTimeFormatConstant.java @@ -0,0 +1,28 @@ +// package com.jiuyv.sptcc.agile.dataservice.web.constant; +// +// /** +// * @ClassName : DateFormart +// * @Description : +// * @Author : sky +// * @Date: 2023-09-19 16:31 +// */ +// public final class DateTimeFormatConstant { +// +// private DateTimeFormatConstant() { +// throw new IllegalStateException("Utility class"); +// } +// +// public static final String YYYY = "yyyy"; +// +// public static final String YYYY_MM = "yyyy-MM"; +// +// public static final String YYYY_MM_DD = "yyyy-MM-dd"; +// +// public static final String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; +// +// public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; +// +// private static final String[] parsePatterns = {"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM", +// "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", +// "yyyy.MM.dd HH:mm", "yyyy.MM"}; +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/HttpStatus.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/HttpStatus.java new file mode 100644 index 00000000..0606ca02 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/HttpStatus.java @@ -0,0 +1,89 @@ +package com.jiuyv.sptcc.agile.dataservice.web.constant; + +/** + * 返回状态码 + * + * @author admin + */ +public class HttpStatus +{ + /** + * 操作成功 + */ + public static final int SUCCESS = 200; + + /** + * 对象创建成功 + */ + public static final int CREATED = 201; + + /** + * 请求已经被接受 + */ + public static final int ACCEPTED = 202; + + /** + * 操作已经执行成功,但是没有返回数据 + */ + public static final int NO_CONTENT = 204; + + /** + * 资源已被移除 + */ + public static final int MOVED_PERM = 301; + + /** + * 重定向 + */ + public static final int SEE_OTHER = 303; + + /** + * 资源没有被修改 + */ + public static final int NOT_MODIFIED = 304; + + /** + * 参数列表错误(缺少,格式不匹配) + */ + public static final int BAD_REQUEST = 400; + + /** + * 未授权 + */ + public static final int UNAUTHORIZED = 401; + + /** + * 访问受限,授权过期 + */ + public static final int FORBIDDEN = 403; + + /** + * 资源,服务未找到 + */ + public static final int NOT_FOUND = 404; + + /** + * 不允许的http方法 + */ + public static final int BAD_METHOD = 405; + + /** + * 资源冲突,或者资源被锁 + */ + public static final int CONFLICT = 409; + + /** + * 不支持的数据,媒体类型 + */ + public static final int UNSUPPORTED_TYPE = 415; + + /** + * 系统内部错误 + */ + public static final int ERROR = 500; + + /** + * 接口未实现 + */ + public static final int NOT_IMPLEMENTED = 501; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/validator/EnumStringValidator.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/validator/EnumStringValidator.java new file mode 100644 index 00000000..9cfdf5f3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/validator/EnumStringValidator.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.web.validator; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.IDictEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.validation.ConstraintValidator; +import javax.validation.ConstraintValidatorContext; +import java.lang.reflect.Method; + +/** + * 校验string类型的枚举 + * + * @author Administrator + */ + +public class EnumStringValidator implements ConstraintValidator { + + private static final Logger logger = LoggerFactory.getLogger(EnumStringValidator.class); + private Class> clazz; + private Boolean isNullable; + + @Override + public void initialize(EnumCheckValue constraintAnnotation) { + clazz = constraintAnnotation.value(); + isNullable = constraintAnnotation.isNullable(); + } + + /** + * Implements the validation logic. + * The state of {@code value} must not be altered. + *

+ * This method can be accessed concurrently, thread-safety must be ensured + * by the implementation. + * + * @param value object to validate + * @param context context in which the constraint is evaluated + * @return {@code false} if {@code value} does not pass the constraint + */ + @Override + public boolean isValid(String value, ConstraintValidatorContext context) { + + if (value == null) { + return Boolean.TRUE.equals(isNullable); + } + try { + Enum[] enumArr = clazz.getEnumConstants(); + for (Enum e : enumArr) { + String keyMethod = "getCode"; + Method method = e.getDeclaringClass().getMethod(keyMethod); + Object keyValue = method.invoke(e); + if ((value.equals(keyValue))) { + return true; + + } + } + + } catch (Exception e) { + logger.error("枚举校验异常:{}", e.getMessage()); + } + return false; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/RequestTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/RequestTest.java new file mode 100644 index 00000000..077b14f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/RequestTest.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.platform.commons.util.ReflectionUtils; +import org.springframework.boot.test.context.SpringBootTest; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +//@SpringBootTest(classes = RequestTest.class) +public class RequestTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.request"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/ResponseTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/ResponseTest.java new file mode 100644 index 00000000..17caaeaa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/ResponseTest.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.platform.commons.util.ReflectionUtils; +import org.springframework.boot.test.context.SpringBootTest; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +//@SpringBootTest(classes = ResponseTest.class) +public class ResponseTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.response"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/pom.xml new file mode 100644 index 00000000..9c455b9e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/pom.xml @@ -0,0 +1,267 @@ + + + + agile-data + com.jiuyv.sptcc.agile + 0.2.15 + + 4.0.0 + + agile-data-service + + + 8 + 8 + + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-validation + + + + org.springframework.boot + spring-boot-starter-actuator + + + + + io.micrometer + micrometer-registry-prometheus + + + + + + org.springframework.cloud + spring-cloud-starter-bootstrap + + + org.springframework.cloud + spring-cloud-starter-loadbalancer + + + org.springframework.cloud + spring-cloud-starter-openfeign + + + + io.github.openfeign + feign-okhttp + + + + com.squareup.okhttp3 + okhttp + ${okhttp3.version} + + + org.springframework.cloud + spring-cloud-starter-config + + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-client + + + + org.springframework.cloud + spring-cloud-starter-sleuth + + + + com.jiuyv.sptcc.agile + agile-data-api + + + + com.jiuyv.sptcc.agile + agile-mobile-message-api + + + + org.springframework.boot + spring-boot-devtools + true + + + + org.apache.commons + commons-lang3 + + + + commons-codec + commons-codec + + + + + org.apache.commons + commons-pool2 + + + + com.jcraft + jsch + ${jsch.version} + + + + com.fasterxml.jackson.core + jackson-databind + + + + org.hibernate.validator + hibernate-validator + + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + + + + + org.postgresql + postgresql + + + + + net.logstash.logback + logstash-logback-encoder + ${logstash.logback.version} + + + + + org.springframework.boot + spring-boot-starter-cache + + + + com.github.ben-manes.caffeine + caffeine + ${caffeine.version} + + + + org.springframework.boot + spring-boot-starter-aop + + + + com.github.pagehelper + pagehelper-spring-boot-starter + ${pageHelper.version} + + + + com.luhuiguo + aspose-words + 23.1 + + + + + org.springframework.boot + spring-boot-starter-test + test + + + com.h2database + h2 + test + + + + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + + org.jacoco + jacoco-maven-plugin + + + default-prepare-agent + + prepare-agent + + + + default-report + prepare-package + + report + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + true + com.jiuyv.sptcc.agile.dataservice.AgileDataApplication + + + + + maven-compiler-plugin + + 1.8 + 1.8 + UTF-8 + + lib + + + + + + + src/lib + BOOT-INF/lib/ + + **/*.jar + + + + + src/main/resources + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/AgileDataApplication.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/AgileDataApplication.java new file mode 100644 index 00000000..f7bbc51f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/AgileDataApplication.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptcc.agile.dataservice; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.cloud.netflix.eureka.EnableEurekaClient; +import org.springframework.cloud.openfeign.EnableFeignClients; +import org.springframework.scheduling.annotation.EnableScheduling; + +/** + * @author yulei + */ +@SpringBootApplication +@EnableScheduling +@EnableCaching +@EnableEurekaClient +@EnableFeignClients +public class AgileDataApplication { + private static final Logger LOGGER = LoggerFactory.getLogger(AgileDataApplication.class); + + public static void main(String[] args) { + SpringApplication.run(AgileDataApplication.class, args); + LOGGER.info("(♥◠‿◠)ノ゙ 模块启动成功゙ \n"+ + " ___ ___ ___ \n"+ + " |\\ \\ |\\ \\ / /| \n"+ + " \\ \\ \\ \\ \\ \\/ / / \n"+ + " __ \\ \\ \\ \\ \\ / / \n"+ + " |\\ \\\\_\\ \\ \\/ / / \n"+ + " \\ \\________\\ __/ / / \n"+ + " \\|________| |\\___/ / \n"+ + " \\|___|/ \n" + ); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/annotation/LogStatics.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/annotation/LogStatics.java new file mode 100644 index 00000000..56d9b651 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/annotation/LogStatics.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.common.annotation; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.ApiConstant; +import com.jiuyv.sptcc.agile.dataservice.common.enums.BusinessType; +import com.jiuyv.sptcc.agile.dataservice.common.enums.OperatorType; + +import java.lang.annotation.*; + + +/** + * 统计结构网关接口调用次数 + * + * @author admin + */ +@Target({ElementType.PARAMETER, ElementType.METHOD}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface LogStatics { + + /** + * 请求头机构号 + * 为了兼容敏捷api,机构号就不放在接口里面 + * + */ + String orgCode() default ApiConstant.HEAD_API_CODE; + + /** + * apiCode请求头 + */ + String apiCode() default ApiConstant.HEAD_API_CODE; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/ApiConstant.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/ApiConstant.java new file mode 100644 index 00000000..1482c91f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/ApiConstant.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.common.constants; + +public final class ApiConstant { + private ApiConstant() { + throw new UnsupportedOperationException(); + } + + /** + * api请求头机构号key + */ + public static final String HEAR_ORG_CODE = "orgCode"; + /** + * api请求头交易编码key + */ + public static final String HEAD_API_CODE = "apiCode"; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/Constants.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/Constants.java new file mode 100644 index 00000000..b643ac30 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/Constants.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.common.constants; + +/** + * @ClassName : Constant + * @Description : + * @Author : sky + * @Date: 2023-09-05 15:33 + */ +public final class Constants { + + /** + * 默认版本号 + */ + public static final Long VERSION = 0L; + + /** + * 默认apiCode前缀 + */ + public static final String PRE_APICODE = "API0000"; + + /** + * 横向 + */ + public static final String LINE = "-"; + + /** + * 空格 + */ + public static final String SPACE = ""; + + /** + * 副本 + */ + public static final String COPY = "-副本"; + + /** + * 副本 + */ + public static final String COPY_VERSION = "-SNAPSHOT"; + + /** + * 副本路径 + */ + public static final String COPY_PATH = "/copy"; + + /** + * 机构号 + */ + public static final String ORG_NO_PREFIX = "JGH000"; + + /** + * 机构号长度 + */ + public static final Integer ORG_NO_LENGTH = 18; + + /** + * 统一路径,public+模块名+ 业务路劲 + */ + public static final String PREFIX = "/public/agile-data/api"; + + /** + * 默认版本号 + */ + public static final String VERSION_DEFAULT = "v1.0.0"; + /** + * 斜杠 + */ + public static final String SEPARATOR = "/"; + + /** + * 双斜杠 + */ + public static final String SEPARATOR_DOUBLE = "//"; + /** + * 下载文件接口 + */ + public static final String API_CODE_DOWNLOAD = "download"; + + + public static final String SYSTEM_NAME = "system"; + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseController.java new file mode 100644 index 00000000..a1e74145 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseController.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.common.controller; + +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.StringUtilT; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.WebDataBinder; +import org.springframework.web.bind.annotation.InitBinder; + +import java.beans.PropertyEditorSupport; +import java.util.Date; +import java.util.Map; + +/** + * web层通用数据处理 + * + * @author admin + */ +public class BaseController { + protected final Logger logger = LoggerFactory.getLogger(this.getClass()); + + /** + * 将前台传递过来的日期格式的字符串,自动转化为Date类型 + */ + @InitBinder + public void initBinder(WebDataBinder binder) { + // Date 类型转换 + binder.registerCustomEditor(Date.class, new PropertyEditorSupport() { + @Override + public void setAsText(String text) { + setValue(DateUtils.parseDate(text)); + } + }); + } + + + + /** + * 更新时用的,检查params,没有则初始化 + * 放一下旧的recToken和versionNum + * + * @param recToken versionNum + * @return + */ + public Map checkParams(String recToken, Long versionNum) { + return ParamsUtil.idempotent(recToken,versionNum); + } + + /** + * 分页 + * @param page + */ + public void startPage(PageSize page, String orderStr){ + String orderBy = page.getOrderBy(); + if(!StringUtils.isBlank(orderBy)){ + String orderByString = StringUtilT.toUnderScoreCase(orderBy)+ " " + (page.isDesc()?"desc":"asc"); + PageMethod.startPage(page.getPageNum(),page.getPageSize(),orderByString); + }else if(orderStr != null){ + PageMethod.startPage(page.getPageNum(),page.getPageSize(), StringUtilT.toUnderScoreCase(orderStr) +" " +"desc"); + }else { + PageMethod.startPage(page.getPageNum(),page.getPageSize()); + } + } + /** + * 分页 + * @param page + */ + public void startPage(PageSize page){ + startPage(page,null); + } + + public R handelEx(Exception e){ + if(null == e){ + return R.fail(); + } + logger.info("请求报错:{}",e.getMessage()); + if(logger.isDebugEnabled()){ + logger.info("请求报错",e); + } + if(e instanceof BaseException){ + BaseException exception = (BaseException) e; + return R.fail(exception.getCode(),exception.getMessage()); + }else{ + return R.fail(e.getMessage()); + } + + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseEntity.java new file mode 100644 index 00000000..2fb7f8f7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseEntity.java @@ -0,0 +1,135 @@ +package com.jiuyv.sptcc.agile.dataservice.common.controller; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +/** + * Entity基类 + * + * @author admin + */ +public class BaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** 创建者姓名 */ + private String createByName; + + /** 创建时间 */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** 创建者id(或账户) */ + private String createBy; + + /** 更新者姓名 */ + private String updateByName; + + /** 更新者id(或账户) */ + private String updateBy; + + /** 更新时间 */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** 搜索值 */ + private String searchValue; + + /** 备注 */ + private String remark; + + /** 请求参数 */ + private Map params; + + /** + * @return the createByName + */ + public String getCreateByName() { + return createByName; + } + + /** + * @param createByName the createByName to set + */ + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + /** + * @return the updateByName + */ + public String getUpdateByName() { + return updateByName; + } + + /** + * @param updateByName the updateByName to set + */ + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public String getSearchValue() { + return searchValue == null ? "" : searchValue; + } + + public void setSearchValue(String searchValue) { + this.searchValue = searchValue; + } + + public String getCreateBy() { + return createBy == null ? "" : createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getUpdateBy() { + return updateBy == null ? "" : updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getRemark() { + return remark == null ? "" : remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public Map getParams() { + if (params == null) { + params = new HashMap<>(); + } + return params; + } + + public void setParams(Map params) { + this.params = params; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/core/BaseTime.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/core/BaseTime.java new file mode 100644 index 00000000..3c322e33 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/core/BaseTime.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.common.core; + +import java.time.Instant; +import java.util.Date; + +/** + * 时间对象 + * @author zhouliang + * + */ +public class BaseTime implements java.io.Serializable { + + /** default Serial Version UID*/ + private static final long serialVersionUID = 1L; + + /** 当前时区 */ + private String timeZone ="+08:00"; + + /** 当前时区 YYYY-MM-DD */ + private String dateDay; + + /** 当前时区 YYYY-MM-DD HH:MM:SS */ + private String dateTime; + + /** 当前时区日期 */ + private Date date; + + /** UTC-0 带时区时间 */ + private Instant utcTime; + + /** UTC-0 带时区时间 */ + private String utcTimeStr; + + public String getTimeZone() { + return timeZone; + } + + public void setTimeZone(String timeZone) { + this.timeZone = timeZone; + } + + public String getDateDay() { + return dateDay; + } + + public void setDateDay(String dateDay) { + this.dateDay = dateDay; + } + + public String getDateTime() { + return dateTime; + } + + public void setDateTime(String dateTime) { + this.dateTime = dateTime; + } + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + + public Instant getUtcTime() { + return utcTime; + } + + public void setUtcTime(Instant utcTime) { + this.utcTime = utcTime; + } + + public String getUtcTimeStr() { + return utcTimeStr; + } + + public void setUtcTimeStr(String utcTimeStr) { + this.utcTimeStr = utcTimeStr; + } + + public String getYearMonth() { + return dateDay.substring(0,7); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/ReqBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/ReqBase.java new file mode 100644 index 00000000..30b71ca5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/ReqBase.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.common.dto; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +/** + * @ClassName : ReqBase + * @Description : 请求类基础报文 + * @Author : sky + * @Date: 2023-07-14 10:43 + */ +public class ReqBase implements Serializable { + + /** + * 秘钥版本号 + */ + private String keyVersion; + /** + * 流水号,方便问题追踪 + */ + @NotBlank(message = "流水号不能为空") + private String seriNo; + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgCode; + /** + * 备用 + */ + private String subOrgCode; + + private String transCode; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date timestamp; + + + public String getKeyVersion() { + return keyVersion; + } + + public void setKeyVersion(String keyVersion) { + this.keyVersion = keyVersion; + } + + public String getSeriNo() { + return seriNo; + } + + public void setSeriNo(String seriNo) { + this.seriNo = seriNo; + } + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public Date getTimestamp() { + return timestamp; + } + + public void setTimestamp(Date timestamp) { + this.timestamp = timestamp; + } + + public String getTransCode() { + return transCode; + } + + public void setTransCode(String transCode) { + this.transCode = transCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/RespVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/RespVo.java new file mode 100644 index 00000000..62a4e091 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/RespVo.java @@ -0,0 +1,122 @@ +package com.jiuyv.sptcc.agile.dataservice.common.dto; + + +import java.io.Serializable; + +/** + * 返回包装对象 + * + * @author jiuyv + */ +public class RespVo extends ReqBase implements Serializable { + + /** + * 返回码 + */ + private String respCode; + + /** + * 返回说明 + */ + private String respDesc; + + /** + * 返回码 + */ + private String respSubCode; + + /** + * 返回说明 + */ + private String respSubDesc; + + /** + * 报文内容 + */ + private String body; + + /** + * 签名 + */ + private String sign; + + public RespVo() { + } + + public RespVo(String respCode, String respDesc) { + this.respCode = respCode; + this.respDesc = respDesc; + } + + /** + * @return the body + */ + public String getBody() { + return body; + } + + /** + * @param body the body to set + */ + public void setBody(String body) { + this.body = body; + } + + /** + * @return the sign + */ + public String getSign() { + return sign; + } + + /** + * @param sign the sign to set + */ + public void setSign(String sign) { + this.sign = sign; + } + + /** + * @return the respCode + */ + public String getRespCode() { + return respCode; + } + + /** + * @param respCode the respCode to set + */ + public void setRespCode(String respCode) { + this.respCode = respCode; + } + + /** + * @return the respDesc + */ + public String getRespDesc() { + return respDesc; + } + + /** + * @param respDesc the respDesc to set + */ + public void setRespDesc(String respDesc) { + this.respDesc = respDesc; + } + + public String getRespSubCode() { + return respSubCode; + } + + public void setRespSubCode(String respSubCode) { + this.respSubCode = respSubCode; + } + + public String getRespSubDesc() { + return respSubDesc; + } + + public void setRespSubDesc(String respSubDesc) { + this.respSubDesc = respSubDesc; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessStatus.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessStatus.java new file mode 100644 index 00000000..39a9e030 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessStatus.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * 操作状态 + * + * @author admin + */ +public enum BusinessStatus { + /** + * 成功 + */ + SUCCESS, + + /** + * 失败 + */ + FAIL, +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessType.java new file mode 100644 index 00000000..19fc65f2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessType.java @@ -0,0 +1,83 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * 业务操作类型 + * + * @author admin + */ +public enum BusinessType { + /** + * 其它 + */ + OTHER, + + /** + * 新增 + */ + INSERT, + + /** + * 修改 + */ + UPDATE, + + /** + * 删除 + */ + DELETE, + + /** + * 授权 + */ + GRANT, + + /** + * 导出 + */ + EXPORT, + + /** + * 导入 + */ + IMPORT, + + /** + * 强退 + */ + FORCE, + + /** + * 生成代码 + */ + GENCODE, + + /** + * 清空数据 + */ + CLEAN, + + /** + * 启用 + */ + ENABLE, + + /** + * 停用 + */ + DISABLE, + + /** + * 审核 + */ + REVIEW, + + /** + * 发布 + */ + RELEASE, + + /** + * 推送信息 + */ + SEND, +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/DeleteEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/DeleteEnum.java new file mode 100644 index 00000000..fe546784 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/DeleteEnum.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * @ClassName : deleteEnum + * @Description : + * @Author : sky + * @Date: 2023-09-07 11:34 + */ +public enum DeleteEnum { + YES("1","删除"), + NO("0","正常"); + + private final String code; + + private final String msg; + + DeleteEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public String getCode() { + return code; + } + + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/OperatorType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/OperatorType.java new file mode 100644 index 00000000..ce2df256 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/OperatorType.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * 操作人类别 + * + * @author admin + */ +public enum OperatorType { + /** + * 其它 + */ + OTHER, + + /** + * 后台用户 + */ + MANAGE, + + /** + * 手机端用户 + */ + MOBILE +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BaseException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BaseException.java new file mode 100644 index 00000000..8dc0b7a5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BaseException.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.IErrorCode; + +/** + * + * @Description: 基础异常 + * @author shu_k + * @date 2021年12月3日 下午5:55:56 + */ +public class BaseException extends RuntimeException{ + + /** + * + */ + private static final long serialVersionUID = 1L; + /** + * 错误码 + */ + private final String code; + + /** + * 错误消息 + */ + private final String defaultMessage; + + public BaseException(String defaultMessage) { + super(defaultMessage); + this.code = ResultCode.SYS_ERROR.getCode(); + this.defaultMessage = defaultMessage; + } + + public BaseException(String code, String defaultMessage) { + super(defaultMessage); + this.code = code; + this.defaultMessage = defaultMessage; + } + + public BaseException(IErrorCode iErrorCode) { + super(iErrorCode.getMessage()); + this.code = iErrorCode.getCode(); + this.defaultMessage = iErrorCode.getMessage(); + } + + public String getCode() { + return code; + } + public String getDefaultMessage() { + return defaultMessage; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BatchException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BatchException.java new file mode 100644 index 00000000..1fb874a2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BatchException.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 跑批异常 + * @author shu_k + * @date 2022年2月24日 下午4:41:03 + */ +public class BatchException extends BaseException{ + + private static final long serialVersionUID = 1L; + + + public BatchException(String msg) { + super(ResultCode.SQL_EXCEPTION.getCode(),msg); + } + + + public BatchException() { + super(ResultCode.SQL_EXCEPTION); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BusinessException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BusinessException.java new file mode 100644 index 00000000..cbab9790 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BusinessException.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.apache.commons.lang3.StringUtils; + +/** + * @Description: 业务异常 + * @author shu_k + * @date 2022年1月10日 上午11:12:41 + */ +public class BusinessException extends BaseException{ + + private static final long serialVersionUID = 1L; + + public BusinessException(String msg) { + super(ResultCode.BUSINESS_ERROR.getCode(), StringUtils.isEmpty(msg)? ResultCode.BUSINESS_ERROR.getMessage():msg); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/FailedException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/FailedException.java new file mode 100644 index 00000000..1c35b863 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/FailedException.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.apache.commons.lang3.StringUtils; + +/** + * @ClassName : FailedException + * @Description : 下单失败 + * @Author : sky + * @Date: 2022-07-29 11:19 + */ +public class FailedException extends BaseException{ + + private static final long serialVersionUID = 1L; + + public FailedException(String defaultMessage) { + super(ResultCode.FAILED.getCode(), StringUtils.isEmpty(defaultMessage)? ResultCode.FAILED.getMessage():defaultMessage); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/IdempotentException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/IdempotentException.java new file mode 100644 index 00000000..5b4172f4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/IdempotentException.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @ClassName : IdempotentException + * @Description : + * @Author : sky + * @Date: 2023-09-07 13:38 + */ +public class IdempotentException extends BaseException{ + + + public IdempotentException(String defaultMessage) { + super(ResultCode.DUPLICATE_REQ_ID.getCode(),defaultMessage); + } + + public IdempotentException(){ + super(ResultCode.DUPLICATE_REQ_ID); + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ProcessingException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ProcessingException.java new file mode 100644 index 00000000..0b1b8cc2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ProcessingException.java @@ -0,0 +1,54 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @ClassName : ProcessingException + * @Description : 处理中异常 + * @Author : sky + * @Date: 2022-07-07 16:22 + */ +public class ProcessingException extends RuntimeException { + /** + * + */ + private static final long serialVersionUID = 1L; + /** + * 错误码 + */ + private final String code; + /** + * 错误消息 + */ + private final String defaultMessage; + + /** + * 返回数据 + */ + private final Object data; + + public ProcessingException(String defaultMessage, Object data) { + this.defaultMessage = defaultMessage; + this.data = data; + this.code = ResultCode.PROCESS.getCode(); + } + + public ProcessingException(Object data) { + this.data = data; + this.code = ResultCode.PROCESS.getCode(); + this.defaultMessage = ResultCode.PROCESS.getMessage(); + } + + public String getCode() { + return code; + } + + public String getDefaultMessage() { + return defaultMessage; + } + + public Object getData() { + return data; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ServiceException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ServiceException.java new file mode 100644 index 00000000..e5778d94 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ServiceException.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * 业务异常 + * + * @author admin + */ +public final class ServiceException extends BaseException { + + private static final long serialVersionUID = 1L; + + + public ServiceException(String msg) { + super(ResultCode.API_REGISTER_CHECK_ERROR.getCode(),msg); + } + + + public ServiceException() { + super(ResultCode.API_REGISTER_CHECK_ERROR); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SqlException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SqlException.java new file mode 100644 index 00000000..40d150ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SqlException.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 乐观锁异常处理 + * @author shu_k + * @date 2022年2月23日 上午10:59:27 + */ +public class SqlException extends BaseException{ + + private static final long serialVersionUID = 1L; + + + public SqlException(String msg) { + super(ResultCode.SQL_EXCEPTION.getCode(),msg); + } + + + public SqlException() { + super(ResultCode.SQL_EXCEPTION); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SystemException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SystemException.java new file mode 100644 index 00000000..cb14c764 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SystemException.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 系统异常 + * @author shu_k + * @date 2022年1月10日 上午11:12:41 + */ +public class SystemException extends BaseException{ + + private static final long serialVersionUID = 1L; + + public SystemException(String msg) { + super(ResultCode.SYS_ERROR.getCode(),msg); + } + + + public SystemException() { + super(ResultCode.SYS_ERROR); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ValidException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ValidException.java new file mode 100644 index 00000000..89202b99 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ValidException.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 校验错误 + * @author shu_k + * @date 2022年1月5日 下午4:06:51 + */ +public class ValidException extends BaseException{ + + private static final long serialVersionUID = 1L; + public ValidException(String defaultMessage) { + super(ResultCode.VALIDATE_FAILED.getCode(), defaultMessage); + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ActuatorSecurityConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ActuatorSecurityConfig.java new file mode 100644 index 00000000..1e78694e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ActuatorSecurityConfig.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.env.Environment; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; + +@Configuration +@EnableWebSecurity +public class ActuatorSecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + Environment env; + + @Override + protected void configure(HttpSecurity security) throws Exception { + + String contextPath = env.getProperty("management.endpoints.web.base-path"); + if(StringUtils.isEmpty(contextPath)) { + contextPath = "/actuator"; + } + security.csrf().disable(); + security.authorizeRequests() + .antMatchers("/**"+contextPath+"/serviceregistry","/**"+contextPath+"/refresh") + .access("hasIpAddress(\"127.0.0.1\")") + .antMatchers("/**"+contextPath+"/**") + .authenticated() + .anyRequest() + .permitAll() + .and() + .httpBasic(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ApiMappingConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ApiMappingConfig.java new file mode 100644 index 00000000..62513688 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ApiMappingConfig.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.handler.MappingHandlerMapping; +import com.jiuyv.sptcc.agile.dataservice.handler.RequestHandler; +import com.jiuyv.sptcc.agile.dataservice.handler.RequestInterceptor; +import com.jiuyv.sptcc.agile.dataservice.service.api.impl.ApiMappingEngine; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; + + +/** + * 敏捷api初始化bean + */ +@Configuration +public class ApiMappingConfig { + + @Bean + public MappingHandlerMapping mappingHandlerMapping(RequestMappingHandlerMapping requestMappingHandlerMapping, + ApiMappingEngine apiMappingEngine, + ObjectMapper objectMapper, + AsyncTask asyncTask) { + MappingHandlerMapping mappingHandlerMapping = new MappingHandlerMapping(); + mappingHandlerMapping.setHandler(requestHandler(apiMappingEngine, objectMapper, asyncTask)); + mappingHandlerMapping.setRequestMappingHandlerMapping(requestMappingHandlerMapping); + return mappingHandlerMapping; + } + + @Bean + public RequestHandler requestHandler(ApiMappingEngine apiMappingEngine, ObjectMapper objectMapper, AsyncTask asyncTask) { + RequestHandler handler = new RequestHandler(); + handler.setApiMappingEngine(apiMappingEngine); + handler.setObjectMapper(objectMapper); + handler.setRequestInterceptor(new RequestInterceptor()); + handler.setAsyncTask(asyncTask); + return handler; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/CacheConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/CacheConfig.java new file mode 100644 index 00000000..97fd6336 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/CacheConfig.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import org.springframework.cache.CacheManager; +import org.springframework.cache.caffeine.CaffeineCache; +import org.springframework.cache.interceptor.KeyGenerator; +import org.springframework.cache.support.SimpleCacheManager; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.lang.reflect.Method; +import java.time.Duration; +import java.util.ArrayList; +import java.util.StringJoiner; + +/** + * Caffeine缓存 + * + * @author yulei + **/ +@Configuration +public class CacheConfig { + + @Bean("caffeineCacheManager") + public CacheManager cacheManager() { + SimpleCacheManager cacheManager = new SimpleCacheManager(); + ArrayList caffeineCaches = new ArrayList<>(); + for (CacheEnum cacheEnum : CacheEnum.values()) { + caffeineCaches.add(new CaffeineCache(cacheEnum.name(), + Caffeine.newBuilder().expireAfterWrite(Duration.ofSeconds(cacheEnum.second)) + .initialCapacity(cacheEnum.initSize) + .maximumSize(cacheEnum.maxSize).build())); + } + cacheManager.setCaches(caffeineCaches); + + return cacheManager; + } + + @Bean + public CustomKeyGenerator customKeyGenerator() { + return new CustomKeyGenerator(); + } + + public enum CacheEnum { + /** + * 第一个cache + **/ + FIRST_CACHE(300, 20000, 300), + /** + * 第二个cache + **/ + SECOND_CACHE(60, 10000, 200); + + private final int second; + private final long maxSize; + private final int initSize; + + CacheEnum(int second, long maxSize, int initSize) { + this.second = second; + this.maxSize = maxSize; + this.initSize = initSize; + } + + } + + public class CustomKeyGenerator implements KeyGenerator { + private static final String prefix = "CACHEABLE:"; + + @Override + public Object generate(Object o, Method method, Object... objects) { + StringJoiner joiner = new StringJoiner(":", prefix, ""); + //类名 + joiner.add(o.getClass().getSimpleName()); + //方法名 + joiner.add(method.getName()); + //方法参数 + for (Object param : objects) { + joiner.add(JacksonUtil.obj2String(param)); + } + return joiner.toString(); + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/JacksonConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/JacksonConfig.java new file mode 100644 index 00000000..0ba8a302 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/JacksonConfig.java @@ -0,0 +1,76 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.fasterxml.jackson.annotation.JsonAutoDetect; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.PropertyAccessor; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.databind.module.SimpleModule; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer; +import com.fasterxml.jackson.module.paramnames.ParameterNamesModule; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; +import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; +import java.time.format.DateTimeFormatter; +import java.util.TimeZone; + +@Configuration +public class JacksonConfig { + + @Bean + @Primary + @ConditionalOnMissingBean(ObjectMapper.class) + public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder){ + builder.simpleDateFormat(DateUtils.YYYY_MM_DD_HH_MM_SS); + ObjectMapper objectMapper = builder.createXmlMapper(false) + .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS) + .featuresToDisable(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE) + .timeZone(TimeZone.getTimeZone("Asia/Shanghai")) + .build(); + // null数据不返回 + objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); + objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); + // 反序列化时候遇到不匹配的属性并不抛出异常 + objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + // 序列化时候遇到空对象不抛出异常 + objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + // 反序列化的时候如果是无效子类型,不抛出异常 + objectMapper.configure(DeserializationFeature.FAIL_ON_INVALID_SUBTYPE, false); + // 不使用默认的dateTime进行序列化, + objectMapper.configure(SerializationFeature.WRITE_DATE_KEYS_AS_TIMESTAMPS, false); + // 数据精度问题 + SimpleModule simpleModule = new SimpleModule() + .addSerializer(Long.class, ToStringSerializer.instance) + .addSerializer(Long.TYPE, ToStringSerializer.instance) + .addSerializer(BigInteger.class, ToStringSerializer.instance) + .addSerializer(BigDecimal.class, ToStringSerializer.instance); + objectMapper.registerModule(simpleModule); + + JavaTimeModule javaTimeModule = new JavaTimeModule(); + javaTimeModule.addSerializer(LocalDateTime.class,new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD_HH_MM_SS))); + javaTimeModule.addSerializer(LocalDate.class,new LocalDateSerializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD))); + javaTimeModule.addSerializer(LocalTime.class,new LocalTimeSerializer(DateTimeFormatter.ofPattern(DateUtils.HH_MM_SS))); + javaTimeModule.addDeserializer(LocalDateTime.class,new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD_HH_MM_SS))); + javaTimeModule.addDeserializer(LocalDate.class,new LocalDateDeserializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD))); + javaTimeModule.addDeserializer(LocalTime.class,new LocalTimeDeserializer(DateTimeFormatter.ofPattern(DateUtils.HH_MM_SS))); + objectMapper.registerModule(javaTimeModule).registerModule(new ParameterNamesModule()); + return objectMapper; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/LogAspect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/LogAspect.java new file mode 100644 index 00000000..6e3f17f5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/LogAspect.java @@ -0,0 +1,140 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.annotation.LogStatics; +import com.jiuyv.sptcc.agile.dataservice.common.constants.ApiConstant; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.aspectj.lang.reflect.MethodSignature; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; +import org.springframework.web.multipart.MultipartFile; + +import javax.annotation.Resource; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; +import java.lang.reflect.Method; +import java.util.Enumeration; + +/** + * @Description: 请求日志打印和记录 + * @author shu_k + * @date 2022年4月5日 下午10:26:23 + */ +@Aspect +@Component +public class LogAspect { + + private static final Logger LOGGER = LoggerFactory.getLogger(LogAspect.class); + + @Resource + private AsyncTask asyncTask; + + @Pointcut("(execution(public * com.jiuyv.sptcc.agile.dataservice.controller..*.*(..)))") + public void controllerPointcut() { + // 切点 + } + + @Around("controllerPointcut()") + public Object doAround(ProceedingJoinPoint proceedingJoinPoint) throws Throwable { + + long startTime = System.currentTimeMillis(); + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if (attributes == null) { + return null; + } + HttpServletRequest request = attributes.getRequest(); + String requestUri = request.getRequestURI();// 请求的Uri + String ip = request.getRemoteAddr(); + String requestMethod = request.getMethod(); + Object[] arguments = getArguments(proceedingJoinPoint.getArgs()); + LOGGER.info("请求地址: {} {}", requestUri, requestMethod); + LOGGER.info("远程地址: {}", ip); + String traceId = request.getHeader("traceId"); + String spanId = request.getHeader("spanId"); + LOGGER.info("traceId: {}, spanId :{}", traceId,spanId); + this.printRequestJson(arguments); + Object result; + try { + result = proceedingJoinPoint.proceed(); + this.printRes(result); + staticsLog(request,proceedingJoinPoint,true); + } catch (Exception e) { + if(LOGGER.isDebugEnabled()){ + LOGGER.error(e.getMessage(),e); + }else { + LOGGER.error(e.getMessage()); + } + staticsLog(request,proceedingJoinPoint,false); + throw e; + } + LOGGER.info("------------- 结束 耗时:{} ms -------------", System.currentTimeMillis() - startTime); + return result; + } + + private void staticsLog(HttpServletRequest request, ProceedingJoinPoint proceedingJoinPoint, Boolean isSuccess){ + + MethodSignature signature = (MethodSignature) proceedingJoinPoint.getSignature(); + Method method = signature.getMethod(); + LogStatics annotation = method.getAnnotation(LogStatics.class); + if(annotation != null){ + String apiCode = request.getHeader(ApiConstant.HEAD_API_CODE); + String orgCode = request.getHeader(ApiConstant.HEAR_ORG_CODE); + asyncTask.doStatics(apiCode,orgCode,isSuccess); + } + + } + private Object[] getArguments(Object[] args) { + Object[] arguments = new Object[args.length]; + for (int i = 0; i < args.length; i++) { + if (args[i] instanceof ServletRequest || args[i] instanceof ServletResponse + || args[i] instanceof MultipartFile) { + continue; + } + arguments[i] = args[i]; + } + return arguments; + } + + private void printRequestJson(Object[] arguments) { + String request = JacksonUtil.parseArray(arguments); + LOGGER.info("请求参数: {}", request); + } + + private void printRes(Object obj) { + String result = null; + if (null == obj || obj instanceof ServletResponse) { + result = "****stream******"; + } + else if (obj instanceof CharSequence) { + result = (String) obj; + } + else if (obj instanceof Boolean) { + result = obj.toString(); + } + //分页查询结果不打印 + else if(obj instanceof R){ + result = JacksonUtil.obj2String(obj); + //分页不打印具体列表信息 + if(result.contains("rows")){ + int pageBegin = result.indexOf("["); + int pageEnd = result.lastIndexOf("]"); + String substring = result.substring(pageBegin+1, pageEnd); + LOGGER.info("substring: {}", substring); + result = result.replace(substring,""); + } + }else{ + result = JacksonUtil.obj2String(obj); + } + + LOGGER.info("返回结果: {}", result); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncConfig.java new file mode 100644 index 00000000..40064d5c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncConfig.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.config.async; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableAsync; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; + +import java.util.concurrent.Executor; +import java.util.concurrent.ThreadPoolExecutor; + +@EnableAsync +@Configuration +public class AsyncConfig { + + @Bean("logExecutor") + public Executor logExecutor() { + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + executor.setCorePoolSize(2); + executor.setMaxPoolSize(10); + executor.setQueueCapacity(100); + executor.setKeepAliveSeconds(30); + executor.setThreadNamePrefix("agile-async-service-"); + executor.setWaitForTasksToCompleteOnShutdown(true); + executor.setAwaitTerminationSeconds(60); + executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); + executor.initialize(); + return executor; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncTask.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncTask.java new file mode 100644 index 00000000..b25e7a1b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncTask.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.config.async; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.service.api.ApiLogService; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgStatisticsService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; + +/** + * 异步处理 + */ +@Component +public class AsyncTask { + + @Resource + private ApiLogService apiLogService; + + @Resource + private IOrgStatisticsService orgStatisticsService; + + @Async("logExecutor") + public void doTask(ApiLogEntity apiLogEntity) { + apiLogService.saveApiLog(apiLogEntity); + } + + + @Async("logExecutor") + public void doStatics(String orgNo, String apiCode,Boolean isuceess) { + orgStatisticsService.insertOrgStatistics(orgNo, apiCode ,isuceess); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/feign/FeignConfiguration.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/feign/FeignConfiguration.java new file mode 100644 index 00000000..769aa83d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/feign/FeignConfiguration.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.config.feign; + +import com.jiuyv.sptcc.agile.dataservice.utils.data.MD5; +import feign.RequestInterceptor; +import feign.RequestTemplate; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class FeignConfiguration implements RequestInterceptor { + + @Value("${spring.application.name}") + private String name; + + @Override + public void apply(RequestTemplate template) { + template.header("token", name.concat(":").concat(MD5.md5PlusSalt(name))); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpConfig.java new file mode 100644 index 00000000..9026eb7a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpConfig.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + + +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +@EnableConfigurationProperties(SftpProperties.class) +public class SftpConfig { + // 工厂 + @Bean + public SftpFactory sftpFactory(SftpProperties properties) { + return new SftpFactory(properties); + } + + // 连接池 + @Bean + public SftpPool sftpPool(SftpFactory sftpFactory) { + return new SftpPool(sftpFactory); + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpFactory.java new file mode 100644 index 00000000..aeea69e6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpFactory.java @@ -0,0 +1,69 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + +import com.jcraft.jsch.ChannelSftp; +import com.jcraft.jsch.JSch; +import com.jcraft.jsch.JSchException; +import com.jcraft.jsch.Session; +import org.apache.commons.pool2.BasePooledObjectFactory; +import org.apache.commons.pool2.DestroyMode; +import org.apache.commons.pool2.PooledObject; +import org.apache.commons.pool2.impl.DefaultPooledObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.Properties; +/** + * @ClassName : SftpFactory + * @Description : + * @Author : sky + * @Date: 2023-09-15 17:26 + */ +public class SftpFactory extends BasePooledObjectFactory { + + private static final Logger log = LoggerFactory.getLogger(SftpFactory.class); + + private SftpProperties properties; + + public SftpFactory(SftpProperties properties) { + this.properties = properties; + } + + public SftpProperties getProperties() { + return properties; + } + + @Override + public ChannelSftp create() throws Exception { + try { + log.info("初始化sftp{},{}",properties.getHost(),properties.getPort()); + JSch jsch = new JSch(); + Session sshSession = jsch.getSession(properties.getUsername(), properties.getHost(), properties.getPort()); + sshSession.setPassword(properties.getPassword()); + Properties sshConfig = new Properties(); + sshConfig.put("StrictHostKeyChecking", properties.getStrictHostKeyChecking()==null?"no":properties.getStrictHostKeyChecking()); + sshConfig.put("PreferredAuthentications", "password"); + sshConfig.put("X11Forwarding", "no"); + sshSession.setConfig(sshConfig); + sshSession.connect(properties.getSessionConnectTimeout()); + ChannelSftp channel = (ChannelSftp) sshSession.openChannel("sftp"); + channel.connect(properties.getChannelConnectTimeout()); + channel.cd(properties.getWorkPaths()); + log.info("初始化sftp完成"); + return channel; + } catch (JSchException e) { + log.error("连接sfpt失败:"+e.getMessage()); + return null; + } + } + + @Override + public PooledObject wrap(ChannelSftp channelSftp) { + return new DefaultPooledObject<>(channelSftp); + } + + @Override + public void destroyObject(PooledObject p, DestroyMode destroyMode) throws Exception { + ChannelSftp channelSftp = p.getObject(); + channelSftp.disconnect(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpPool.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpPool.java new file mode 100644 index 00000000..433e1850 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpPool.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + +import com.jcraft.jsch.ChannelSftp; +import org.apache.commons.pool2.impl.GenericObjectPool; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class SftpPool extends GenericObjectPool{ + + private static final Logger log = LoggerFactory.getLogger(SftpPool.class); + + public SftpPool(SftpFactory factory) { + super(factory,factory.getProperties().getPool()); + } + + + + /** + * 获取一个sftp连接对象 + * @return sftp连接对象 + */ + public ChannelSftp borrowObject() throws Exception { + return super.borrowObject(); + } + + /** + * 归还一个sftp连接对象 + * @param channelSftp sftp连接对象 + */ + public void returnObject(ChannelSftp channelSftp) { + if (channelSftp!=null) { + super.returnObject(channelSftp); + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpProperties.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpProperties.java new file mode 100644 index 00000000..14080580 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpProperties.java @@ -0,0 +1,182 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + +import com.jcraft.jsch.ChannelSftp; +import org.apache.commons.pool2.impl.GenericObjectPoolConfig; +import org.springframework.boot.context.properties.ConfigurationProperties; + + +@ConfigurationProperties(prefix = "sftp") +public class SftpProperties { + private String host; + private int port = 22; + private String username; + private String password; + /*** + * 工作路劲 + */ + private String workPaths; + + /** + * 忽略主机密钥检查 + */ + private String strictHostKeyChecking; + /** + * sesion连接超时 + */ + private Integer sessionConnectTimeout; + + /** + * channel连接超时 + */ + private Integer channelConnectTimeout; + + + private Pool pool = new Pool(); + + public static class Pool extends GenericObjectPoolConfig { + /** + * 连接池最大实例数 + */ + private int maxTotal = 10; + /** + * 连接池最大空闲数 + */ + private int maxIdle = 8; + /** + * 连接池最小空闲数 + */ + private int minIdle = 1; + + /** + * 控制获取不到连接时超时时间,避免无限等待 + */ + private long maxWaitMillis = 60000; + + private boolean jmxEnabled = false; + + public Pool() { + super(); + } + + @Override + public int getMaxTotal() { + return maxTotal; + } + + @Override + public void setMaxTotal(int maxTotal) { + this.maxTotal = maxTotal; + } + + @Override + public int getMaxIdle() { + return maxIdle; + } + + @Override + public void setMaxIdle(int maxIdle) { + this.maxIdle = maxIdle; + } + + @Override + public int getMinIdle() { + return minIdle; + } + + @Override + public void setMinIdle(int minIdle) { + this.minIdle = minIdle; + } + + @Override + public long getMaxWaitMillis() { + return maxWaitMillis; + } + + @Override + public void setMaxWaitMillis(long maxWaitMillis) { + this.maxWaitMillis = maxWaitMillis; + } + + @Override + public boolean getJmxEnabled() { + return jmxEnabled; + } + + public void setJmxEnabled(Boolean jmxEnabled) { + this.jmxEnabled = jmxEnabled; + } + } + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public int getPort() { + return port; + } + + public void setPort(int port) { + this.port = port; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getWorkPaths() { + return workPaths; + } + + public void setWorkPaths(String workPaths) { + this.workPaths = workPaths; + } + + public String getStrictHostKeyChecking() { + return strictHostKeyChecking; + } + + public void setStrictHostKeyChecking(String strictHostKeyChecking) { + this.strictHostKeyChecking = strictHostKeyChecking; + } + + public Integer getSessionConnectTimeout() { + return sessionConnectTimeout; + } + + public void setSessionConnectTimeout(Integer sessionConnectTimeout) { + this.sessionConnectTimeout = sessionConnectTimeout; + } + + public Integer getChannelConnectTimeout() { + return channelConnectTimeout; + } + + public void setChannelConnectTimeout(Integer channelConnectTimeout) { + this.channelConnectTimeout = channelConnectTimeout; + } + + public Pool getPool() { + return pool; + } + + public void setPool(Pool pool) { + this.pool = pool; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java new file mode 100644 index 00000000..c85f5e04 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java @@ -0,0 +1,346 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.api; + + +import com.aspose.words.Document; +import com.aspose.words.SaveFormat; +import com.aspose.words.SaveOptions; +import com.fasterxml.jackson.core.type.TypeReference; +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.console.DataApiFeign; +import com.jiuyv.sptcc.agile.dataservice.api.portal.DataApiFeignApi; +import com.jiuyv.sptcc.agile.dataservice.common.exception.ServiceException; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.*; +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import com.jiuyv.sptcc.agile.dataservice.utils.*; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import feign.Response; +import net.sf.jsqlparser.schema.Table; +import net.sf.jsqlparser.statement.select.Select; +import net.sf.jsqlparser.util.SelectUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.CollectionUtils; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletResponse; +import java.io.OutputStream; +import java.net.URLEncoder; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 数据API信息表 前端控制器 + */ +@RestController +public class ApiController extends BaseController implements DataApiFeign, DataApiFeignApi { + + private static final Logger log = LoggerFactory.getLogger(ApiController.class); + + private final AgileApiService apiService; + + public ApiController(AgileApiService apiService) { + this.apiService = apiService; + } + + @Override + public R getApiPrefixPath() { + String prefix = apiService.getApiPrefixPath(); + return R.ok(prefix); + } + + /** + * 通过ID查询信息 + * + * @param id + * @return + */ + @Override + public R getDataApiById(Long id) { + ApiEntity apiEntity = apiService.getDataApiById(id); + ApiResponse vo = entityToVo(apiEntity); + return R.ok(vo); + } + + /** + * 查询列表信息 + * + * @return + */ + @Override + public R> getDataApiList(Long sourceId) { + ApiEntity api = new ApiEntity(); + api.setSourceId(sourceId); + List list = apiService.queryByList(api); + List collect = new ArrayList<>(); + if (!CollectionUtils.isEmpty(list)) { + list.forEach(dataApiEntity -> { + ApiResponse vo = entityToVo(dataApiEntity); + collect.add(vo); + }); + } + return R.ok(collect); + } + + /** + * 分页查询信息 + * + * @return + */ + @Override + public R> getDataApiPage(@RequestBody @Validated ApiPageRequest apiQuery) { + ApiEntity entity = new ApiEntity(); + entity.setApiName(apiQuery.getApiName()); + entity.setStatus(apiQuery.getStatus()); + entity.setApiType(apiQuery.getApiType()); + entity.setSourceId(apiQuery.getSourceId()==null?null:Long.valueOf(apiQuery.getSourceId())); + startPage(apiQuery,"updateTime"); + List list = apiService.queryByList(entity); + PageInfo pageInfo = new PageInfo<>(list); + List resList = new ArrayList<>(); + for (ApiEntity apiEntity : list) { + ApiResponse apiVo = entityToVo(apiEntity); + resList.add(apiVo); + } + PageResult p = new PageResult<>(pageInfo.getPageNum(),pageInfo.getPageSize(),pageInfo.getTotal(),resList); + return R.ok(p); + } + + /** + * 添加 + * + * @param dataApi + * @return + */ + @Override + public R saveDataApi(@Validated @RequestBody ApiAddRequest dataApi) { + ApiEntity entity = dtoToEntity(dataApi); + entity.setCreateBy(dataApi.getUserName()); + entity.setApiType(DataApiEnum.API_TYPE.AGILE.getCode()); + apiService.saveDataApi(entity); + return R.ok(null); + } + + /** + * 修改 + * + * @param dataApi + * @return + */ + @Override + public R updateDataApi(@Validated @RequestBody ApiUpdateRequest dataApi) { + ApiEntity entity = dtoToEntity(dataApi); + entity.setApiId(dataApi.getApiId()); + entity.setUpdateBy(dataApi.getUserName()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setParams(checkParams(dataApi.getRecToken(), dataApi.getVersionNum())); + apiService.updateDataApi(entity); + return R.ok(null); + } + + /** + * 删除 + * + * @param request + * @return + */ + @Override + public R deleteDataApiById(@RequestBody @Validated ApiDelRequest request) { + apiService.deleteDataApiById(request); + return R.ok(null); + } + + /** + * 拷贝接口 + * + * @param request + * @return + */ + @Override + public R copyDataApi(@Validated @RequestBody ApiCopyRequest request) { + apiService.copyDataApi(request.getApiId(), request.getUserName()); + return R.ok(null); + } + + /** + * 注册接口 + * + * @param request + * @return + */ + @Override + public R registerDataApi(@Validated @RequestBody ApiStatusRequest request) { + apiService.registerDataApi(request); + return R.ok(); + } + + + /** + * 发布接口 + * + * @param dto + * @return + */ + @Override + public R releaseDataApi(@Validated @RequestBody ApiStatusRequest dto) { + apiService.releaseDataApi(dto); + return R.ok(); + } + + /** + * 注销接口 + * + * @param dto + * @return + */ + @Override + public R cancelDataApi(@Validated @RequestBody ApiStatusRequest dto) { + apiService.cancelDataApi(dto); + return R.ok(); + } + + /** + * 下架接口 + * + * @param dto + * @return + */ + @Override + public R downDataApi(@Validated @RequestBody ApiStatusRequest dto) { + apiService.downDataApi(dto); + return R.ok(); + } + + /** + * 获取api树状结构数据 + * + * @return + */ + @Override + public R> apiTree() { + List treeSelectList = apiService.buildApiTree(new ApiEntity()); + return R.ok(treeSelectList); + } + + @Override + public Response wordDataApi(Long id) throws Exception { + HttpServletResponse response = ServletUtils.getResponse(); + if(response != null){ + // 清空response + response.reset(); + // 设置response的Header + response.setContentType("application/octet-stream;charset=utf-8"); + // 设置content-disposition响应头控制浏览器以下载的形式打开文件 + response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("接口文档.docx", "utf-8")); + Document doc = apiService.wordDataApi(id); + OutputStream out = response.getOutputStream(); + doc.save(out, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + out.flush(); + out.close(); + } + return null; + } + + private ApiEntity dtoToEntity(ApiDtoBase dataApi) { + ApiEntity entity = new ApiEntity(); + entity.setApiName(dataApi.getApiName()); + entity.setApiVersion(dataApi.getApiVersion()); + //构建完整的请求地址 + String requestPath = AddressUtil.getRequestPath(dataApi.getApiVersion(), dataApi.getApiUrl()); + entity.setApiUrl(requestPath); + entity.setReqMethod(dataApi.getReqMethod()); + entity.setResType(dataApi.getResType()); + entity.setDeny(dataApi.getDeny()); + entity.setApiCode(dataApi.getApiCode()); + entity.setApiType(dataApi.getApiType()); + entity.setSourceId(dataApi.getExecuteConfig().getSourceId()); + String configType = dataApi.getExecuteConfig().getConfigType(); + if (DataApiEnum.CONFIG_TYPE.FORM.getCode().equals(configType)) { + try { + Table table = new Table(dataApi.getExecuteConfig().getTableName()); + String[] resParams = dataApi.getResParams().stream().map(ResParam::getFieldName).toArray(String[]::new); + Select select = SelectUtils.buildSelectFromTableAndExpressions(table, resParams); + String sqlText = SqlBuilderUtil.getInstance().buildHql(select.toString(), dataApi.getReqParams()); + dataApi.getExecuteConfig().setSqlText(sqlText); + } catch (Exception e) { + log.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new ServiceException("SQL语法有问题,解析出错"); + } + } + entity.setRateLimit(JacksonUtil.obj2String(dataApi.getRateLimit())); + entity.setExecuteConfig(JacksonUtil.obj2String(dataApi.getExecuteConfig())); + entity.setReqParams(JacksonUtil.obj2String(dataApi.getReqParams())); + entity.setResParams(JacksonUtil.obj2String(dataApi.getResParams())); + entity.setStatus(dataApi.getStatus()); + entity.setRemark(dataApi.getRemark()); + return entity; + } + + private ApiResponse entityToVo(ApiEntity entity) { + ApiResponse vo = new ApiResponse(); + vo.setApiId(entity.getApiId()); + vo.setStatus(entity.getStatus()); + vo.setCreateTime(entity.getCreateTime()); + vo.setRemark(entity.getRemark()); + vo.setApiName(entity.getApiName()); + vo.setApiVersion(entity.getApiVersion()); + vo.setApiUrl(AddressUtil.getApiUrl(entity.getApiUrl(),entity.getApiVersion())); + vo.setReqMethod(entity.getReqMethod()); + vo.setDeny(entity.getDeny()); + vo.setResType(entity.getResType()); + vo.setRateLimit(JacksonUtil.string2Obj(entity.getRateLimit(), RateLimit.class)); + vo.setExecuteConfig(JacksonUtil.string2Obj(entity.getExecuteConfig(), ExecuteConfig.class)); + vo.setReqParams(JacksonUtil.string2Obj(entity.getReqParams(), new TypeReference>() {})); + vo.setResParams(JacksonUtil.string2Obj(entity.getResParams(), new TypeReference>() {})); + vo.setRecToken(entity.getRecToken()); + vo.setApiCode(entity.getApiCode()); + vo.setVersionNum(entity.getVersion()); + vo.setCreateBy(entity.getCreateBy()); + vo.setUpdateBy(entity.getUpdateBy()); + vo.setUpdateTime(entity.getUpdateTime()); + return vo; + } + + /** + * 查询用户接口列表 + * + * @param request + * @return + */ + @Override + public R> getUserApiList(@RequestBody @Validated ApiUserRequest request) { + startPage(request); + List list = apiService.getUserApiList(request); + PageInfo page = new PageInfo<>(list); + List collect = page.getList().stream().map(x -> { + DataApiResponse vo = new DataApiResponse(); + vo.setOrgNo(x.getOrgNo()); + vo.setOrgName(x.getOrgName()); + vo.setApiId(x.getApiId()); + vo.setApiName(x.getApiName()); + vo.setRemark(x.getRemark()); + vo.setUpdateTime(x.getUpdateTime()); + vo.setStartTime(x.getStartTime()); + vo.setEndTime(x.getEndTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(page.getTotal(),collect)); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiLogController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiLogController.java new file mode 100644 index 00000000..399d4675 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiLogController.java @@ -0,0 +1,84 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.api; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.console.ApiLogApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiLogRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiLogResponse; +import com.jiuyv.sptcc.agile.dataservice.service.api.ApiLogService; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; + +/** + * api调用日志信息表 前端控制器 + */ +@RestController +public class ApiLogController extends BaseController implements ApiLogApi { + + @Autowired + private ApiLogService IApiLogService; + + /** + * 通过ID查询信息 + * + * @param id + * @return + */ + @Override + public R detail( Long id) { + ApiLogEntity apiLogEntity = IApiLogService.getApiLogById(id); + ApiLogResponse apiLogVo = entityToVo(apiLogEntity); + return R.ok(apiLogVo); + } + + /** + * 分页查询信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated ApiLogRequest request) { + ApiLogEntity entity = new ApiLogEntity(); + entity.setApiName(request.getApiName()); + startPage(request,"callerDate"); + List list = IApiLogService.queryByList(entity); + PageInfo pageInfo = new PageInfo<>(list); + List resList = new ArrayList<>(); + for (ApiLogEntity apiLogEntity : list) { + ApiLogResponse apiLogVo = entityToVo(apiLogEntity); + resList.add(apiLogVo); + } + PageResult tPageResult = new PageResult<>(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), resList); + return R.ok(tPageResult); + } + + private ApiLogResponse entityToVo(ApiLogEntity entity) { + if(entity == null){ + return null; + } + ApiLogResponse vo = new ApiLogResponse(); + vo.setApiLogId(entity.getApiLogId()); + vo.setApiId(entity.getApiId()); + vo.setApiName(entity.getApiName()); + vo.setCallerId(entity.getCallerId()); + vo.setCallerIp(entity.getCallerIp()); + vo.setCallerUrl(entity.getCallerUrl()); + vo.setCallerSize(entity.getCallerSize()); + vo.setCallerParams(entity.getCallerParams()); + vo.setCallerDate(entity.getCallerDate()); + vo.setTime(entity.getTime()); + vo.setMsg(entity.getMsg()); + vo.setStatus(entity.getStatus()); + return vo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java new file mode 100644 index 00000000..bfed744b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.batch; + +import com.jiuyv.sptcc.agile.dataservice.api.batch.BatchApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dto.request.batch.DateVo; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IPosMatchRateService; +import com.jiuyv.sptcc.agile.dataservice.service.task.IOrgTask; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.apache.commons.lang3.StringUtils; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; + +@RestController +public class BatchController extends BaseController implements BatchApi { + + @Resource + private IOrgTask orgTask; + + @Resource + private IPosMatchRateService posMatchRateService; + + + @Override + public R expire(String date) { + String dt = date; + if(StringUtils.isBlank(dt)){ + dt = DateUtils.getDate(); + } + Date excuteDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD, dt); + Boolean expire = orgTask.expire(excuteDate); + if(Boolean.TRUE.equals(expire)){ + return R.ok(true); + }else { + return R.fail(false); + } + + } + + @Override + public R down(String date) { + Date excuteDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD, date); + if(StringUtils.isBlank(date)){ + excuteDate = DateUtils.addDays(DateUtils.date(),-1); + } + Boolean down = orgTask.down(excuteDate); + if(Boolean.TRUE.equals(down)){ + return R.ok(true); + }else { + return R.fail(false); + } + } + + + @Override + public R posCheck(@RequestBody DateVo dateVo) { + //执行日期 + String date = dateVo.getDate(); + if(StringUtils.isBlank(date)){ + date = DateUtils.getDate(); + } + boolean check = posMatchRateService.check(date); + if(check){ + return R.ok(); + } + return R.fail(false); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgAuthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgAuthController.java new file mode 100644 index 00000000..1b34bce0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgAuthController.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + +import com.jiuyv.sptcc.agile.dataservice.api.OrgAuthApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.OrgAuthService; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * @ClassName : OrgAuthController + * @Description : 机构权限信息查询接口 + * @Author : sky + * @Date: 2023-07-13 13:48 + */ +@RestController +public class OrgAuthController extends BaseController implements OrgAuthApi { + + @Resource + private OrgAuthService orgAuthService; + + @Override + public R getOrgAuth(@RequestBody @Validated OrgAuthReq req) { + OrgAuthResp orgAuth = orgAuthService.getOrgAuth(req); + return R.ok(orgAuth); + } + + @Override + public R check(@RequestBody @Validated OrgAuthRequest request) { + return R.success(orgAuthService.check(request)); + } + + @Override + public R getKey(String orgCode) { + return R.ok(orgAuthService.getKey(orgCode)); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgConfigController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgConfigController.java new file mode 100644 index 00000000..8a9dfe61 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgConfigController.java @@ -0,0 +1,158 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.console.OrgCfgConsoleApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 机构配置信息 + * + * @author yulei + **/ +@RestController +public class OrgConfigController extends BaseController implements OrgCfgConsoleApi { + + @Resource + private IOrgConfigService orgConfigService; + + /** + * 查询 + * + * @param query + * @return + */ + @Override + public R> list(@RequestBody @Validated OrgConfigQueryRequest query) { + OrgConfig config = new OrgConfig(); + config.setOrgNo(query.getOrgNo()); + startPage(query,"updateTime"); + List configList = orgConfigService.queryList(config); + PageInfo pageInfo = new PageInfo<>(configList); + List resList = new ArrayList<>(); + pageInfo.getList().stream().forEach(orgConfig -> { + OrgConfigResponse vo = toResponse(orgConfig); + resList.add(vo); + }); + PageResult result = new PageResult<>(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), resList); + return R.ok(result); + } + + /** + * 详情 + * + * @param configId + * @return + */ + @Override + public R queryDetail( Long configId) { + OrgConfig orgConfig = orgConfigService.queryDetail(configId); + if (orgConfig == null) { + return R.restResult(ResultCode.DATE_NOT_EXIST); + } + OrgConfigResponse vo = toResponse(orgConfig); + vo.setOrgName(orgConfig.getOrgName()); + return R.ok(vo); + } + + private OrgConfigResponse toResponse(OrgConfig orgConfig) { + if(orgConfig == null){ + return null; + } + OrgConfigResponse vo = new OrgConfigResponse(); + vo.setConfigId(orgConfig.getConfigId()); + vo.setOrgNo(orgConfig.getOrgNo()); + vo.setConfigKey(orgConfig.getConfigKey()); + vo.setConfigDesc(orgConfig.getConfigDesc()); + vo.setConfigValue(orgConfig.getConfigValue()); + vo.setVersionNum(orgConfig.getVersionNum()); + vo.setRecToken(orgConfig.getRecToken()); + vo.setDelFlag(orgConfig.getDelFlag()); + vo.setStatus(orgConfig.getStatus()); + vo.setOrgName(orgConfig.getOrgName()); + return vo; + } + + /** + * 新增 + * + * @param dto + * @return + */ + @Override + public R add(@Validated @RequestBody OrgConfigAddRequest dto) { + OrgConfig config = new OrgConfig(); + config.setOrgNo(dto.getOrgNo()); + config.setConfigKey(dto.getConfigKey()); + config.setConfigDesc(dto.getConfigDesc()); + config.setConfigValue(dto.getConfigValue()); + config.setDelFlag(dto.getDelFlag()); + config.setStatus(dto.getStatus()); + orgConfigService.addOrgConfig(config); + return R.ok(); + } + + /** + * 编辑 + * + * @param dto + * @return + */ + @Override + public R edit(@Validated @RequestBody OrgConfigEditRequest dto) { + OrgConfig config = new OrgConfig(); + config.setConfigId(dto.getConfigId()); + config.setOrgNo(dto.getOrgNo()); + config.setConfigKey(dto.getConfigKey()); + config.setConfigDesc(dto.getConfigDesc()); + config.setConfigValue(dto.getConfigValue()); + config.setRecToken(dto.getRecToken()); + config.setDelFlag(dto.getDelFlag()); + config.setStatus(dto.getStatus()); + config.setUpdateByName(dto.getUserName()); + config.setUpdateBy(dto.getUserName()); + config.setParams(ParamsUtil.idempotent(dto.getRecToken(), null)); + orgConfigService.updateOrgConfig(config); + return R.ok(); + } + + /** + * 删除 + * + * @param configId + * @return + */ + @Override + public R delete( Long configId) { + orgConfigService.deleteById(configId); + return R.ok(); + } + + @Override + public R> getConfig( String orgCode) { + OrgConfig req = new OrgConfig(); + req.setOrgNo(orgCode); + List orgConfigs = orgConfigService.queryList(req); + List collect = orgConfigs.stream().map(x -> { + return toResponse(x); + }).collect(Collectors.toList()); + return R.ok(collect); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgInfoController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgInfoController.java new file mode 100644 index 00000000..4570e685 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgInfoController.java @@ -0,0 +1,203 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.console.OrgInfoConsoleApi; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgInfoService; +import com.jiuyv.sptcc.agile.dataservice.utils.data.PhoneUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; + +/** + * 【机构管理信息】Controller + * + * @author yulei + * @date 2023-06-16 + */ +@RestController +public class OrgInfoController extends BaseController implements OrgInfoConsoleApi { + + private final IOrgInfoService orgInfoService; + + private final AgileApiService apiService; + + @Autowired + public OrgInfoController(IOrgInfoService orgInfoService, AgileApiService apiService) { + this.orgInfoService = orgInfoService; + this.apiService = apiService; + } + + /** + * 查询【机构管理信息】列表 + */ + @Override + public R> list(@RequestBody @Validated OrgInfoQueryReq query) { + OrgInfoEntity entity = new OrgInfoEntity(); + entity.setOrgNo(query.getOrgNo()); + entity.setOrgName(query.getOrgName()); + entity.setOrgType(query.getOrgType()); + entity.setStatus(query.getStatus()); + entity.setMemberId(query.getMermberId()); + PageMethod.startPage(query.getPageNum(), query.getPageSize()); + List list = orgInfoService.selectOrgInfoList(entity); + PageInfo pageInfo = new PageInfo<>(list); + List resList = new ArrayList<>(); + for (OrgInfoEntity orgInfo : pageInfo.getList()) { + OrgInfoResp vo = toResp(orgInfo); + resList.add(vo); + } + return R.ok(PageResult.instance(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), resList)); + } + + private OrgInfoResp toResp(OrgInfoEntity orgInfo) { + if (orgInfo == null) { + return null; + } + OrgInfoResp vo = new OrgInfoResp(); + vo.setOrgNo(orgInfo.getOrgNo()); + vo.setOrgName(orgInfo.getOrgName()); + vo.setOrgType(orgInfo.getOrgType()); + vo.setOrgDesc(orgInfo.getOrgDesc()); + vo.setSalt(orgInfo.getSalt()); + vo.setEncrypt(orgInfo.getEncrypt()); + vo.setStartTime(orgInfo.getStartTime()); + vo.setEndTime(orgInfo.getEndTime()); + vo.setStatus(orgInfo.getStatus()); + vo.setVersionNum(orgInfo.getVersionNum()); + vo.setRecToken(orgInfo.getRecToken()); + vo.setDelFlag(orgInfo.getDelFlag()); + vo.setIp(orgInfo.getIp()); + vo.setContractTel(PhoneUtil.decryptEcb(orgInfo.getContractTel())); + vo.setMemberId(orgInfo.getMemberId()); + vo.setCreateBy(orgInfo.getCreateBy()); + vo.setCreateByName(orgInfo.getCreateByName()); + vo.setCreateTime(orgInfo.getCreateTime()); + vo.setUpdateByName(orgInfo.getUpdateByName()); + vo.setUpdateTime(orgInfo.getUpdateTime()); + return vo; + } + + /** + * 获取【机构管理信息】详细信息 + */ + @Override + public R getInfo( String orgNo) { + OrgInfoEntity orgInfo = orgInfoService.selectOrgInfoByOrgNo(orgNo); + if(orgInfo == null){ + return R.fail(ResultCode.DATE_NOT_EXIST); + } + OrgInfoResp vo = toResp(orgInfo); + return R.ok(vo); + } + + /** + * 新增【机构管理信息】 + */ + @Override + public R add(@Validated @RequestBody OrgInfoAddReq addReq) { + orgInfoService.add(addReq); + return R.ok(); + } + + /** + * 修改【机构管理信息】 + */ + @Override + public R edit(@Validated @RequestBody OrgInfoEditReq request) { + orgInfoService.update(request); + return R.ok(); + } + + /** + * 删除【机构管理信息】 + */ + @Override + public R remove(@RequestBody @Validated OrgDelReq request) { + orgInfoService.delete(request); + return R.ok(); + } + + /** + * 启用机构 + */ + @Override + public R run(@RequestBody @Validated OrgInfoStatusReq request) { + orgInfoService.run(request); + return R.ok(); + } + + + /** + * 停用机构 + */ + @Override + public R stop(@RequestBody @Validated OrgInfoStatusReq request) { + orgInfoService.stop(request); + return R.ok(); + } + + /** + * 加盐/加密秘钥 + * + * @return + */ + @Override + public R getGenerateKeyHex() { + String s = null; + try { + s = Sm4Util.generateKeyHex(); + } catch (Exception e) { + throw new BaseException(ResultCode.FAILED); + } + return R.ok(s); + } + + /** + * 授权 + * + * @param request + * @return + */ + @Override + public R orgApiAuth(@RequestBody @Validated OrgApiAuthRequest request) { + orgInfoService.orgApiAuth(request); + return R.ok(); + } + + /** + * 获取权限信息 + * + * @param orgNo + * @return + */ + @Override + public R orgApiAuthInfo(String orgNo) { + OrgApiAuthVo vo = new OrgApiAuthVo(); + Long[] authList = orgInfoService.orgApiAuthList(orgNo); + List treeSelectList = apiService.buildApiTree(new ApiEntity()); + vo.setCheckedKeys(authList); + vo.setTreeSelectList(treeSelectList); + return R.ok(vo); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgStatisticsController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgStatisticsController.java new file mode 100644 index 00000000..792f981e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgStatisticsController.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.console.OrgStcsConsoleApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiStatisticsResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgStatisticsService; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 接口调用次数统计(OrgStatistics)表控制层 + * + * @author makejava + * @since 2023-07-13 16:04:00 + */ +@RestController +public class OrgStatisticsController extends BaseController implements OrgStcsConsoleApi { + /** + * 服务对象 + */ + @Resource + private IOrgStatisticsService orgStatisticsService; + + /** + * mmm + * 分页查询 + * + * @param request 筛选条件 + * @return 查询结果 + */ + @Override + public R> queryByPage(@Validated @RequestBody OrgStatisticsQueryReq request) { + OrgStatisticsEntity vo = new OrgStatisticsEntity(); + vo.setOrgNo(request.getOrgNo()); + vo.setOrgName(request.getOrgName()); + vo.setApiName(request.getApiName()); + PageMethod.startPage(request.getPageNum(), request.getPageSize()); + List list = orgStatisticsService.selectList(vo); + PageInfo pageInfo = new PageInfo<>(list); + List collect = pageInfo.getList().stream().map(orgStatisticsEntity -> { + OrgStatisticsVo osv = new OrgStatisticsVo(); + osv.setId(orgStatisticsEntity.getId()+""); + osv.setOrgNo(orgStatisticsEntity.getOrgNo()); + osv.setOrgName(orgStatisticsEntity.getOrgName()); + osv.setApiId(orgStatisticsEntity.getApiId()+""); + osv.setSuccessTotal(orgStatisticsEntity.getSuccessTotal()); + osv.setFailTotal(orgStatisticsEntity.getFailTotal()); + osv.setApiName(orgStatisticsEntity.getApiName()); + osv.setVersionNum(orgStatisticsEntity.getVersionNum()+""); + osv.setRecToken(orgStatisticsEntity.getRecToken()); + osv.setDelFlag(orgStatisticsEntity.getDelFlag()); + return osv; + }).collect(Collectors.toList()); + + return R.ok(PageResult.instance(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), collect)); + } + + /** + * 查询用户接口调用统计列表 + * + * @param request + * @return + */ + @Override + public R> getUserApiStatistics(@RequestBody @Validated ApiUserRequest request) { + PageMethod.startPage(request.getPageNum(),request.getPageSize()); + List list = orgStatisticsService.getUserInfo(request.getMemberId()); + PageInfo pageInfo = new PageInfo<>(list); + List response = new ArrayList<>(); + for (OrgStatisticsEntity info : pageInfo.getList()) { + DataApiStatisticsResponse res = new DataApiStatisticsResponse(); + res.setId(info.getId()); + res.setOrgNo(info.getOrgNo()); + res.setOrgName(info.getOrgName()); + res.setApiId(info.getApiId()); + res.setSuccessTotal(info.getSuccessTotal()); + res.setFailTotal(info.getFailTotal()); + res.setApiName(info.getApiName()); + res.setUpdateTime(info.getUpdateTime()); + response.add(res); + } + return R.ok(PageResult.instance(pageInfo.getTotal(), response)); + } +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/DownloadController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/DownloadController.java new file mode 100644 index 00000000..de44c98a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/DownloadController.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.jiuyv.sptcc.agile.dataservice.api.portal.SdkDownload; +import com.jiuyv.sptcc.agile.dataservice.api.product.DownloadApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IFileService; +import com.jiuyv.sptcc.agile.dataservice.utils.ServletUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import feign.Response; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.io.IOException; + +/** + * 客流宝文件下载 + * + * @ClassName : DownloadController + * @Description : + * @Author : sky + * @Date: 2023-09-13 17:48 + */ +@RestController +public class DownloadController extends BaseController implements DownloadApi, SdkDownload { + + @Resource + private IFileService fileService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + @Override + public Response download(@RequestBody @Validated DownLoadRequest request) throws IOException { + boolean isSuccess = false; + try{ + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getDate(), request.getOrgNo()); + if(!b){ + throw new BaseException(ResultCode.DATA_TIME_NO_RIGHT); + } + isSuccess = true; + return fileService.downloadFile(request, ServletUtils.getResponse()); + }catch (Exception e){ + logger.info("下载文件异常;{}",e.getMessage()); + isSuccess = false; + if(logger.isDebugEnabled()){ + logger.error("下载文件异常",e); + } + throw e; + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.DWONLOAD.getCode(),isSuccess); + } + + } + + @Override + public ResponseEntity download() { + return fileService.download(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricDayController.java new file mode 100644 index 00000000..0412a9f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricDayController.java @@ -0,0 +1,107 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +/** + * 线路每天客流宝量指标Controller + * + * @author shu_k + * @date 2023-09-18 + */ +@RestController +public class LineMetricDayController extends BaseController implements LineMetricDayApi { + + @Resource + private ILineMetricDayService lineMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 查询线路每天客流宝量指标列表 + */ + public R> list(@RequestBody @Validated LineDayPageReq request) { + startPage(request,"metricDate"); + LineMetricDay lineMetricDay = new LineMetricDay(); + lineMetricDay.setMetricDate(request.getMetricDate()); + lineMetricDay.setLineCode(request.getLineCode()); + lineMetricDay.setLineName(request.getLineName()); + lineMetricDay.setLineStatus(request.getLineStatus()); + lineMetricDay.setCompanyCode(request.getCompanyCode()); + lineMetricDay.setServiceType(request.getServiceType()); + List list = lineMetricDayService.selectLineMetricDayList(lineMetricDay); + PageInfo page = new PageInfo<>(list); + List resList = getResList(page); + return R.ok(PageResult.instance(page.getPageNum(), page.getPages(), page.getTotal(), resList)); + } + + @Override + public R> page(@RequestBody @Validated LineDayReqRequest request) { + + boolean isSuccess = false; + try{ + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if(!b){ + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + // PageMethod.startPage(request.getPageNum(), request.getPageSize()); + startPage(request,"id"); + LineMetricDay lineMetricDay = new LineMetricDay(); + lineMetricDay.setMetricDate(request.getMetricDate()); + List list = lineMetricDayService.selectLineMetricDayList(lineMetricDay); + PageInfo page = new PageInfo<>(list); + List resList = getResList(page); + isSuccess = true; + return R.ok(PageResult.instance(page.getPageNum(), page.getPages(), page.getTotal(), resList)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.LINE_DAY.getCode(),isSuccess); + } + + } + + private static List getResList(PageInfo page) { + List resList = new ArrayList<>(); + for (LineMetricDay metricDate : page.getList()) { + LineDayPageRes res = new LineDayPageRes(); + res.setLineCode(metricDate.getLineCode()); + res.setLineName(metricDate.getLineName()); + res.setLineStatus(metricDate.getLineStatus()); + res.setCompanyCode(metricDate.getCompanyCode()); + res.setCompanyName(metricDate.getCompanyName()); + res.setServiceType(metricDate.getServiceType()); + res.setMetricDate(metricDate.getMetricDate()); + res.setMetricValue(metricDate.getMetricValue()); + res.setLineNo(metricDate.getLineNo()); + res.setCreateTime(metricDate.getCreateTime()); + resList.add(res); + } + return resList; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricHourController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricHourController.java new file mode 100644 index 00000000..c5bc7b75 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricHourController.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricHourApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 线路小时客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineMetricHourController extends BaseController implements LineMetricHourApi { + + @Resource + private ILineMetricHourService lineMetricHourService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + private static List getMetricHourRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + LineMetricHourRes lineMetricHourRes = new LineMetricHourRes(); + lineMetricHourRes.setLineCode(x.getLineCode()); + lineMetricHourRes.setLineName(x.getLineName()); + lineMetricHourRes.setLineStatus(x.getLineStatus()); + lineMetricHourRes.setCompanyCode(x.getCompanyCode()); + lineMetricHourRes.setCompanyName(x.getCompanyName()); + lineMetricHourRes.setServiceType(x.getServiceType()); + lineMetricHourRes.setMetricHour(x.getMetricHour()); + lineMetricHourRes.setMetricDate(x.getMetricDate()); + lineMetricHourRes.setMetricValue(x.getMetricValue()); + lineMetricHourRes.setLineNo(x.getLineNo()); + lineMetricHourRes.setId(x.getId()); + lineMetricHourRes.setCreateTime(x.getCreateTime()); + return lineMetricHourRes; + }).collect(Collectors.toList()); + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated LineHourPageReq request) { + LineMetricHour lineMetricHour = new LineMetricHour(); + lineMetricHour.setLineCode(request.getLineCode()); + lineMetricHour.setLineName(request.getLineName()); + lineMetricHour.setLineStatus(request.getLineStatus()); + lineMetricHour.setCompanyCode(request.getCompanyCode()); + lineMetricHour.setServiceType(request.getServiceType()); + lineMetricHour.setMetricDate(request.getMetricDate()); + lineMetricHour.setMetricHour(request.getHour()); + startPage(request,"metricDate"); + List lineMetricHours = lineMetricHourService.selectlineMetricHourList(lineMetricHour); + PageInfo pageInfo = new PageInfo<>(lineMetricHours); + List collect = getMetricHourRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated LineHourRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineMetricHour lineMetricHour = new LineMetricHour(); + lineMetricHour.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineMetricHours = lineMetricHourService.selectlineMetricHourList(lineMetricHour); + PageInfo pageInfo = new PageInfo<>(lineMetricHours); + List collect = getMetricHourRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.LINE_HOUR.getCode(),isSuccess); + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricMonthController.java new file mode 100644 index 00000000..419a4f33 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricMonthController.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 线路月客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineMetricMonthController extends BaseController implements LineMetricMonthApi { + + @Resource + private ILineMetricMonthService lineMetricMonthService; + + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated LineMetricMonthReq request) { + + LineMetricMonth req = new LineMetricMonth(); + req.setLineCode(request.getLineCode()); + req.setLineStatus(request.getLineStatus()); + req.setLineName(request.getLineName()); + req.setCompanyCode(request.getCompanyCode()); + req.setServiceType(request.getServiceType()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + + startPage(request,"metricMonth"); + List lineMetricMonths = lineMetricMonthService.selectlineMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineMetricMonths); + List collect = getMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated LineMonthRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineMetricMonth req = new LineMetricMonth(); + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, request.getMetricMonth()); + req.setMetricMonth(monthStr); + startPage(request,"id"); + List lineMetricMonths = lineMetricMonthService.selectlineMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineMetricMonths); + List collect = getMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.LINE_MONTH.getCode(),isSuccess); + } + + } + + private static List getMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + LineMetricMonthRes res = new LineMetricMonthRes(); + res.setLineCode(x.getLineCode()); + res.setLineName(x.getLineName()); + res.setLineStatus(x.getLineStatus()); + res.setCompanyCode(x.getCompanyCode()); + res.setCompanyName(x.getCompanyName()); + res.setServiceType(x.getServiceType()); + res.setMetricMonth(x.getMetricMonth()); + res.setMetricValue(x.getMetricValue()); + res.setLineNo(x.getLineNo()); + res.setId(x.getId()); + res.setCreateTime(x.getCreateTime()); + return res; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricDayController.java new file mode 100644 index 00000000..e6c59194 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricDayController.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationMetricDayController extends BaseController implements StationMetricDayApi { + + @Resource + private ILineStationMetricDayService lineStationMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricDayReq request) { + LineStationMetricDay req = new LineStationMetricDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List lineStationMetricDays = lineStationMetricDayService.selectLineStationMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricDays); + List collect = getMetricDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationDayRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationMetricDay req = new LineStationMetricDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationMetricDays = lineStationMetricDayService.selectLineStationMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricDays); + List collect = getMetricDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_DAY.getCode(),isSuccess); + } + + } + + private static List getMetricDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricDayRes res = new StationMetricDayRes(); + res.setLineCode(x.getLineCode()); + res.setLineName(x.getLineName()); + res.setUp(x.getUp()); + res.setLevelName(x.getLevelName()); + res.setLevels(x.getLevels()); + res.setMetricDate(x.getMetricDate()); + res.setMetricValue(x.getMetricValue()); + res.setLineNo(x.getLineNo()); + res.setId(x.getId()); + res.setCreateTime(x.getCreateTime()); + return res; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricHourController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricHourController.java new file mode 100644 index 00000000..d7d2f8bf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricHourController.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationMetricHourApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点小时客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationMetricHourController extends BaseController implements StationMetricHourApi { + + @Resource + private ILineStationMetricHourService lineStationMetricHourService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricHourReq request) { + LineStationMetricHour req = new LineStationMetricHour(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + req.setMetricHour(request.getHour()); + startPage(request,"metricDate"); + List lineStationMetricHours = lineStationMetricHourService.selectLineStationMetricHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricHours); + List collect = getMetricHourRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationHourRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationMetricHour req = new LineStationMetricHour(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationMetricHours = lineStationMetricHourService.selectLineStationMetricHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricHours); + List collect = getMetricHourRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_HOUR.getCode(),isSuccess); + } + + } + + private static List getMetricHourRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricHourRes res = new StationMetricHourRes(); + res.setLineCode(x.getLineCode()); + res.setLineName(x.getLineName()); + res.setUp(x.getUp()); + res.setLevelName(x.getLevelName()); + res.setLevels(x.getLevels()); + res.setMetricDate(x.getMetricDate()); + res.setMetricValue(x.getMetricValue()); + res.setLineNo(x.getLineNo()); + res.setId(x.getId()); + res.setMetricHour(x.getMetricHour()); + res.setCreateTime(x.getCreateTime()); + return res; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricMonthController.java new file mode 100644 index 00000000..d425f3ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricMonthController.java @@ -0,0 +1,115 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationMetricMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点月客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationMetricMonthController extends BaseController implements StationMetricMonthApi { + + @Resource + private ILineStationMetricMonthService lineStationMetricMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricMonthReq request) { + LineStationMetricMonth req = new LineStationMetricMonth(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + startPage(request,"metricMonth"); + List lineStationMetricMonths = lineStationMetricMonthService.selectLineStationMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricMonths); + List collect = getMetricMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationMonthRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationMetricMonth req = new LineStationMetricMonth(); + Date metricMonth = request.getMetricMonth(); + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + startPage(request,"id"); + List lineStationMetricMonths = lineStationMetricMonthService.selectLineStationMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricMonths); + List collect = getMetricMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_MONTH.getCode(),isSuccess); + } + + } + + private static List getMetricMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricMonthRes monthVo = new StationMetricMonthRes(); + monthVo.setLineCode(x.getLineCode()); + monthVo.setLineName(x.getLineName()); + monthVo.setUp(x.getUp()); + monthVo.setLevels(x.getLevels()); + monthVo.setLevelName(x.getLevelName()); + monthVo.setMetricMonth(x.getMetricMonth()); + monthVo.setMetricValue(x.getMetricValue()); + monthVo.setLineNo(x.getLineNo()); + monthVo.setId(x.getId()); + monthVo.setCreateTime(x.getCreateTime()); + return monthVo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransDayController.java new file mode 100644 index 00000000..067e3808 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransDayController.java @@ -0,0 +1,113 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationTransDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationTransDayController extends BaseController implements StationTransDayApi { + + @Resource + private ILineStationTransDayService lineStationTransDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationTransDayReq request) { + LineStationTransDay req = new LineStationTransDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List lineStationTransDays = lineStationTransDayService.selectLineStationTransDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransDays); + List collect = getTransDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + private static List getTransDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationTransDayRes vo = new StationTransDayRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setMetricDate(x.getMetricDate()); + vo.setCreateTime(x.getCreateTime()); + vo.setExchangeType(x.getExchangeType()); + return vo; + }).collect(Collectors.toList()); + } + + @Override + public R> page(@RequestBody @Validated StationTransDayRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationTransDay req = new LineStationTransDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationTransDays = lineStationTransDayService.selectLineStationTransDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransDays); + List collect = getTransDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_TRANS_DAY.getCode(),isSuccess); + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransHourController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransHourController.java new file mode 100644 index 00000000..24a92a1a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransHourController.java @@ -0,0 +1,114 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationTransHourApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransHourService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + + +/** + * 站点小时换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationTransHourController extends BaseController implements StationTransHourApi { + + @Resource + private ILineStationTransHourService lineStationTransHourService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricHourReq request) { + + LineStationTransHour req = new LineStationTransHour(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + req.setMetricDate(request.getMetricDate()); + req.setMetricHour(request.getHour()); + startPage(request,"metricDate"); + List lineStationTransHours = lineStationTransHourService.selectLineStationTransHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransHours); + + List collect = getMetricHourRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationTransHourRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationTransHour req = new LineStationTransHour(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationTransHours = lineStationTransHourService.selectLineStationTransHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransHours); + List collect = getMetricHourRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_TRANS_HOUR.getCode(),isSuccess); + } + + } + + private static List getMetricHourRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricHourRes vo = new StationMetricHourRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevelName(x.getLevelName()); + vo.setLevels(x.getLevels()); + vo.setMetricDate(x.getMetricDate()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setId(x.getId()); + vo.setMetricHour(x.getMetricHour()); + vo.setCreateTime(x.getCreateTime()); + vo.setExchangeType(x.getExchangeType()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransMonthController.java new file mode 100644 index 00000000..b5d1e36e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransMonthController.java @@ -0,0 +1,120 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationTransMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点月换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationTransMonthController extends BaseController implements StationTransMonthApi { + + @Resource + private ILineStationTransMonthService lineStationTransMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationTransMonthReq request) { + LineStationTransMonth req = new LineStationTransMonth(); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + req.setLineCode(request.getLineCode()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + req.setLineCode(request.getLineCode()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + startPage(request,"metricMonth"); + List lineStationTransMonths = lineStationTransMonthService.selectLineStationTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransMonths); + List collect = getTransMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationTransMonthRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationTransMonth req = new LineStationTransMonth(); + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, request.getMetricMonth()); + req.setMetricMonth(monthStr); + startPage(request,"id"); + List lineStationTransMonths = lineStationTransMonthService.selectLineStationTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransMonths); + List collect = getTransMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_TRNAS_MONTH.getCode(),isSuccess); + } + + } + + private static List getTransMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationTransMonthRes vo = new StationTransMonthRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricMonth(x.getMetricMonth()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/RouteMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/RouteMetricDayController.java new file mode 100644 index 00000000..671a71c3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/RouteMetricDayController.java @@ -0,0 +1,126 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.RouteMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.RouteMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IRouteMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 班次日客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class RouteMetricDayController extends BaseController implements RouteMetricDayApi { + @Resource + private IRouteMetricDayService routeMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteMetricDayReq request) { + RouteMetricDay req = new RouteMetricDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setStartStation(request.getStartStation()); + req.setStartTime(request.getStartTime()); + req.setEndStation(request.getEndStation()); + req.setArrivalTime(request.getArrivalTime()); + req.setWaybillType(request.getWaybillType()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List routeMetricDays = routeMetricDayService.selectRouteMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(routeMetricDays); + + List collect = pageInfo.getList().stream().map(this::toResponse).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + /** + * 查看详情 + * + * @param id + * @return + */ + @Override + public R detail(Long id) { + RouteMetricDay routeMetricDay = routeMetricDayService.selectRouteMetricDayById(id); + return R.ok(toResponse(routeMetricDay)); + } + + @Override + public R> page(@RequestBody @Validated RouteDayRequest request) { + + boolean isSuccess = false; + try { + // 判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + RouteMetricDay req = new RouteMetricDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List routeMetricDays = routeMetricDayService.selectRouteMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(routeMetricDays); + List collect = pageInfo.getList().stream().map(this::toResponse).collect(Collectors.toList()); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } catch (Exception e) { + return handelEx(e); + } finally { + // 记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.ROUTE_DAY.getCode(), isSuccess); + } + + } + + private RouteMetricDayRes toResponse(RouteMetricDay routeMetricDay) { + RouteMetricDayRes res = new RouteMetricDayRes(); + res.setLineCode(routeMetricDay.getLineCode()); + res.setLineName(routeMetricDay.getLineName()); + res.setUp(routeMetricDay.getUp()); + res.setLicensePlate(routeMetricDay.getLicensePlate()); + res.setDriverCode(routeMetricDay.getDriverCode()); + res.setStartStation(routeMetricDay.getStartStation()); + res.setStartTime(routeMetricDay.getStartTime()); + res.setEndStation(routeMetricDay.getEndStation()); + res.setArrivalTime(routeMetricDay.getArrivalTime()); + res.setWaybillType(routeMetricDay.getWaybillType()); + res.setMetricDate(routeMetricDay.getMetricDate()); + res.setMetricValue(routeMetricDay.getMetricValue()); + res.setLineNo(routeMetricDay.getLineNo()); + res.setId(routeMetricDay.getId()); + res.setCreateTime(routeMetricDay.getCreateTime()); + return res; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricDayController.java new file mode 100644 index 00000000..f680092c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricDayController.java @@ -0,0 +1,112 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日常乘客客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController + +public class StationFreqMetricDayController extends BaseController implements StationFreqMetricDayApi { + + @Resource + private IStationFreqMetricDayService stationFreqMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqMetricDayReq request) { + StationFreqMetricDay req = new StationFreqMetricDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List stationFreqMetricDays = stationFreqMetricDayService.selectStationFreqMetricDayList(req); + + PageInfo pageInfo = new PageInfo<>(stationFreqMetricDays); + List collect = getFreqMetricDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqDayRequest request) { + + boolean isSuccess = true; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqMetricDay req = new StationFreqMetricDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List stationFreqMetricDays = stationFreqMetricDayService.selectStationFreqMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqMetricDays); + List collect = getFreqMetricDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_DAY.getCode(),isSuccess); + } + + } + + private static List getFreqMetricDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqMetricDayRes vo = new StationFreqMetricDayRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setLineStatus(x.getLineStatus()); + vo.setMetricDate(x.getMetricDate()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricMonthController.java new file mode 100644 index 00000000..8304cb35 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricMonthController.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqMetricMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点月换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class StationFreqMetricMonthController extends BaseController implements StationFreqMetricMonthApi { + + @Resource + private IStationFreqMetricMonthService stationFreqMetricMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqMetricMonthReq request) { + + StationFreqMetricMonth req = new StationFreqMetricMonth(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + req.setMetricMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth)); + } + startPage(request,"metricMonth"); + List stationFreqMetricMonths = stationFreqMetricMonthService.selectStationFreqMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqMetricMonths); + List collect = getFreqMetricMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqMonthRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqMetricMonth req = new StationFreqMetricMonth(); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + req.setMetricMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth)); + } + startPage(request,"id"); + List stationFreqMetricMonths = stationFreqMetricMonthService.selectStationFreqMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqMetricMonths); + List collect = getFreqMetricMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_MONTH.getCode(),isSuccess); + } + + } + + private static List getFreqMetricMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqMetricMonthRes vo = new StationFreqMetricMonthRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setLineStatus(x.getLineStatus()); + vo.setMetricMonth(x.getMetricMonth()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransDayController.java new file mode 100644 index 00000000..4415a290 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransDayController.java @@ -0,0 +1,108 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqTransDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日常乘客换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class StationFreqTransDayController extends BaseController implements StationFreqTransDayApi { + + @Resource + private IStationFreqTransDayService stationFreqTransDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqTransDayReq request) { + StationFreqTransDay req = new StationFreqTransDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + req.setExchangeType(request.getExchangeType()); + startPage(request,"metricDate"); + List stationFreqTransDays = stationFreqTransDayService.selectStationFreqTransDayList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransDays); + List collect = getFreqTransDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqTransDayRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqTransDay req = new StationFreqTransDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List stationFreqTransDays = stationFreqTransDayService.selectStationFreqTransDayList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransDays); + List collect = getFreqTransDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_TRANS_DAY.getCode(),isSuccess); + } + + } + + private static List getFreqTransDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqTransDayRes vo = new StationFreqTransDayRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricDate(x.getMetricDate()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransMonthController.java new file mode 100644 index 00000000..448406fa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransMonthController.java @@ -0,0 +1,121 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqTransMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日常乘客换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class StationFreqTransMonthController extends BaseController implements StationFreqTransMonthApi { + + @Resource + private IStationFreqTransMonthService stationFreqTransMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqTransMonthReq request) { + + StationFreqTransMonth req = new StationFreqTransMonth(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + startPage(request,"metricMonth"); + List stationFreqTransMonths = stationFreqTransMonthService.selectStationFreqTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransMonths); + List collect = getTransMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqTransMonthRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqTransMonth req = new StationFreqTransMonth(); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + startPage(request,"id"); + List stationFreqTransMonths = stationFreqTransMonthService.selectStationFreqTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransMonths); + List collect = getTransMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_TRANS_MONTH.getCode(),isSuccess); + } + + } + + private static List getTransMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqTransMonthRes vo = new StationFreqTransMonthRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricMonth(x.getMetricMonth()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/CentimeDelayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/CentimeDelayController.java new file mode 100644 index 00000000..79eb2c4d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/CentimeDelayController.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.quality.CentimeDelayApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.CentimeDelayRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.ICentimeDelayService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 延迟上送比率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class CentimeDelayController extends BaseController implements CentimeDelayApi { + + private final ICentimeDelayService centimeDelayService; + + public CentimeDelayController(ICentimeDelayService centimeDelayService) { + this.centimeDelayService = centimeDelayService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated CentimeDelayReq request) { + + CentimeDelay req = new CentimeDelay(); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List centimeDelays = centimeDelayService.selectCentimeDelayList(req); + PageInfo pageInfo = new PageInfo<>(centimeDelays); + List collect = pageInfo.getList().stream().map(x -> { + CentimeDelayRes vo = new CentimeDelayRes(); + vo.setId(x.getId()); + vo.setTimeRange(x.getTimeRange()); + vo.setDelayCount(x.getDelayCount()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/PosMatchRateController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/PosMatchRateController.java new file mode 100644 index 00000000..0c63e49d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/PosMatchRateController.java @@ -0,0 +1,66 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.PosMatchRateApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.PosMatchRateRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IPosMatchRateService; +import com.jiuyv.sptcc.agile.dataservice.utils.DifferUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * Pos匹配率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class PosMatchRateController extends BaseController implements PosMatchRateApi { + + private final IPosMatchRateService posMatchRateService; + + public PosMatchRateController(IPosMatchRateService posMatchRateService) { + this.posMatchRateService = posMatchRateService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated PosMatchRateReq request) { + + PosMatchRate req = new PosMatchRate(); + + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List posMatchRates = posMatchRateService.selectPosMatchRateList(req); + PageInfo pageInfo = new PageInfo<>(posMatchRates); + List collect = pageInfo.getList().stream().map(x -> { + PosMatchRateRes vo = new PosMatchRateRes(); + vo.setId(x.getId()); + vo.setTranNum(x.getTranNum()); + vo.setMatchNum(x.getMatchNum()); + vo.setMatchRate(x.getMatchRate()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + vo.setDifferNum(DifferUtil.differ(x.getMatchNum(),x.getTranNum())); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteDailyCountController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteDailyCountController.java new file mode 100644 index 00000000..4c40ca21 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteDailyCountController.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.RouteDailyCountApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteDailyRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 日营运线路条数Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class RouteDailyCountController extends BaseController implements RouteDailyCountApi { + + private final IRouteDailyCountService routeDailyCountService; + + public RouteDailyCountController(IRouteDailyCountService routeDailyCountService) { + this.routeDailyCountService = routeDailyCountService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteDailyReq request) { + + RouteDailyCount req = new RouteDailyCount(); + req.setCompanyName(request.getCompanyName()); + req.setTxnDate(request.getTxnDate()); + req.setCompanyCode(request.getCompanyCode()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List routeDailyCounts = routeDailyCountService.selectRouteDailyCountList(req); + PageInfo pageInfo = new PageInfo<>(routeDailyCounts); + List collect = pageInfo.getList().stream().map(x -> { + RouteDailyRes vo = new RouteDailyRes(); + vo.setId(x.getId()); + vo.setCompanyName(x.getCompanyName()); + vo.setRouteCount(x.getRouteCount()); + vo.setTxnDate(x.getTxnDate()); + vo.setCompanyCode(x.getCompanyCode()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteMissController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteMissController.java new file mode 100644 index 00000000..023104b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteMissController.java @@ -0,0 +1,66 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.RouteMissApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteMissRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DifferUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 班次缺失率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class RouteMissController extends BaseController implements RouteMissApi { + + private final IRouteMissService routeMissService; + + public RouteMissController(IRouteMissService routeMissService) { + this.routeMissService = routeMissService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteMissReq request) { + + RouteMiss req = new RouteMiss(); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + + startPage(request,"txnDate"); + List routeMisses = routeMissService.selectRouteMissList(req); + PageInfo pageInfo = new PageInfo<>(routeMisses); + List collect = pageInfo.getList().stream().map(x -> { + RouteMissRes vo = new RouteMissRes(); + vo.setId(x.getId()); + vo.setMissRate(x.getMissRate()); + vo.setTxnDate(x.getTxnDate()); + vo.setRouteCount(x.getRouteCount()); + vo.setBusStopCount(x.getBusStopCount()); + vo.setCreateTime(x.getCreateTime()); + vo.setDifferNum(DifferUtil.differ(x.getRouteCount(),x.getBusStopCount())); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteTurnoverTimeController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteTurnoverTimeController.java new file mode 100644 index 00000000..8a0684d6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteTurnoverTimeController.java @@ -0,0 +1,67 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.RouteTurnoverTimeApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteTurnoverRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteTurnoverTimeService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 班次周转时间Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class RouteTurnoverTimeController extends BaseController implements RouteTurnoverTimeApi { + + private final IRouteTurnoverTimeService routeTurnoverTimeService; + + public RouteTurnoverTimeController(IRouteTurnoverTimeService routeTurnoverTimeService) { + this.routeTurnoverTimeService = routeTurnoverTimeService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteTurnoverReq request) { + RouteTurnoverTime req = new RouteTurnoverTime(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setHlowPeakName(request.getHlowPeakName()); + req.setWayBillType(request.getWayBillType()); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request, "txnDate"); + List routeTurnoverTimes = routeTurnoverTimeService.selectRouteTurnoverTimeList(req); + PageInfo pageInfo = new PageInfo<>(routeTurnoverTimes); + List collect = pageInfo.getList().stream().map(x -> { + RouteTurnoverRes vo = new RouteTurnoverRes(); + vo.setId(x.getId()); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setTurnoverTime(x.getTurnoverTime()); + vo.setHlowPeakName(x.getHlowPeakName()); + vo.setWayBillType(x.getWayBillType()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/StationMissController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/StationMissController.java new file mode 100644 index 00000000..ef191597 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/StationMissController.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.quality.StationMissApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.StationMissRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IStationMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DifferUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点缺失率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class StationMissController extends BaseController implements StationMissApi { + private final IStationMissService stationMissService; + + public StationMissController(IStationMissService stationMissService) { + this.stationMissService = stationMissService; + } + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMissReq request) { + StationMiss req = new StationMiss(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setWayBillType(request.getWayBillType()); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List stationMisses = stationMissService.selectStationMissList(req); + PageInfo pageInfo = new PageInfo<>(stationMisses); + List collect = pageInfo.getList().stream().map(this::toResponse).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + /** + * 获取列表信息 + * + * @param id + * @return + */ + @Override + public R detail(Long id) { + StationMiss stationMiss = stationMissService.selectStationMissById(id); + StationMissRes vo = toResponse(stationMiss); + return R.ok(vo); + } + + private StationMissRes toResponse(StationMiss stationMiss) { + if (stationMiss == null) { + return null; + } + StationMissRes vo = new StationMissRes(); + vo.setId(stationMiss.getId()); + vo.setLineCode(stationMiss.getLineCode()); + vo.setLineName(stationMiss.getLineName()); + vo.setLicensePlate(stationMiss.getLicensePlate()); + vo.setDriverCode(stationMiss.getDriverCode()); + vo.setStartTime(stationMiss.getStartTime()); + vo.setArrivalTime(stationMiss.getArrivalTime()); + vo.setStartStation(stationMiss.getStartStation()); + vo.setEndStation(stationMiss.getEndStation()); + vo.setUp(stationMiss.getUp()); + vo.setWayBillType(stationMiss.getWayBillType()); + vo.setStartStationLevels(stationMiss.getStartStationLevels()); + vo.setEndStationLevels(stationMiss.getEndStationLevels()); + vo.setLevelNum(stationMiss.getLevelNum()); + vo.setBusStopNum(stationMiss.getBusStopNum()); + vo.setTxnDate(stationMiss.getTxnDate()); + vo.setCreateTime(stationMiss.getCreateTime()); + vo.setMissRate(stationMiss.getMissRate()); + vo.setDifferNum(DifferUtil.differ(stationMiss.getLevelNum(),stationMiss.getBusStopNum())); + return vo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/VehicleDailyCountController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/VehicleDailyCountController.java new file mode 100644 index 00000000..ecaf26ae --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/VehicleDailyCountController.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.quality.VehicleDailyApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDailyRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDayResponse; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IVehicleDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 日营运车辆数Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class VehicleDailyCountController extends BaseController implements VehicleDailyApi { + + private final IVehicleDailyCountService vehicleDailyCountService; + + public VehicleDailyCountController(IVehicleDailyCountService vehicleDailyCountService) { + this.vehicleDailyCountService = vehicleDailyCountService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R list(@RequestBody @Validated VehicleDailyReq request) { + + VehicleDailyCount req = new VehicleDailyCount(); + req.setCompanyCode(request.getCompanyCode()); + req.setCompanyName(request.getCompanyName()); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List vehicleDailyCounts = vehicleDailyCountService.selectVehicleDailyCountList(req); + PageInfo pageInfo = new PageInfo<>(vehicleDailyCounts); + List collect = pageInfo.getList().stream().map(x -> { + VehicleDailyRes vo = new VehicleDailyRes(); + vo.setId(x.getId()); + vo.setCompanyCode(x.getCompanyCode()); + vo.setCompanyName(x.getCompanyName()); + vo.setVehicleCount(x.getVehicleCount()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + + VehicleDayResponse vehicleDayResponse = new VehicleDayResponse(); + vehicleDayResponse.setPage(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + Long l = vehicleDailyCountService.countBus(req); + vehicleDayResponse.setTotalBus(l); + return R.ok(vehicleDayResponse); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/OrgApiAuthDao.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/OrgApiAuthDao.java new file mode 100644 index 00000000..bef0c2e9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/OrgApiAuthDao.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.dao; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgAuthEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 【机构接口权限表】(OrgApiAuth)表数据库访问层 + * + * @author makejava + * @since 2023-07-13 16:03:54 + */ +@Mapper +public interface OrgApiAuthDao { + + /** + * 查询【机构接口权限】列表 + * + * @param orgApiAuthEntity 【机构接口权限】 + * @return 【机构接口权限】集合 + */ + List selectList(OrgApiAuth orgApiAuthEntity); + + /** + * 新增数据 + */ + int insert(OrgApiAuth orgApiAuth); + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + OrgApiAuth queryById(Long id); + + /** + * 统计总行数 + * + * @param orgApiAuth 查询条件 + * @return 总行数 + */ + long count(OrgApiAuth orgApiAuth); + + /** + * 获取全部接口列表 + * @param req + */ + List selectAllApi(OrgAuthReq req); + + /** + * 根据机构删除数据 + * @param orgNo + * @return + */ + int deleteByOrgNo(String orgNo); +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiEntity.java new file mode 100644 index 00000000..60ee8493 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiEntity.java @@ -0,0 +1,250 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +import java.io.Serializable; + +/** + *

+ * 数据API信息表 + *

+ */ +public class ApiEntity extends BaseEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long apiId; + + + /** + * 状态(0不启用,1启用) + */ + private String status; + + + /** + * API名称 + */ + private String apiName; + + /** + * API版本 + */ + private String apiVersion; + + /** + * API路径 + */ + private String apiUrl; + + /** + * 请求类型 + */ + private String reqMethod; + + /** + * 返回格式 + */ + private String resType; + + /** + * IP黑名单多个,隔开 + */ + private String deny; + + /** + * 限流配置 + */ + private String rateLimit; + + /** + * 执行配置 + */ + private String executeConfig; + + /** + * 请求参数 + */ + private String reqParams; + + /** + * 返回字段 + */ + private String resParams; + + /** + * 创建人所属部门 + */ + private String createDept; + + /** + * 版本号 + */ + private Long version; + + /** + * 验证token + */ + private String recToken; + + /** + * 接口交易码 + */ + private String apiCode; + /** + * 类型:1敏捷API 2系统API + */ + private String apiType; + /** + * 数据源id + */ + private Long sourceId; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public String getDeny() { + return deny; + } + + public void setDeny(String deny) { + this.deny = deny; + } + + public String getRateLimit() { + return rateLimit; + } + + public void setRateLimit(String rateLimit) { + this.rateLimit = rateLimit; + } + + public String getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(String executeConfig) { + this.executeConfig = executeConfig; + } + + public String getReqParams() { + return reqParams; + } + + public void setReqParams(String reqParams) { + this.reqParams = reqParams; + } + + public String getResParams() { + return resParams; + } + + public void setResParams(String resParams) { + this.resParams = resParams; + } + + public String getCreateDept() { + return createDept; + } + + public void setCreateDept(String createDept) { + this.createDept = createDept; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } + + public Long getSourceId() { + return sourceId; + } + + public void setSourceId(Long sourceId) { + this.sourceId = sourceId; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiLogEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiLogEntity.java new file mode 100644 index 00000000..97540eba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiLogEntity.java @@ -0,0 +1,163 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 数据API日志表 + * + * @author yulei + */ +public class ApiLogEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long apiLogId; + /** + * 调用api + */ + private Long apiId; + /** + * api名称 + */ + private transient String apiName; + /** + * 调用者id + */ + private String callerId; + /** + * 调用者ip + */ + private String callerIp; + /** + * 调用url + */ + private String callerUrl; + /** + * 调用参数 + */ + private String callerParams; + /** + * 调用数据量 + */ + private Integer callerSize; + /** + * 调用耗时 + */ + private Long time; + /** + * 信息记录 + */ + private String msg; + /** + * 状态:0:失败,1:成功 + */ + private String status; + /** + * 调用时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date callerDate; + + public Long getApiLogId() { + return apiLogId; + } + + public void setApiLogId(Long apiLogId) { + this.apiLogId = apiLogId; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getCallerId() { + return callerId; + } + + public void setCallerId(String callerId) { + this.callerId = callerId; + } + + public String getCallerIp() { + return callerIp; + } + + public void setCallerIp(String callerIp) { + this.callerIp = callerIp; + } + + public String getCallerUrl() { + return callerUrl; + } + + public void setCallerUrl(String callerUrl) { + this.callerUrl = callerUrl; + } + + public String getCallerParams() { + return callerParams; + } + + public void setCallerParams(String callerParams) { + this.callerParams = callerParams; + } + + public Integer getCallerSize() { + return callerSize; + } + + public void setCallerSize(Integer callerSize) { + this.callerSize = callerSize; + } + + public Long getTime() { + return time; + } + + public void setTime(Long time) { + this.time = time; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Date getCallerDate() { + return callerDate; + } + + public void setCallerDate(Date callerDate) { + this.callerDate = callerDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/CentimeDelay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/CentimeDelay.java new file mode 100644 index 00000000..bffe74f9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/CentimeDelay.java @@ -0,0 +1,83 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 延迟上送比率对象 tbl_qa_centime_delay + * + * @author shu_k + * @date 2023-09-20 + */ +public class CentimeDelay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long id; + + /** + * 时间范围 + */ + private String timeRange; + + /** + * 延迟数量 + */ + private Long delayCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getTimeRange() { + return timeRange; + } + + public void setTimeRange(String timeRange) { + this.timeRange = timeRange; + } + + public Long getDelayCount() { + return delayCount; + } + + public void setDelayCount(Long delayCount) { + this.delayCount = delayCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("timeRange", getTimeRange()) + .append("delayCount", getDelayCount()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/DataConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/DataConfig.java new file mode 100644 index 00000000..8ca2830e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/DataConfig.java @@ -0,0 +1,131 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; + +/** + * 参数配置表 tbl_sys_config + * + * @author admin + */ +public class DataConfig extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 参数主键 + */ + private Long configId; + + /** + * 版本号 + */ + private Long versionNum; + /** + * token锁 + */ + private String recToken; + + /** + * 参数名称 + */ + private String configName; + + /** + * 参数键名 + */ + private String configKey; + + /** + * 参数键值 + */ + private String configValue; + + /** + * 系统内置(Y是 N否) + */ + private String configType; + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + @NotBlank(message = "参数名称不能为空") + @Size(min = 0, max = 100, message = "参数名称不能超过100个字符") + public String getConfigName() { + return configName; + } + + public void setConfigName(String configName) { + this.configName = configName; + } + + @NotBlank(message = "参数键名长度不能为空") + @Size(min = 0, max = 100, message = "参数键名长度不能超过100个字符") + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + @NotBlank(message = "参数键值不能为空") + @Size(min = 0, max = 500, message = "参数键值长度不能超过500个字符") + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public String getConfigType() { + return configType; + } + + public void setConfigType(String configType) { + this.configType = configType; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("configId", getConfigId()) + .append("versionNum", getVersionNum()) + .append("recToken", getRecToken()) + .append("configName", getConfigName()) + .append("configKey", getConfigKey()) + .append("configValue", getConfigValue()) + .append("configType", getConfigType()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineInfo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineInfo.java new file mode 100644 index 00000000..5dd0855d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineInfo.java @@ -0,0 +1,62 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 线路基础信息对象 tbl_prd_base_line + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 线路名称 */ + private String lineName; + + /** 6位线路编码 */ + private String lineCode; + + /** 五位线路编码 */ + private String lineNo; + + public void setLineName(String lineName) + { + this.lineName = lineName; + } + + public String getLineName() + { + return lineName; + } + public void setLineCode(String lineCode) + { + this.lineCode = lineCode; + } + + public String getLineCode() + { + return lineCode; + } + public void setLineNo(String lineNo) + { + this.lineNo = lineNo; + } + + public String getLineNo() + { + return lineNo; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("lineName", getLineName()) + .append("lineCode", getLineCode()) + .append("lineNo", getLineNo()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricDay.java new file mode 100644 index 00000000..d61220ea --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricDay.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 统计时间段内的线路客流量对象 tbl_prd_line_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("lineStatus", getLineStatus()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("serviceType", getServiceType()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHour.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHour.java new file mode 100644 index 00000000..6b5a4464 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHour.java @@ -0,0 +1,181 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 线路小时客流量统计对象 tbl_prd_line_metric_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricHour extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标小时 + */ + private Long metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * $column.columnComment + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Long getMetricHour() { + return metricHour; + } + + public void setMetricHour(Long metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("lineStatus", getLineStatus()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("serviceType", getServiceType()) + .append("metricHour", getMetricHour()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHourEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHourEntity.java new file mode 100644 index 00000000..c1771d3a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHourEntity.java @@ -0,0 +1,125 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import java.io.Serializable; +import java.util.Date; + +/** + * 统计时间段内的线路客流量(LineMetricHour)实体类 + * + * @author makejava + * @since 2023-07-13 20:05:55 + */ +public class LineMetricHourEntity implements Serializable { + private static final long serialVersionUID = 699515881208701549L; + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + /** + * 营运公司名称 + */ + private String companyName; + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + /** + * 指标小时 + */ + private Integer metricHour; + /** + * 指标日期 + */ + private Date metricDate; + /** + * 指标 + */ + private Integer metricValue; + + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Integer getMetricValue() { + return metricValue; + } + + public void setMetricValue(Integer metricValue) { + this.metricValue = metricValue; + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricMonth.java new file mode 100644 index 00000000..e073ec63 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricMonth.java @@ -0,0 +1,162 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("lineStatus", getLineStatus()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("serviceType", getServiceType()) + .append("metricMonth", getMetricMonth()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationInfo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationInfo.java new file mode 100644 index 00000000..17b054b5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationInfo.java @@ -0,0 +1,102 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang.builder.ToStringBuilder; +import org.apache.commons.lang.builder.ToStringStyle; + +/** + * 站点基础信息对象 tbl_prd_base_line_station + * + * @author ruoyi + * @date 2023-09-19 + */ +public class LineStationInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 六位线路编码 */ + private String lineCode; + + /** 线路名称 */ + private String lineName; + + /** 方向 */ + private String up; + + /** 站序 */ + private Long levels; + + /** 站点名称 */ + private String levelName; + + /** 五位线路编码 */ + private String lineNo; + + public void setLineCode(String lineCode) + { + this.lineCode = lineCode; + } + + public String getLineCode() + { + return lineCode; + } + public void setLineName(String lineName) + { + this.lineName = lineName; + } + + public String getLineName() + { + return lineName; + } + public void setUp(String up) + { + this.up = up; + } + + public String getUp() + { + return up; + } + public void setLevels(Long levels) + { + this.levels = levels; + } + + public Long getLevels() + { + return levels; + } + public void setLevelName(String levelName) + { + this.levelName = levelName; + } + + public String getLevelName() + { + return levelName; + } + public void setLineNo(String lineNo) + { + this.lineNo = lineNo; + } + + public String getLineNo() + { + return lineNo; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("levelName", getLevelName()) + .append("lineNo", getLineNo()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricDay.java new file mode 100644 index 00000000..a40273e5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricDay.java @@ -0,0 +1,153 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levelName", getLevelName()) + .append("levels", getLevels()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricHour.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricHour.java new file mode 100644 index 00000000..833b9b67 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricHour.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 站点小时客流量统计对象 tbl_prd_line_station_metric_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationMetricHour extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 指标小时 + */ + private Integer metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("levelName", getLevelName()) + .append("metricHour", getMetricHour()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricMonth.java new file mode 100644 index 00000000..0bc36d2c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricMonth.java @@ -0,0 +1,148 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 站点月客流量统计对象 tbl_prd_line_station_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationMetricMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("levelName", getLevelName()) + .append("metricMonth", getMetricMonth()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransDay.java new file mode 100644 index 00000000..509d7f13 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransDay.java @@ -0,0 +1,164 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationTransDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘类型 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "LineStationTransDay{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransHour.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransHour.java new file mode 100644 index 00000000..495b610a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransHour.java @@ -0,0 +1,178 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点小时换乘客流量统计对象 tbl_prd_line_station_trans_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationTransHour extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标小时 + */ + private Integer metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "LineStationTransHour{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricHour=" + metricHour + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransMonth.java new file mode 100644 index 00000000..932fc585 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransMonth.java @@ -0,0 +1,159 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationTransMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "LineStationTransMonth{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/MetadataSourceEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/MetadataSourceEntity.java new file mode 100644 index 00000000..7aefe454 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/MetadataSourceEntity.java @@ -0,0 +1,201 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + *

+ * 数据源信息表 + *

+ */ +public class MetadataSourceEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long sourceId; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** + * 创建人 + */ + private String createBy; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 状态(0不启用,1启用) + */ + private String status; + + /** + * 备注 + */ + private String remark; + + /** + * 数据源类型 + */ + private String dbType; + + /** + * 数据源名称 + */ + private String sourceName; + + /** + * 元数据同步(0否,1同步中, 2是) + */ + private String isSync; + + /** + * 数据源连接信息 + */ + private String dbSchema; + + /** + * 创建人所属部门 + */ + private String createDept; + + /** + * 版本号 + */ + private Long version; + + /** + * 验证token + */ + private String recToken; + + public Long getSourceId() { + return sourceId; + } + + public void setSourceId(Long sourceId) { + this.sourceId = sourceId; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getDbType() { + return dbType; + } + + public void setDbType(String dbType) { + this.dbType = dbType; + } + + public String getSourceName() { + return sourceName; + } + + public void setSourceName(String sourceName) { + this.sourceName = sourceName; + } + + public String getIsSync() { + return isSync; + } + + public void setIsSync(String isSync) { + this.isSync = isSync; + } + + public String getDbSchema() { + return dbSchema; + } + + public void setDbSchema(String dbSchema) { + this.dbSchema = dbSchema; + } + + public String getCreateDept() { + return createDept; + } + + public void setCreateDept(String createDept) { + this.createDept = createDept; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgApiAuth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgApiAuth.java new file mode 100644 index 00000000..c3e1304a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgApiAuth.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import java.io.Serializable; + +/** + * 【机构接口权限表】(OrgApiAuth)实体类 + * + * @author makejava + * @since 2023-07-13 16:03:55 + */ +public class OrgApiAuth implements Serializable { + private static final long serialVersionUID = -83419851209972540L; + /** + * 【ID】 + */ + private Long id; + /** + * 【机构号】 + */ + private String orgNo; + /** + * 【接口API ID】 + */ + private Long apiId; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgConfig.java new file mode 100644 index 00000000..8cc26433 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgConfig.java @@ -0,0 +1,152 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +/** + * 机构配置信息 + * + * @author yulei + **/ +public class OrgConfig extends BaseEntity { + + /** + * 主键ID + */ + private Long configId; + + /** + * 机构号 + */ + private String orgNo; + + /** + * data:config:start:time + * data:config:end:time + * 配置项 + */ + private String configKey; + + /** + * 配置说明 + */ + private String configDesc; + + /** + * 配置值 + */ + private String configValue; + /** + * 版本号 + */ + private Long versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 状态 + */ + private String status; + + private String orgName; + + /** + * 会员号 + */ + private String memberId; + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigDesc() { + return configDesc; + } + + public void setConfigDesc(String configDesc) { + this.configDesc = configDesc; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgGatewayLog.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgGatewayLog.java new file mode 100644 index 00000000..bcf688e2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgGatewayLog.java @@ -0,0 +1,268 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 网关访问日志对象 tbl_org_gateway_log + * + * @author yulei + * @date 2023-06-19 + */ +public class OrgGatewayLog implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 【主键】 + */ + private String logId; + + /** + * 【请求流水号】 + */ + private String reqNo; + + /** + * 【服务id】 + */ + private String apiId; + + /** + * 【服务名称】 + */ + private String apiName; + + /** + * 【服务编码】 + */ + private String apiCode; + + /** + * 【状态】 + */ + private String status; + + /** + * 【请求时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date reqTime; + + /** + * 【请求ip地址】 + */ + private String reqIp; + + /** + * 【请求报文】 + */ + private String reqJson; + + /** + * 【返回报文】 + */ + private String resJson; + + /** + * 【耗时】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date consumingTime; + + /** + * 【 创建用户】 + */ + private String createByName; + + /** + * 【更新用户】 + */ + private String updateByName; + + /** + * 【版本号】 + */ + private String versionNum; + + /** + * 【随机码】 + */ + private String recToken; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** + * 创建人 + */ + private String createBy; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** + * 更新人 + */ + private String updateBy; + + public String getLogId() { + return logId; + } + + public void setLogId(String logId) { + this.logId = logId; + } + + public String getReqNo() { + return reqNo; + } + + public void setReqNo(String reqNo) { + this.reqNo = reqNo; + } + + public String getApiId() { + return apiId; + } + + public void setApiId(String apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Date getReqTime() { + return reqTime; + } + + public void setReqTime(Date reqTime) { + this.reqTime = reqTime; + } + + public String getReqIp() { + return reqIp; + } + + public void setReqIp(String reqIp) { + this.reqIp = reqIp; + } + + public String getReqJson() { + return reqJson; + } + + public void setReqJson(String reqJson) { + this.reqJson = reqJson; + } + + public String getResJson() { + return resJson; + } + + public void setResJson(String resJson) { + this.resJson = resJson; + } + + public Date getConsumingTime() { + return consumingTime; + } + + public void setConsumingTime(Date consumingTime) { + this.consumingTime = consumingTime; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfo.java new file mode 100644 index 00000000..ca31f50f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfo.java @@ -0,0 +1,293 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import java.io.Serializable; +import java.util.Date; + +/** + * 【机构管理信息表】(OrgInfo)实体类 + * + * @author makejava + * @since 2023-07-13 16:03:58 + */ +public class OrgInfo implements Serializable { + private static final long serialVersionUID = -91946210011377620L; + /** + * 【机构号】 + */ + private String orgNo; + /** + * 【机构名称】 + */ + private String orgName; + /** + * 【机构类型】 + */ + private String orgType; + /** + * 【机构描述】 + */ + private String orgDesc; + /** + * 【加盐】 + */ + private String salt; + /** + * 【加密】 + */ + private String encrypt; + /** + * 【生效时间】 + */ + private Date startTime; + /** + * 【到期时间】 + */ + private Date endTime; + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + /** + * 【版本号】 + */ + private Integer versionNum; + /** + * 【随机码】 + */ + private String recToken; + /** + * 【创建者】 + */ + private String createBy; + /** + * 创建人 + */ + private String createByName; + /** + * 【创建时间】 + */ + private Date createTime; + /** + * 【更新者】 + */ + private String updateBy; + /** + * 更新人 + */ + private String updateByName; + /** + * 【更新时间】 + */ + private Date updateTime; + /** + * 【删除标志】0代表存在 2代表删除 + */ + private String delFlag; + /** + * 【ip白名单】 + */ + private String ip; + /** + * 【联系人电话】 + */ + private String contractTel; + /** + * 数据起始时间 + */ + private Date dataBegin; + /** + * 数据结束时间 + */ + private Date dataEnd; + /** + * 【用户ID】 + */ + private Long userId; + + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Integer getVersionNum() { + return versionNum; + } + + public void setVersionNum(Integer versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public Date getDataBegin() { + return dataBegin; + } + + public void setDataBegin(Date dataBegin) { + this.dataBegin = dataBegin; + } + + public Date getDataEnd() { + return dataEnd; + } + + public void setDataEnd(Date dataEnd) { + this.dataEnd = dataEnd; + } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfoEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfoEntity.java new file mode 100644 index 00000000..19295240 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfoEntity.java @@ -0,0 +1,269 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 【机构管理信息】对象 tbl_org_info + * + * @author yulei + * @date 2023-06-16 + */ +public class OrgInfoEntity extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 【机构号】 + */ + private String orgNo; + + /** + * 【机构名称】 + */ + private String orgName; + + /** + * 【机构类型】 + */ + private String orgType; + + /** + * 【机构描述】 + */ + private String orgDesc; + + /** + * 【加盐】 + */ + private String salt; + + /** + * 【加密】 + */ + private String encrypt; + + /** + * 【生效时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + + /** + * 【版本号】 + */ + private String versionNum; + + /** + * 【随机码】 + */ + private String recToken; + + /** + * 创建人 + */ + private String createByName; + + /** + * 更新人 + */ + private String updateByName; + + /** + * 【删除标志】0代表存在 2代表删除 + */ + private String delFlag; + + + /** + * 【ip白名单】 + */ + private String ip; + + /** + * 【联系人电话】 + */ + private String contractTel; + + /** + * 数据起始时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date dataBegin; + + /** + * 数据结束时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date dataEnd; + + /** + * 会员Id + */ + private String memberId; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public Date getDataBegin() { + return dataBegin; + } + + public void setDataBegin(Date dataBegin) { + this.dataBegin = dataBegin; + } + + public Date getDataEnd() { + return dataEnd; + } + + public void setDataEnd(Date dataEnd) { + this.dataEnd = dataEnd; + } + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgStatisticsEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgStatisticsEntity.java new file mode 100644 index 00000000..799e158e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgStatisticsEntity.java @@ -0,0 +1,165 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 接口调用次数统计对象 tbl_org_statistics + * + * @author yulei + * @date 2023-06-16 + */ +public class OrgStatisticsEntity extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * id + */ + private Long id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名 + */ + private String orgName; + + /** + * 接口id + */ + private Long apiId; + + /** + * 成功次数 + */ + private Integer successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 版本号 + */ + private Integer versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 是否删除【0否,1是】 + */ + private String delFlag; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public Integer getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Integer successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public Integer getVersionNum() { + return versionNum; + } + + public void setVersionNum(Integer versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("orgNo", getOrgNo()) + .append("orgName", getOrgName()) + .append("apiId", getApiId()) + .append("successTotal", getSuccessTotal()) + .append("failTotal", getFailTotal()) + .append("apiName", getApiName()) + .append("createTime", getCreateTime()) + .append("createBy", getCreateBy()) + .append("updateTime", getUpdateTime()) + .append("updateBy", getUpdateBy()) + .append("versionNum", getVersionNum()) + .append("recToken", getRecToken()) + .append("delFlag", getDelFlag()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/PosMatchRate.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/PosMatchRate.java new file mode 100644 index 00000000..a153ae8a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/PosMatchRate.java @@ -0,0 +1,98 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * Pos匹配率对象 tbl_qa_pos_match_rate + * + * @author shu_k + * @date 2023-09-20 + */ +public class PosMatchRate extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 交易数量 + */ + private Long tranNum; + + /** + * 匹配数量 + */ + private Long matchNum; + + /** + * 匹配率 + */ + private BigDecimal matchRate; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getTranNum() { + return tranNum; + } + + public void setTranNum(Long tranNum) { + this.tranNum = tranNum; + } + + public Long getMatchNum() { + return matchNum; + } + + public void setMatchNum(Long matchNum) { + this.matchNum = matchNum; + } + + public BigDecimal getMatchRate() { + return matchRate; + } + + public void setMatchRate(BigDecimal matchRate) { + this.matchRate = matchRate; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("tranNum", getTranNum()) + .append("matchNum", getMatchNum()) + .append("matchRate", getMatchRate()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteDailyCount.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteDailyCount.java new file mode 100644 index 00000000..7674629d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteDailyCount.java @@ -0,0 +1,97 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 日营运线路条数对象 tbl_qa_route_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteDailyCount extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 线路数量 + */ + private Long routeCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 运营公司编码 + */ + private String companyCode; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getRouteCount() { + return routeCount; + } + + public void setRouteCount(Long routeCount) { + this.routeCount = routeCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("companyName", getCompanyName()) + .append("routeCount", getRouteCount()) + .append("txnDate", getTxnDate()) + .append("companyCode", getCompanyCode()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMetricDay.java new file mode 100644 index 00000000..7c8eb280 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMetricDay.java @@ -0,0 +1,225 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 司机工号 + */ + private String driverCode; + + /** + * 起点 + */ + private String startStation; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date startTime; + + /** + * 终点 + */ + private String endStation; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 路单类型 + */ + private String waybillType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getWaybillType() { + return waybillType; + } + + public void setWaybillType(String waybillType) { + this.waybillType = waybillType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("licensePlate", getLicensePlate()) + .append("driverCode", getDriverCode()) + .append("startStation", getStartStation()) + .append("startTime", getStartTime()) + .append("endStation", getEndStation()) + .append("arrivalTime", getArrivalTime()) + .append("waybillType", getWaybillType()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMiss.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMiss.java new file mode 100644 index 00000000..b22cbb2b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMiss.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 班次缺失率对象 tbl_qa_route_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteMiss extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键Id */ + private Long id; + + /** 缺失率 */ + private BigDecimal missRate; + + /** 日期 */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** 电子路单数量班次 */ + private Long routeCount; + + /** 调离站班次数量 */ + private Long busStopCount; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setMissRate(BigDecimal missRate) + { + this.missRate = missRate; + } + + public BigDecimal getMissRate() + { + return missRate; + } + public void setTxnDate(Date txnDate) + { + this.txnDate = txnDate; + } + + public Date getTxnDate() + { + return txnDate; + } + public void setRouteCount(Long routeCount) + { + this.routeCount = routeCount; + } + + public Long getRouteCount() + { + return routeCount; + } + public void setBusStopCount(Long busStopCount) + { + this.busStopCount = busStopCount; + } + + public Long getBusStopCount() + { + return busStopCount; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("missRate", getMissRate()) + .append("txnDate", getTxnDate()) + .append("routeCount", getRouteCount()) + .append("busStopCount", getBusStopCount()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteTurnoverTime.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteTurnoverTime.java new file mode 100644 index 00000000..c58fbb94 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteTurnoverTime.java @@ -0,0 +1,125 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 班次周转时间对象 tbl_qa_route_turnover_time + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteTurnoverTime extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 平均周转时间 + */ + private Long turnoverTime; + + /** + * 早晚高峰名称 + */ + private String hlowPeakName; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public Long getTurnoverTime() { + return turnoverTime; + } + + public void setTurnoverTime(Long turnoverTime) { + this.turnoverTime = turnoverTime; + } + + public String getHlowPeakName() { + return hlowPeakName; + } + + public void setHlowPeakName(String hlowPeakName) { + this.hlowPeakName = hlowPeakName; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("turnoverTime", getTurnoverTime()) + .append("hlowPeakName", getHlowPeakName()) + .append("wayBillType", getWayBillType()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricDay.java new file mode 100644 index 00000000..74ac5d39 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricDay.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("lineStatus", getLineStatus()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("levelName", getLevelName()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonth.java new file mode 100644 index 00000000..d947acc7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonth.java @@ -0,0 +1,162 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 站点月换乘客流量统计对象 tbl_prd_station_freq_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("lineStatus", getLineStatus()) + .append("metricMonth", getMetricMonth()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("levelName", getLevelName()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonthEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonthEntity.java new file mode 100644 index 00000000..7c292eaf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonthEntity.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +/** + * @ClassName : StationFreqMetricMonthEntity + * @Description : + * @Author : sky + * @Date: 2023-07-13 11:00 + */ +public class StationFreqMetricMonthEntity { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private int levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private int metricValue; + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + public void setUp(String up) { + this.up = up; + } + + public String getUp() { + return up; + } + + public void setLevels(int levels) { + this.levels = levels; + } + + public int getLevels() { + return levels; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricValue(int metricValue) { + this.metricValue = metricValue; + } + + public int getMetricValue() { + return metricValue; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransDay.java new file mode 100644 index 00000000..66fcf6d0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransDay.java @@ -0,0 +1,149 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransMonth.java new file mode 100644 index 00000000..0bafa7e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransMonth.java @@ -0,0 +1,144 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationMiss.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationMiss.java new file mode 100644 index 00000000..ce91c52c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationMiss.java @@ -0,0 +1,265 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 站点缺失率对象 tbl_qa_station_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class StationMiss extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 驾驶员工号 + */ + private String driverCode; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 起点 + */ + private String startStation; + + /** + * 终点 + */ + private String endStation; + + /** + * 上下行 + */ + private String up; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 起点站级 + */ + private Long startStationLevels; + + /** + * 终点站级 + */ + private Long endStationLevels; + + /** + * 班次站点数 + */ + private Long levelNum; + + /** + * 车辆到离站数 + */ + private Long busStopNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 缺失率 + */ + private BigDecimal missRate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Long getStartStationLevels() { + return startStationLevels; + } + + public void setStartStationLevels(Long startStationLevels) { + this.startStationLevels = startStationLevels; + } + + public Long getEndStationLevels() { + return endStationLevels; + } + + public void setEndStationLevels(Long endStationLevels) { + this.endStationLevels = endStationLevels; + } + + public Long getLevelNum() { + return levelNum; + } + + public void setLevelNum(Long levelNum) { + this.levelNum = levelNum; + } + + public Long getBusStopNum() { + return busStopNum; + } + + public void setBusStopNum(Long busStopNum) { + this.busStopNum = busStopNum; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public BigDecimal getMissRate() { + return missRate; + } + + public void setMissRate(BigDecimal missRate) { + this.missRate = missRate; + } + + @Override + public String toString() { + return "StationMiss{" + + "id=" + id + + ", lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", licensePlate='" + licensePlate + '\'' + + ", driverCode='" + driverCode + '\'' + + ", startTime=" + startTime + + ", arrivalTime=" + arrivalTime + + ", startStation='" + startStation + '\'' + + ", endStation='" + endStation + '\'' + + ", up='" + up + '\'' + + ", wayBillType='" + wayBillType + '\'' + + ", startStationLevels=" + startStationLevels + + ", endStationLevels=" + endStationLevels + + ", levelNum=" + levelNum + + ", busStopNum=" + busStopNum + + ", txnDate=" + txnDate + + ", missRate=" + missRate + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/SyncRecord.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/SyncRecord.java new file mode 100644 index 00000000..1373877e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/SyncRecord.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 客流表文件对象 tbl_prd_sync_record + * + * @author shu_kai + * @date 2023-09-26 + */ +public class SyncRecord extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 相对路径-包含文件名 + */ + private String path; + + /** + * hive表名 + */ + private String tableName; + + /** + * 文件总记录数 + */ + private Long count; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date txnData; + + private String dataStatus; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getPath() { + return path; + } + + public void setPath(String path) { + this.path = path; + } + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public Long getCount() { + return count; + } + + public void setCount(Long count) { + this.count = count; + } + + public Date getTxnData() { + return txnData; + } + + public void setTxnData(Date txnData) { + this.txnData = txnData; + } + + public String getDataStatus() { + return dataStatus; + } + + public void setDataStatus(String dataStatus) { + this.dataStatus = dataStatus; + } + + @Override + public String toString() { + return "SyncRecord{" + + "id=" + id + + ", path='" + path + '\'' + + ", tableName='" + tableName + '\'' + + ", count=" + count + + ", txnData=" + txnData + + ", dataStatus='" + dataStatus + '\'' + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/TblDataUserApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/TblDataUserApi.java new file mode 100644 index 00000000..026c140e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/TblDataUserApi.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; + + +/** + * 我的应用 - 用户API + * 四个表联合查询的结果 + * tbl_org_info + * tbl_org_api_auth + * tbl_org_config + * tbl_data_api + */ +public class TblDataUserApi extends DataApiResponse { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/VehicleDailyCount.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/VehicleDailyCount.java new file mode 100644 index 00000000..a52eba4d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/VehicleDailyCount.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 日营运车辆数对象 tbl_qa_vehicle_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class VehicleDailyCount extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 公司编码 + */ + private String companyCode; + + /** + * 公司名称 + */ + private String companyName; + + /** + * 车辆数 + */ + private Long vehicleCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getVehicleCount() { + return vehicleCount; + } + + public void setVehicleCount(Long vehicleCount) { + this.vehicleCount = vehicleCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("vehicleCount", getVehicleCount()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/ApiLogTime.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/ApiLogTime.java new file mode 100644 index 00000000..4a730bd7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/ApiLogTime.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity.extend; + +/** + * @ClassName : ApiLogTime + * @Description : 日志统计分布 + * @Author : sky + * @Date: 2023-09-05 19:18 + */ +public class ApiLogTime { + + private Long apiId; + + private Long count; + + private Long avgTime; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public Long getCount() { + return count; + } + + public void setCount(Long count) { + this.count = count; + } + + public Long getAvgTime() { + return avgTime; + } + + public void setAvgTime(Long avgTime) { + this.avgTime = avgTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgApiEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgApiEntity.java new file mode 100644 index 00000000..fd3ff165 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgApiEntity.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity.extend; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; + +/** + * @ClassName : OrgApiEntity + * @Description : 机构接口权限列表 + * @Author : sky + * @Date: 2023-09-01 15:33 + */ +public class OrgApiEntity extends ApiEntity { + + private String orgNo; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgAuthEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgAuthEntity.java new file mode 100644 index 00000000..845fb5b3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgAuthEntity.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity.extend; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; + +/** + * @ClassName : OrgAuthEntity + * @Description : + * @Author : sky + * @Date: 2023-07-13 17:24 + */ +public class OrgAuthEntity extends OrgApiAuth { + + private String apiName; + + private String apiCode; + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiLogMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiLogMapper.java new file mode 100644 index 00000000..5018f30e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiLogMapper.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.ApiLogTime; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * api调用日志 + */ +@Mapper +public interface ApiLogMapper { + + int insert(ApiLogEntity entity); + + List selectList(ApiLogEntity entity); + + ApiLogEntity getById(Long id); + + ApiLogTime countBy(ApiLogEntity entity); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiMapper.java new file mode 100644 index 00000000..5756ed23 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiMapper.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgApiEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + *

+ * 数据API信息表 Mapper 接口 + *

+ */ +@Mapper +public interface ApiMapper { + + List selectListByStatus(String[] status); + + /** + * 查询结构的api列表 + * + * @param orgNo + * @return + */ + List selectOrgApi(String orgNo); + + int insert(ApiEntity apiEntity); + + int updateById(ApiEntity apiEntity); + + ApiEntity getById(Long id); + + int deleteById(ApiEntity entity); + + List selectList(ApiEntity entity); + + ApiEntity getByApiCode(String apiCode); + + /** + * 检测该api是否被引用 + * + * @param apiId + * @return + */ + int check(Long apiId); + + /** + * 获取会员API列表 + * + * @param memberId + * @return + */ + List getUserApi(String memberId); + + List getByIds(Long[] apiIds); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/BaseMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/BaseMapper.java new file mode 100644 index 00000000..e29f773f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/BaseMapper.java @@ -0,0 +1,28 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.common.core.BaseTime; +import org.apache.ibatis.annotations.Mapper; + +/** + * 统一序列接口,方便补全和拼接 + * + * @author zhouliang + */ +@Mapper +public interface BaseMapper { + + /** + * 获取序列-门户用户表 + * + * @return + */ + Long selectSeq(); + + /** + * 获取系统当前时间-yyyyMMddHHmmss + * + * @return + */ + BaseTime selectSysCurrentTime(); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/CentimeDelayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/CentimeDelayMapper.java new file mode 100644 index 00000000..1e463691 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/CentimeDelayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 延迟上送比率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface CentimeDelayMapper { + /** + * 查询延迟上送比率 + * + * @param id 延迟上送比率主键 + * @return 延迟上送比率 + */ + CentimeDelay selectCentimeDelayById(Long id); + + /** + * 查询延迟上送比率列表 + * + * @param centimeDelay 延迟上送比率 + * @return 延迟上送比率集合 + */ + List selectCentimeDelayList(CentimeDelay centimeDelay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/DataConfigMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/DataConfigMapper.java new file mode 100644 index 00000000..7be0329a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/DataConfigMapper.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.DataConfig; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 参数配置 数据层 + * + * @author admin + */ +@Mapper +public interface DataConfigMapper { + /** + * 查询参数配置信息 + * + * @param config 参数配置信息 + * @return 参数配置信息 + */ + DataConfig selectConfig(DataConfig config); + + /** + * 查询参数配置列表 + * + * @param config 参数配置信息 + * @return 参数配置集合 + */ + List selectConfigList(DataConfig config); + + /** + * 根据键名查询参数配置信息 + * + * @param configKey 参数键名 + * @return 参数配置信息 + */ + DataConfig checkConfigKeyUnique(String configKey); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineInfoMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineInfoMapper.java new file mode 100644 index 00000000..36604631 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineInfoMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineInfo; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路基础信息Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineInfoMapper { + /** + * 查询线路基础信息 + * + * @param lineName 线路基础信息主键 + * @return 线路基础信息 + */ + LineInfo selectLineInfoByLineName(String lineName); + + /** + * 查询线路基础信息列表 + * + * @param lineInfo 线路基础信息 + * @return 线路基础信息集合 + */ + List selectLineInfoList(LineInfo lineInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricDayMapper.java new file mode 100644 index 00000000..9b030156 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricDayMapper.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路每天客流宝量指标Mapper接口 + * + * @author shu_k + * @date 2023-09-18 + */ +@Mapper +public interface LineMetricDayMapper { + + /** + * 查询线路每天客流宝量指标列表 + * + * @param lineMetricDay 线路每天客流宝量指标 + * @return 线路每天客流宝量指标集合 + */ + List selectLineMetricDayList(LineMetricDay lineMetricDay); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricHourMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricHourMapper.java new file mode 100644 index 00000000..6dcca36e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricHourMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路小时客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineMetricHourMapper { + /** + * 查询线路小时客流量统计 + * + * @param id 线路小时客流量统计主键 + * @return 线路小时客流量统计 + */ + LineMetricHour selectlineMetricHourById(Long id); + + /** + * 查询线路小时客流量统计列表 + * + * @param lineMetricHour 线路小时客流量统计 + * @return 线路小时客流量统计集合 + */ + List selectlineMetricHourList(LineMetricHour lineMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricMonthMapper.java new file mode 100644 index 00000000..85917136 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路月客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineMetricMonthMapper { + /** + * 查询线路月客流量统计 + * + * @param id 线路月客流量统计主键 + * @return 线路月客流量统计 + */ + LineMetricMonth selectlineMetricMonthById(Long id); + + /** + * 查询线路月客流量统计列表 + * + * @param lineMetricMonth 线路月客流量统计 + * @return 线路月客流量统计集合 + */ + List selectlineMetricMonthList(LineMetricMonth lineMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationInfoMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationInfoMapper.java new file mode 100644 index 00000000..455a0485 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationInfoMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationInfo; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点基础信息Mapper接口 + * + * @author ruoyi + * @date 2023-09-19 + */ +@Mapper +public interface LineStationInfoMapper { + /** + * 查询站点基础信息 + * + * @param lineCode 站点基础信息主键 + * @return 站点基础信息 + */ + LineStationInfo selectLineStationInfoByLineCode(String lineCode); + + /** + * 查询站点基础信息列表 + * + * @param lineStationInfo 站点基础信息 + * @return 站点基础信息集合 + */ + List selectLineStationInfoList(LineStationInfo lineStationInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricDayMapper.java new file mode 100644 index 00000000..ebe4aa6c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationMetricDayMapper { + /** + * 查询站点日客流量统计 + * + * @param id 站点日客流量统计主键 + * @return 站点日客流量统计 + */ + LineStationMetricDay selectLineStationMetricDayById(Long id); + + /** + * 查询站点日客流量统计列表 + * + * @param lineStationMetricDay 站点日客流量统计 + * @return 站点日客流量统计集合 + */ + List selectLineStationMetricDayList(LineStationMetricDay lineStationMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricHourMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricHourMapper.java new file mode 100644 index 00000000..5bf0f44a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricHourMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点小时客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationMetricHourMapper { + /** + * 查询站点小时客流量统计 + * + * @param id 站点小时客流量统计主键 + * @return 站点小时客流量统计 + */ + LineStationMetricHour selectLineStationMetricHourById(Long id); + + /** + * 查询站点小时客流量统计列表 + * + * @param lineStationMetricHour 站点小时客流量统计 + * @return 站点小时客流量统计集合 + */ + List selectLineStationMetricHourList(LineStationMetricHour lineStationMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricMonthMapper.java new file mode 100644 index 00000000..b25d88f9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点月客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationMetricMonthMapper { + /** + * 查询站点月客流量统计 + * + * @param id 站点月客流量统计主键 + * @return 站点月客流量统计 + */ + LineStationMetricMonth selectLineStationMetricMonthById(Long id); + + /** + * 查询站点月客流量统计列表 + * + * @param lineStationMetricMonth 站点月客流量统计 + * @return 站点月客流量统计集合 + */ + List selectLineStationMetricMonthList(LineStationMetricMonth lineStationMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransDayMapper.java new file mode 100644 index 00000000..6eaaafe7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationTransDayMapper { + /** + * 查询站点日换乘客流量统计 + * + * @param id 站点日换乘客流量统计主键 + * @return 站点日换乘客流量统计 + */ + LineStationTransDay selectLineStationTransDayById(Long id); + + /** + * 查询站点日换乘客流量统计列表 + * + * @param lineStationTransDay 站点日换乘客流量统计 + * @return 站点日换乘客流量统计集合 + */ + List selectLineStationTransDayList(LineStationTransDay lineStationTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransHourMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransHourMapper.java new file mode 100644 index 00000000..f9fd6841 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransHourMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点小时换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationTransHourMapper { + /** + * 查询站点小时换乘客流量统计 + * + * @param id 站点小时换乘客流量统计主键 + * @return 站点小时换乘客流量统计 + */ + LineStationTransHour selectLineStationTransHourById(Long id); + + /** + * 查询站点小时换乘客流量统计列表 + * + * @param lineStationTransHour 站点小时换乘客流量统计 + * @return 站点小时换乘客流量统计集合 + */ + List selectLineStationTransHourList(LineStationTransHour lineStationTransHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransMonthMapper.java new file mode 100644 index 00000000..8426c6b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点月换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationTransMonthMapper { + /** + * 查询站点月换乘客流量统计 + * + * @param id 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + LineStationTransMonth selectLineStationTransMonthById(Long id); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param lineStationTransMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectLineStationTransMonthList(LineStationTransMonth lineStationTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/MetadataSourceMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/MetadataSourceMapper.java new file mode 100644 index 00000000..89808865 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/MetadataSourceMapper.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + *

+ * 数据源信息表 Mapper 接口 + *

+ */ +@Mapper +public interface MetadataSourceMapper { + + MetadataSourceEntity getById(Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgConfigMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgConfigMapper.java new file mode 100644 index 00000000..16641eec --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgConfigMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 机构配置信息 + * + * @author yulei + **/ +@Mapper +public interface OrgConfigMapper { + + List getList(OrgConfig config); + + OrgConfig getById(Long configId); + + void insert(OrgConfig config); + + int updateById(OrgConfig config); + + void deleteById(Long configId); + + List getValueList(OrgConfig cfg); + + void deleteByEntity(OrgConfig config); + + void deleteByOrgNo(String orgNo); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgGatewayLogMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgGatewayLogMapper.java new file mode 100644 index 00000000..2847d9cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgGatewayLogMapper.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgGatewayLog; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 网关访问日志Mapper接口 + * + * @author yulei + * @date 2023-06-16 + */ +@Mapper +public interface OrgGatewayLogMapper { + /** + * 查询网关访问日志 + * + * @param logId 网关访问日志主键 + * @return 网关访问日志 + */ + OrgGatewayLog selectOrgGatewayLogByLogId(String logId); + + /** + * 查询网关访问日志列表 + * + * @param orgGatewayLog 网关访问日志 + * @return 网关访问日志集合 + */ + List selectOrgGatewayLogList(OrgGatewayLog orgGatewayLog); + + /** + * 新增网关访问日志 + * + * @param orgGatewayLog 网关访问日志 + * @return 结果 + */ + int insertOrgGatewayLog(OrgGatewayLog orgGatewayLog); + + /** + * 修改网关访问日志 + * + * @param orgGatewayLog 网关访问日志 + * @return 结果 + */ + int updateOrgGatewayLog(OrgGatewayLog orgGatewayLog); + + /** + * 删除网关访问日志 + * + * @param logId 网关访问日志主键 + * @return 结果 + */ + int deleteOrgGatewayLogByLogId(String logId); + + /** + * 批量删除网关访问日志 + * + * @param logIds 需要删除的数据主键集合 + * @return 结果 + */ + int deleteOrgGatewayLogByLogIds(String[] logIds); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgInfoMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgInfoMapper.java new file mode 100644 index 00000000..97c87c69 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgInfoMapper.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.Date; +import java.util.List; + +/** + * 【机构管理信息】Mapper接口 + * + * @author yulei + * @date 2023-06-16 + */ +@Mapper +public interface OrgInfoMapper { + /** + * 查询【机构管理信息】 + * + * @param orgNo 【机构管理信息】主键 + * @return 【机构管理信息】 + */ + OrgInfoEntity selectOrgInfoByOrgNo(String orgNo); + + /** + * 查询【机构管理信息】列表 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 【机构管理信息】集合 + */ + List selectOrgInfoList(OrgInfoEntity orgInfoEntity); + + /** + * 新增【机构管理信息】 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 结果 + */ + int insertOrgInfo(OrgInfoEntity orgInfoEntity); + + /** + * 修改【机构管理信息】 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 结果 + */ + int updateOrgInfo(OrgInfoEntity orgInfoEntity); + + /** + * 删除数据 + * + * @param infoEntity + */ + int delete(OrgInfoEntity infoEntity); + + /** + * 根据会员号获取机构信息 + * + * @param memberId + * @return + */ + OrgInfoEntity getByMemberId(String memberId); + + /** + * 获取到期时间 + * @param date + * @return + */ + List selectEndDate(String date); + + /** + * 获取到期时间之后的机构 + * @param date + * @return + */ + List afterEndDate(Date date); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgStatisticsMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgStatisticsMapper.java new file mode 100644 index 00000000..4fe24453 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgStatisticsMapper.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 接口调用次数统计Mapper接口 + * + * @author yulei + * @date 2023-06-16 + */ +@Mapper +public interface OrgStatisticsMapper { + + /** + * 查询接口调用次数统计列表 + * + * @param orgStatistics 接口调用次数统计 + * @return 接口调用次数统计集合 + */ + List selectOrgStatisticsList(OrgStatisticsEntity orgStatistics); + + /** + * 新增接口调用次数统计 + * + * @param orgStatistics 接口调用次数统计 + * @return 结果 + */ + int insertOrgStatistics(OrgStatisticsEntity orgStatistics); + + /** + * 根据机构和apiId获取唯一机构号 + * @param vo + * @return + */ + OrgStatisticsEntity selectByApi(OrgStatisticsEntity vo); + + int increase(OrgStatisticsEntity orgStatistics); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/PosMatchRateMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/PosMatchRateMapper.java new file mode 100644 index 00000000..ea7248b3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/PosMatchRateMapper.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; +import org.apache.ibatis.annotations.Mapper; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * Pos匹配率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface PosMatchRateMapper { + /** + * 查询Pos匹配率 + * + * @param id Pos匹配率主键 + * @return Pos匹配率 + */ + PosMatchRate selectPosMatchRateById(Long id); + + /** + * 查询Pos匹配率列表 + * + * @param posMatchRate Pos匹配率 + * @return Pos匹配率集合 + */ + List selectPosMatchRateList(PosMatchRate posMatchRate); + + + BigDecimal selectByDate(String txnDate); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteDailyCountMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteDailyCountMapper.java new file mode 100644 index 00000000..ffb7dff1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteDailyCountMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 日营运线路条数Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface RouteDailyCountMapper { + /** + * 查询日营运线路条数 + * + * @param id 日营运线路条数主键 + * @return 日营运线路条数 + */ + RouteDailyCount selectRouteDailyCountById(Long id); + + /** + * 查询日营运线路条数列表 + * + * @param routeDailyCount 日营运线路条数 + * @return 日营运线路条数集合 + */ + List selectRouteDailyCountList(RouteDailyCount routeDailyCount); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMetricDayMapper.java new file mode 100644 index 00000000..8196ad66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMetricDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 班次日客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface RouteMetricDayMapper { + /** + * 查询班次日客流量统计 + * + * @param id 班次日客流量统计主键 + * @return 班次日客流量统计 + */ + RouteMetricDay selectRouteMetricDayById(Long id); + + /** + * 查询班次日客流量统计列表 + * + * @param routeMetricDay 班次日客流量统计 + * @return 班次日客流量统计集合 + */ + List selectRouteMetricDayList(RouteMetricDay routeMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMissMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMissMapper.java new file mode 100644 index 00000000..9696ff56 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMissMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 班次缺失率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface RouteMissMapper { + /** + * 查询班次缺失率 + * + * @param id 班次缺失率主键 + * @return 班次缺失率 + */ + RouteMiss selectRouteMissById(Long id); + + /** + * 查询班次缺失率列表 + * + * @param routeMiss 班次缺失率 + * @return 班次缺失率集合 + */ + List selectRouteMissList(RouteMiss routeMiss); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteTurnoverTimeMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteTurnoverTimeMapper.java new file mode 100644 index 00000000..b3a91e00 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteTurnoverTimeMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 班次周转时间Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface RouteTurnoverTimeMapper { + /** + * 查询班次周转时间 + * + * @param id 班次周转时间主键 + * @return 班次周转时间 + */ + RouteTurnoverTime selectRouteTurnoverTimeById(Long id); + + /** + * 查询班次周转时间列表 + * + * @param routeTurnoverTime 班次周转时间 + * @return 班次周转时间集合 + */ + List selectRouteTurnoverTimeList(RouteTurnoverTime routeTurnoverTime); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricDayMapper.java new file mode 100644 index 00000000..e14ae200 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日常乘客客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqMetricDayMapper { + /** + * 查询站点日常乘客客流量统计 + * + * @param id 站点日常乘客客流量统计主键 + * @return 站点日常乘客客流量统计 + */ + StationFreqMetricDay selectStationFreqMetricDayById(Long id); + + /** + * 查询站点日常乘客客流量统计列表 + * + * @param stationFreqMetricDay 站点日常乘客客流量统计 + * @return 站点日常乘客客流量统计集合 + */ + List selectStationFreqMetricDayList(StationFreqMetricDay stationFreqMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricMonthMapper.java new file mode 100644 index 00000000..83c823c0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点月换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqMetricMonthMapper { + /** + * 查询站点月换乘客流量统计 + * + * @param lineCode 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + StationFreqMetricMonth selectStationFreqMetricMonthByLineCode(String lineCode); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param stationFreqMetricMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectStationFreqMetricMonthList(StationFreqMetricMonth stationFreqMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransDayMapper.java new file mode 100644 index 00000000..84b5cdb3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqTransDayMapper { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransDay selectStationFreqTransDayById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransDay 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransDayList(StationFreqTransDay stationFreqTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransMonthMapper.java new file mode 100644 index 00000000..56e407bb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqTransMonthMapper { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransMonth selectStationFreqTransMonthById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransMonth 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransMonthList(StationFreqTransMonth stationFreqTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationMissMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationMissMapper.java new file mode 100644 index 00000000..7c63d095 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationMissMapper.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点缺失率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface StationMissMapper { + /** + * 查询站点缺失率 + * + * @param id 站点缺失率主键 + * @return 站点缺失率 + */ + StationMiss selectStationMissById(Long id); + + /** + * 查询站点缺失率列表 + * + * @param stationMiss 站点缺失率 + * @return 站点缺失率集合 + */ + List selectStationMissList(StationMiss stationMiss); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/SyncRecordMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/SyncRecordMapper.java new file mode 100644 index 00000000..e14e4ed3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/SyncRecordMapper.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 客流表文件Mapper接口 + * + * @author shu_kai + * @date 2023-09-26 + */ +@Mapper +public interface SyncRecordMapper { + + /** + * 查询客流表文件列表 + * + * @param syncRecord 客流表文件 + * @return 客流表文件集合 + */ + List selectSyncRecordList(SyncRecord syncRecord); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/VehicleDailyCountMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/VehicleDailyCountMapper.java new file mode 100644 index 00000000..bce99eab --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/VehicleDailyCountMapper.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 日营运车辆数Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface VehicleDailyCountMapper { + /** + * 查询日营运车辆数 + * + * @param id 日营运车辆数主键 + * @return 日营运车辆数 + */ + VehicleDailyCount selectVehicleDailyCountById(Long id); + + /** + * 查询日营运车辆数列表 + * + * @param vehicleDailyCount 日营运车辆数 + * @return 日营运车辆数集合 + */ + List selectVehicleDailyCountList(VehicleDailyCount vehicleDailyCount); + + /** + * 统计车辆数 + * @param req + * @return + */ + Long countBus(VehicleDailyCount req); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DataSourceFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DataSourceFactory.java new file mode 100644 index 00000000..b0006174 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DataSourceFactory.java @@ -0,0 +1,12 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +public interface DataSourceFactory { + + /** + * 创建数据源实例 + * + * @param property + * @return + */ + DbQuery createDbQuery(DbQueryProperty property); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbColumn.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbColumn.java new file mode 100644 index 00000000..5ec1fb70 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbColumn.java @@ -0,0 +1,134 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +public class DbColumn { + + /** + * 列名 + */ + private String colName; + + /** + * 数据类型 + */ + private String dataType; + + /** + * 数据长度 + */ + private String dataLength; + + /** + * 数据精度 + */ + private String dataPrecision; + + /** + * 数据小数位 + */ + private String dataScale; + + /** + * 是否主键 + */ + private Boolean colKey; + + /** + * 是否允许为空 + */ + private Boolean nullable; + + /** + * 列的序号 + */ + private Integer colPosition; + + /** + * 列默认值 + */ + private String dataDefault; + + /** + * 列注释 + */ + private String colComment; + + public String getColName() { + return colName; + } + + public void setColName(String colName) { + this.colName = colName; + } + + public String getDataType() { + return dataType; + } + + public void setDataType(String dataType) { + this.dataType = dataType; + } + + public String getDataLength() { + return dataLength; + } + + public void setDataLength(String dataLength) { + this.dataLength = dataLength; + } + + public String getDataPrecision() { + return dataPrecision; + } + + public void setDataPrecision(String dataPrecision) { + this.dataPrecision = dataPrecision; + } + + public String getDataScale() { + return dataScale; + } + + public void setDataScale(String dataScale) { + this.dataScale = dataScale; + } + + public Boolean getColKey() { + return colKey; + } + + public void setColKey(Boolean colKey) { + this.colKey = colKey; + } + + public Boolean getNullable() { + return nullable; + } + + public void setNullable(Boolean nullable) { + this.nullable = nullable; + } + + public Integer getColPosition() { + return colPosition; + } + + public void setColPosition(Integer colPosition) { + this.colPosition = colPosition; + } + + public String getDataDefault() { + return dataDefault; + } + + public void setDataDefault(String dataDefault) { + this.dataDefault = dataDefault; + } + + public String getColComment() { + return colComment; + } + + public void setColComment(String colComment) { + this.colComment = colComment; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbDialect.java new file mode 100644 index 00000000..a7a5af5e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbDialect.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import org.springframework.jdbc.core.RowMapper; + +/** + * 表数据查询接口 + */ +public interface DbDialect { + + RowMapper tableMapper(); + + RowMapper columnMapper(); + + /** + * 获取指定表的所有列 + * + * @param dbName + * @param tableName + * @return + */ + String columns(String dbName, String tableName); + + /** + * 获取数据库下的 所有表 + * + * @param dbName + * @return + */ + String tables(String dbName); + + /** + * 构建 分页 sql + * + * @param sql + * @param offset + * @param count + * @return + */ + String buildPaginationSql(String sql, long offset, long count); + + /** + * 包装 count sql + * + * @param sql + * @return + */ + String count(String sql); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbMD5Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbMD5Util.java new file mode 100644 index 00000000..6a461049 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbMD5Util.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import java.security.MessageDigest; + +public class DbMD5Util { + + private static final char[] HEX_CHARS = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; + + /** + * MD5加密 + */ + public static String encrypt(String value){ + return encrypt(value.getBytes()); + } + + /** + * MD5加密 + */ + public static String encrypt(byte[] value){ + try { + byte[] bytes = MessageDigest.getInstance("MD5").digest(value); + char[] chars = new char[32]; + for (int i = 0; i < chars.length; i = i + 2) { + byte b = bytes[i / 2]; + chars[i] = HEX_CHARS[(b >>> 0x4) & 0xf]; + chars[i + 1] = HEX_CHARS[b & 0xf]; + } + return new String(chars); + } catch (Exception e) { + throw new RuntimeException("md5 encrypt error", e); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQuery.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQuery.java new file mode 100644 index 00000000..25e13e49 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQuery.java @@ -0,0 +1,115 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import com.jiuyv.sptccc.agile.common.core.page.PageResult; + +import java.sql.Connection; +import java.util.List; +import java.util.Map; + +/** + * 表数据查询接口 + */ +public interface DbQuery { + + /** + * 获取数据库连接 + */ + Connection getConnection(); + + /** + * 检测连通性 + */ + boolean valid(); + + /** + * 关闭数据源 + */ + void close(); + + /** + * 获取指定表 具有的所有字段列表 + * @param dbName + * @param tableName + * @return + */ + List getTableColumns(String dbName, String tableName); + + /** + * 获取指定数据库下 所有的表信息 + * + * @param dbName + * @return + */ + List getTables(String dbName); + + /** + * 获取总数 + * + * @param sql + * @return + */ + Long count(String sql); + + /** + * 获取总数带查询参数 + * + * @param sql + * @return + */ + Long count(String sql, Object[] args); + + /** + * 获取总数带查询参数 NamedParameterJdbcTemplate + * + * @param sql + * @return + */ + Long count(String sql, Map params); + + /** + * 查询结果列表 + * + * @param sql + * @return + */ + List> queryList(String sql); + + /** + * 查询结果列表带查询参数 + * + * @param sql + * @param args + * @return + */ + List> queryList(String sql, Object[] args); + + /** + * 查询结果分页 + * + * @param sql + * @param offset + * @param size + * @return + */ + PageResult> queryByPage(String sql, long offset, long size); + + /** + * 查询结果分页带查询参数 + * @param sql + * @param args + * @param offset + * @param size + * @return + */ + PageResult> queryByPage(String sql, Object[] args, long offset, long size); + + /** + * 查询结果分页带查询参数 NamedParameterJdbcTemplate + * @param sql + * @param params + * @param offset + * @param size + * @return + */ + PageResult> queryByPage(String sql, Map params, long offset, long size); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQueryProperty.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQueryProperty.java new file mode 100644 index 00000000..c964efe6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQueryProperty.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import org.apache.commons.lang3.StringUtils; + +import java.io.Serializable; + +//@AllArgsConstructor +public class DbQueryProperty implements Serializable { + + private static final long serialVersionUID = 1L; + + private String dbType; + private String host; + private String username; + private String password; + private Integer port; + private String dbName; + private String sid; + + /** + * 参数合法性校验 + */ + public void viald() { + if (StringUtils.isEmpty(dbType) || StringUtils.isEmpty(host) || + StringUtils.isEmpty(username) || StringUtils.isEmpty(password) || + port == null) { + throw new RuntimeException("参数不完整"); + } + if (DbType.OTHER.getDb().equals(dbType)) { + throw new RuntimeException("不支持的数据库类型"); + } + } + + public DbQueryProperty(String dbType, String host, String username, String password, Integer port, String dbName, String sid) { + this.dbType = dbType; + this.host = host; + this.username = username; + this.password = password; + this.port = port; + this.dbName = dbName; + this.sid = sid; + } + + public String getDbType() { + return dbType; + } + + public void setDbType(String dbType) { + this.dbType = dbType; + } + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public Integer getPort() { + return port; + } + + public void setPort(Integer port) { + this.port = port; + } + + public String getDbName() { + return dbName; + } + + public void setDbName(String dbName) { + this.dbName = dbName; + } + + public String getSid() { + return sid; + } + + public void setSid(String sid) { + this.sid = sid; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbTable.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbTable.java new file mode 100644 index 00000000..2f2dfd77 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbTable.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +public class DbTable { + + /** + * 表名 + */ + private String tableName; + + /** + * 表注释 + */ + private String tableComment; + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public String getTableComment() { + return tableComment; + } + + public void setTableComment(String tableComment) { + this.tableComment = tableComment; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbType.java new file mode 100644 index 00000000..398c51a8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbType.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +/** + * 数据库类型 + */ +public enum DbType { + + /** + * MYSQL + */ + MYSQL("1", "MySql数据库", "jdbc:mysql://${host}:${port}/${dbName}?serverTimezone=GMT%2B8&characterEncoding=UTF-8&useUnicode=true&useSSL=false"), + /** + * MARIADB + */ + MARIADB("2", "MariaDB数据库", "jdbc:mariadb://${host}:${port}/${dbName}"), + /** + * ORACLE + */ + ORACLE("3", "Oracle11g及以下数据库", "jdbc:oracle:thin:@${host}:${port}:${sid}"), + /** + * oracle12c new pagination + */ + ORACLE_12C("4", "Oracle12c+数据库", "jdbc:oracle:thin:@${host}:${port}:${sid}"), + /** + * POSTGRESQL + */ + POSTGRE_SQL("5", "PostgreSql数据库", "jdbc:postgresql://${host}:${port}/${dbName}"), + /** + * SQLSERVER2005 + */ + SQL_SERVER2008("6", "SQLServer2008及以下数据库", "jdbc:sqlserver://${host}:${port};DatabaseName=${dbName}"), + /** + * SQLSERVER + */ + SQL_SERVER("7", "SQLServer2012+数据库", "jdbc:sqlserver://${host}:${port};DatabaseName=${dbName}"), + /** + * UNKONWN DB + */ + OTHER("8", "其他数据库", ""); + + /** + * 数据库名称 + */ + private final String db; + + /** + * 描述 + */ + private final String desc; + + /** + * url + */ + private final String url; + + public String getDb() { + return this.db; + } + + public String getDesc() { + return this.desc; + } + + public String getUrl() { + return this.url; + } + + DbType(String db, String desc, String url) { + this.db = db; + this.desc = desc; + this.url = url; + } + + /** + * 获取数据库类型 + * + * @param dbType 数据库类型字符串 + */ + public static DbType getDbType(String dbType) { + for (DbType type : DbType.values()) { + if (type.db.equals(dbType)) { + return type; + } + } + return OTHER; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DialectFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DialectFactory.java new file mode 100644 index 00000000..e0fb78ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DialectFactory.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import com.jiuyv.sptcc.agile.dataservice.database.dialect.DialectRegistry; + +/** + * 方言工厂类 + */ +public class DialectFactory { + + private static final DialectRegistry DIALECT_REGISTRY = new DialectRegistry(); + + public static DbDialect getDialect(DbType dbType) { + return DIALECT_REGISTRY.getDialect(dbType); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/PageResult.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/PageResult.java new file mode 100644 index 00000000..852771e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/PageResult.java @@ -0,0 +1,63 @@ +//package com.jiuyv.sptcc.agile.dataservice.database; +// +// +//import java.io.Serializable; +//import java.util.List; +// +////@Accessors(chain = true) +//public class PageResult implements Serializable { +// +// private static final long serialVersionUID = 1L; +// +// private Integer pageNum; +// private Integer pageSize; +// private Integer total; +// private List data; +// +// private Long time; +// +// public PageResult(Integer total, List data) { +// this.total = total; +// this.data = data; +// } +// +// public Integer getPageNum() { +// return pageNum; +// } +// +// public void setPageNum(Integer pageNum) { +// this.pageNum = pageNum; +// } +// +// public Integer getPageSize() { +// return pageSize; +// } +// +// public void setPageSize(Integer pageSize) { +// this.pageSize = pageSize; +// } +// +// public Integer getTotal() { +// return total; +// } +// +// public void setTotal(Integer total) { +// this.total = total; +// } +// +// public List getData() { +// return data; +// } +// +// public void setData(List data) { +// this.data = data; +// } +// +// public Long getTime() { +// return time; +// } +// +// public void setTime(Long time) { +// this.time = time; +// } +//} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/DefaultSqlCache.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/DefaultSqlCache.java new file mode 100644 index 00000000..5cbc8db7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/DefaultSqlCache.java @@ -0,0 +1,124 @@ +package com.jiuyv.sptcc.agile.dataservice.database.cache; + +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.concurrent.locks.ReentrantReadWriteLock; + +public class DefaultSqlCache extends LinkedHashMap> implements SqlCache { + + private final int capacity; + + private final long expire; + + private final ReentrantReadWriteLock lock = new ReentrantReadWriteLock(); + + public DefaultSqlCache(int capacity, long expire) { + super((int) Math.ceil(capacity / 0.75) + 1, 0.75f, true); + // 容量 + this.capacity = capacity; + // 固定过期时间 + this.expire = expire; + } + + @Override + public void put(String key, Object value, long ttl) { + long expireTime = Long.MAX_VALUE; + if (ttl >= 0) { + expireTime = System.currentTimeMillis() + (ttl == 0 ? this.expire : ttl); + } + lock.writeLock().lock(); + try { + // 封装成过期时间节点 + put(key, new ExpireNode<>(expireTime, value)); + } finally { + lock.writeLock().unlock(); + } + } + + @Override + public Object get(String key) { + lock.readLock().lock(); + ExpireNode expireNode; + try { + expireNode = super.get(key); + } finally { + lock.readLock().unlock(); + } + if (expireNode == null) { + return null; + } + // 惰性删除过期的 + if (this.expire > -1L && expireNode.expire < System.currentTimeMillis()) { + try { + lock.writeLock().lock(); + super.remove(key); + } finally { + lock.writeLock().unlock(); + } + return null; + } + return expireNode.value; + } + + @Override + public void delete(String key) { + try { + lock.writeLock().lock(); + Iterator>> iterator = super.entrySet().iterator(); + // 清除key的缓存 + while (iterator.hasNext()) { + Map.Entry> entry = iterator.next(); + if (entry.getKey().equals(key)) { + iterator.remove(); + } + } + } finally { + lock.writeLock().unlock(); + } + } + + + @Override + protected boolean removeEldestEntry(Map.Entry> eldest) { + if (this.expire > -1L && size() > capacity) { + clean(); + } + // lru淘汰 + return size() > this.capacity; + } + + /** + * 清理已过期的数据 + */ + private void clean() { + try { + lock.writeLock().lock(); + Iterator>> iterator = super.entrySet().iterator(); + long now = System.currentTimeMillis(); + while (iterator.hasNext()) { + Map.Entry> next = iterator.next(); + // 判断是否过期 + if (next.getValue().expire < now) { + iterator.remove(); + } + } + } finally { + lock.writeLock().unlock(); + } + } + + + /** + * 过期时间节点 + */ + static class ExpireNode { + long expire; + Object value; + + public ExpireNode(long expire, Object value) { + this.expire = expire; + this.value = value; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/SqlCache.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/SqlCache.java new file mode 100644 index 00000000..541bd377 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/SqlCache.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.database.cache; + +import com.jiuyv.sptcc.agile.dataservice.database.DbMD5Util; + +import java.util.Arrays; + +/** + * SQL缓存接口 + */ +public interface SqlCache { + + /** + * 计算key + */ + default String buildSqlCacheKey(String sql, Object[] args) { + return DbMD5Util.encrypt(sql + ":" + Arrays.toString(args)); + } + + /** + * 存入缓存 + * @param key key + * @param value 值 + */ + void put(String key, Object value, long ttl); + + /** + * 获取缓存 + * @param key key + * @return + */ + T get(String key); + + /** + * 删除缓存 + * @param key key + */ + void delete(String key); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/AbstractDataSourceFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/AbstractDataSourceFactory.java new file mode 100644 index 00000000..ef78cae4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/AbstractDataSourceFactory.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.database.datasource; + +import com.jiuyv.sptcc.agile.dataservice.database.*; +import com.jiuyv.sptcc.agile.dataservice.database.query.AbstractDbQueryFactory; +import com.jiuyv.sptcc.agile.dataservice.database.query.CacheDbQueryFactoryBean; +import com.zaxxer.hikari.HikariDataSource; +import org.apache.commons.lang3.StringUtils; +import org.springframework.jdbc.core.JdbcTemplate; + +import javax.sql.DataSource; + +public abstract class AbstractDataSourceFactory implements DataSourceFactory { + + @Override + public DbQuery createDbQuery(DbQueryProperty property) { + property.viald(); + DbType dbType = DbType.getDbType(property.getDbType()); + DataSource dataSource = createDataSource(property); + DbQuery dbQuery = createDbQuery(dataSource, dbType); + return dbQuery; + } + + public DbQuery createDbQuery(DataSource dataSource, DbType dbType) { + DbDialect dbDialect = DialectFactory.getDialect(dbType); + if(dbDialect == null){ + throw new RuntimeException("该数据库类型正在开发中"); + } + AbstractDbQueryFactory dbQuery = new CacheDbQueryFactoryBean(); + dbQuery.setDataSource(dataSource); + dbQuery.setJdbcTemplate(new JdbcTemplate(dataSource)); + dbQuery.setDbDialect(dbDialect); + return dbQuery; + } + + public DataSource createDataSource(DbQueryProperty property) { + HikariDataSource dataSource = new HikariDataSource(); + dataSource.setJdbcUrl(trainToJdbcUrl(property)); + dataSource.setUsername(property.getUsername()); + dataSource.setPassword(property.getPassword()); + return dataSource; + } + + protected String trainToJdbcUrl(DbQueryProperty property) { + String url = DbType.getDbType(property.getDbType()).getUrl(); + if (StringUtils.isEmpty(url)) { + throw new RuntimeException("无效数据库类型!"); + } + url = url.replace("${host}", property.getHost()); + url = url.replace("${port}", String.valueOf(property.getPort())); + if (DbType.ORACLE.getDb().equals(property.getDbType()) || DbType.ORACLE_12C.getDb().equals(property.getDbType())) { + url = url.replace("${sid}", property.getSid()); + } else { + url = url.replace("${dbName}", property.getDbName()); + } + return url; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/CacheDataSourceFactoryBean.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/CacheDataSourceFactoryBean.java new file mode 100644 index 00000000..194b29e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/CacheDataSourceFactoryBean.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.database.datasource; + + +import com.jiuyv.sptcc.agile.dataservice.database.DbQueryProperty; +import org.springframework.stereotype.Component; + +import javax.sql.DataSource; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +@Component +public class CacheDataSourceFactoryBean extends AbstractDataSourceFactory { + + /** + * 数据源缓存 + */ + private static Map dataSourceMap = new ConcurrentHashMap<>(); + + @Override + public DataSource createDataSource(DbQueryProperty property) { + String key = property.getHost() + ":" + property.getPort() + ":" + property.getUsername() + ":" + property.getDbName(); + String s = compress(key); + DataSource dataSource = dataSourceMap.get(s); + if (null == dataSource) { + synchronized (CacheDataSourceFactoryBean.class) { + dataSource = super.createDataSource(property); + dataSourceMap.put(s, dataSource); + } + } + return dataSource; + } + + // 压缩 + public static String compress(String str) { + if (str == null || str.length() == 0) { + return str; + } + MessageDigest md = null; + try { + md = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } + if (md != null) { + md.update(str.getBytes()); + byte[] b = md.digest(); + int i; + StringBuffer buf = new StringBuffer(); + for (byte value : b) { + i = value; + if (i < 0) + i += 256; + if (i < 16) + buf.append("0"); + buf.append(Integer.toHexString(i)); + } + str = buf.toString().substring(8, 24).toUpperCase(); + } + return str; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/DefaultDataSourceFactoryBean.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/DefaultDataSourceFactoryBean.java new file mode 100644 index 00000000..2c75bebe --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/DefaultDataSourceFactoryBean.java @@ -0,0 +1,4 @@ +package com.jiuyv.sptcc.agile.dataservice.database.datasource; + +public class DefaultDataSourceFactoryBean extends AbstractDataSourceFactory{ +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/AbstractDbDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/AbstractDbDialect.java new file mode 100644 index 00000000..8cf42908 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/AbstractDbDialect.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbDialect; + +/** + * 方言抽象类 + */ +public abstract class AbstractDbDialect implements DbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select column_name AS COLNAME, ordinal_position AS COLPOSITION, column_default AS DATADEFAULT, is_nullable AS NULLABLE, data_type AS DATATYPE, " + + "character_maximum_length AS DATALENGTH, numeric_precision AS DATAPRECISION, numeric_scale AS DATASCALE, column_key AS COLKEY, column_comment AS COLCOMMENT " + + "from information_schema.columns where table_schema = '" + dbName + "' and table_name = '" + tableName + "' order by ordinal_position "; + } + + @Override + public String tables(String dbName) { + return "SELECT table_name AS TABLENAME, table_comment AS TABLECOMMENT FROM information_schema.tables where table_schema = '" + dbName + "' "; + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + // 获取 分页实际条数 + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" LIMIT ").append(offset).append(" , ").append(count); + return sqlBuilder.toString(); + } + + @Override + public String count(String sql) { + return "SELECT COUNT(*) FROM ( " + sql + " ) TEMP"; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/DialectRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/DialectRegistry.java new file mode 100644 index 00000000..b9e665ad --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/DialectRegistry.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbDialect; +import com.jiuyv.sptcc.agile.dataservice.database.DbType; + +import java.util.EnumMap; +import java.util.Map; + +public class DialectRegistry { + + private final Map dialect_enum_map = new EnumMap<>(DbType.class); + + public DialectRegistry() { + dialect_enum_map.put(DbType.MARIADB, new MariaDBDialect()); + dialect_enum_map.put(DbType.MYSQL, new MySqlDialect()); + dialect_enum_map.put(DbType.ORACLE_12C, new Oracle12cDialect()); + dialect_enum_map.put(DbType.ORACLE, new OracleDialect()); + dialect_enum_map.put(DbType.POSTGRE_SQL, new PostgreDialect()); + dialect_enum_map.put(DbType.SQL_SERVER2008, new SQLServer2008Dialect()); + dialect_enum_map.put(DbType.SQL_SERVER, new SQLServerDialect()); + dialect_enum_map.put(DbType.OTHER, new UnknownDialect()); + } + + public DbDialect getDialect(DbType dbType) { + return dialect_enum_map.get(dbType); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MariaDBDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MariaDBDialect.java new file mode 100644 index 00000000..bfbc752d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MariaDBDialect.java @@ -0,0 +1,7 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +/** + * MariaDB 数据库方言 + */ +public class MariaDBDialect extends MySqlDialect { +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MySqlDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MySqlDialect.java new file mode 100644 index 00000000..d3c551f1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MySqlDialect.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * MySql 数据库方言 + */ +public class MySqlDialect extends AbstractDbDialect { + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("PRI".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("YES".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/Oracle12cDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/Oracle12cDialect.java new file mode 100644 index 00000000..5b6bb38f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/Oracle12cDialect.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +/** + * ORACLE Oracle12c+数据库方言 + */ +public class Oracle12cDialect extends OracleDialect { + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" OFFSET ").append(offset).append(" ROWS FETCH NEXT ").append(count).append(" ROWS ONLY "); + return sqlBuilder.toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/OracleDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/OracleDialect.java new file mode 100644 index 00000000..1c49d95f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/OracleDialect.java @@ -0,0 +1,69 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * Oracle Oracle11g及以下数据库方言 + */ +public class OracleDialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select columns.column_name AS colName, columns.data_type AS DATATYPE, columns.data_length AS DATALENGTH, columns.data_precision AS DATAPRECISION, " + + "columns.data_scale AS DATASCALE, columns.nullable AS NULLABLE, columns.column_id AS COLPOSITION, columns.data_default AS DATADEFAULT, comments.comments AS COLCOMMENT," + + "case when t.column_name is null then 0 else 1 end as COLKEY " + + "from sys.user_tab_columns columns LEFT JOIN sys.user_col_comments comments ON columns.table_name = comments.table_name AND columns.column_name = comments.column_name " + + "left join ( " + + "select col.column_name as column_name, con.table_name as table_name from user_constraints con, user_cons_columns col " + + "where con.constraint_name = col.constraint_name and con.constraint_type = 'P' " + + ") t on t.table_name = columns.table_name and columns.column_name = t.column_name " + + "where columns.table_name = UPPER('" + tableName + "') order by columns.column_id "; + } + + @Override + public String tables(String dbName) { + return "select tables.table_name AS TABLENAME, comments.comments AS TABLECOMMENT from sys.user_tables tables " + + "LEFT JOIN sys.user_tab_comments comments ON tables.table_name = comments.table_name "; + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(); + sqlBuilder.append("SELECT * FROM ( SELECT TMP.*, ROWNUM ROW_ID FROM ( "); + sqlBuilder.append(originalSql).append(" ) TMP WHERE ROWNUM <=").append((offset >= 1) ? (offset + count) : count); + sqlBuilder.append(") WHERE ROW_ID > ").append(offset); + return sqlBuilder.toString(); + } + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("1".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("Y".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/PostgreDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/PostgreDialect.java new file mode 100644 index 00000000..a48f18fd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/PostgreDialect.java @@ -0,0 +1,68 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * Postgre 数据库方言 + */ +public class PostgreDialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select col.column_name AS COLNAME, col.ordinal_position AS COLPOSITION, col.column_default AS DATADEFAULT, col.is_nullable AS NULLABLE, col.udt_name AS DATATYPE, " + + "col.character_maximum_length AS DATALENGTH, col.numeric_precision AS DATAPRECISION, col.numeric_scale AS DATASCALE, des.description AS COLCOMMENT, " + + "case when t.colname is null then 0 else 1 end as COLKEY " + + "from information_schema.columns col left join pg_description des on col.table_name::regclass = des.objoid and col.ordinal_position = des.objsubid " + + "left join ( " + + "select pg_attribute.attname as colname from pg_constraint inner join pg_class on pg_constraint.conrelid = pg_class.oid " + + "inner join pg_attribute on pg_attribute.attrelid = pg_class.oid and pg_attribute.attnum = any(pg_constraint.conkey) " + + "where pg_class.relname = '" + tableName + "' and pg_constraint.contype = 'p' " + + ") t on t.colname = col.column_name " + + "where col.table_catalog = '" + dbName + "' and col.table_schema = 'public' and col.table_name = '" + tableName + "' order by col.ordinal_position "; + } + + @Override + public String tables(String dbName) { + return "select relname AS TABLENAME, cast(obj_description(relfilenode, 'pg_class') as varchar) AS TABLECOMMENT from pg_class " + + "where relname in (select tablename from pg_tables where schemaname = 'public' and position('_2' in tablename) = 0) "; + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" LIMIT ").append(count).append(" offset ").append(offset); + return sqlBuilder.toString(); + } + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("1".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("YES".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServer2008Dialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServer2008Dialect.java new file mode 100644 index 00000000..aac929f4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServer2008Dialect.java @@ -0,0 +1,102 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.apache.commons.lang3.StringUtils; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * SQLServer 2005 数据库方言 + */ +public class SQLServer2008Dialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select columns.name AS colName, columns.column_id AS COLPOSITION, columns.max_length AS DATALENGTH, columns.precision AS DATAPRECISION, columns.scale AS DATASCALE, " + + "columns.is_nullable AS NULLABLE, types.name AS DATATYPE, CAST(ep.value AS NVARCHAR(128)) AS COLCOMMENT, e.text AS DATADEFAULT, " + + "(select top 1 ind.is_primary_key from sys.index_columns ic left join sys.indexes ind on ic.object_id = ind.object_id and ic.index_id = ind.index_id and ind.name like 'PK_%' where ic.object_id=columns.object_id and ic.column_id=columns.column_id) AS COLKEY " + + "from sys.columns columns LEFT JOIN sys.types types ON columns.system_type_id = types.system_type_id " + + "LEFT JOIN syscomments e ON columns.default_object_id= e.id " + + "LEFT JOIN sys.extended_properties ep ON ep.major_id = columns.object_id AND ep.minor_id = columns.column_id AND ep.name = 'MS_Description' " + + "where columns.object_id = object_id('" + tableName + "') order by columns.column_id "; + } + + @Override + public String tables(String dbName) { + return "select tables.name AS TABLENAME, CAST(ep.value AS NVARCHAR(128)) AS TABLECOMMENT " + + "from sys.tables tables LEFT JOIN sys.extended_properties ep ON ep.major_id = tables.object_id AND ep.minor_id = 0"; + } + + private static String getOrderByPart(String sql) { + String loweredString = sql.toLowerCase(); + int orderByIndex = loweredString.indexOf("order by"); + if (orderByIndex != -1) { + return sql.substring(orderByIndex); + } else { + return ""; + } + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder pagingBuilder = new StringBuilder(); + String orderby = getOrderByPart(originalSql); + String distinctStr = ""; + + String loweredString = originalSql.toLowerCase(); + String sqlPartString = originalSql; + if (loweredString.trim().startsWith("select")) { + int index = 6; + if (loweredString.startsWith("select distinct")) { + distinctStr = "DISTINCT "; + index = 15; + } + sqlPartString = sqlPartString.substring(index); + } + pagingBuilder.append(sqlPartString); + + // if no ORDER BY is specified use fake ORDER BY field to avoid errors + if (StringUtils.isEmpty(orderby)) { + orderby = "ORDER BY CURRENT_TIMESTAMP"; + } + StringBuilder sql = new StringBuilder(); + sql.append("WITH selectTemp AS (SELECT ").append(distinctStr).append("TOP 100 PERCENT ") + .append(" ROW_NUMBER() OVER (").append(orderby).append(") as __row_number__, ").append(pagingBuilder) + .append(") SELECT * FROM selectTemp WHERE __row_number__ BETWEEN ") + //FIX#299:原因:mysql中limit 10(offset,size) 是从第10开始(不包含10),;而这里用的BETWEEN是两边都包含,所以改为offset+1 + .append(offset + 1) + .append(" AND ") + .append(offset + count).append(" ORDER BY __row_number__"); + return sql.toString(); + } + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("1".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("1".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServerDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServerDialect.java new file mode 100644 index 00000000..bc028521 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServerDialect.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +/** + * SQLServer 数据库方言 + */ +public class SQLServerDialect extends SQLServer2008Dialect { + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" OFFSET ").append(offset).append(" ROWS FETCH NEXT ").append(count).append(" ROWS ONLY "); + return sqlBuilder.toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/UnknownDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/UnknownDialect.java new file mode 100644 index 00000000..1fbaf455 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/UnknownDialect.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +/** + * 未知 数据库方言 + */ +public class UnknownDialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public String tables(String dbName) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public String buildPaginationSql(String sql, long offset, long count) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public String count(String sql) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public RowMapper columnMapper() { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public RowMapper tableMapper() { + throw new RuntimeException("不支持的数据库类型"); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/AbstractDbQueryFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/AbstractDbQueryFactory.java new file mode 100644 index 00000000..0ee37b7b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/AbstractDbQueryFactory.java @@ -0,0 +1,142 @@ +package com.jiuyv.sptcc.agile.dataservice.database.query; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbDialect; +import com.jiuyv.sptcc.agile.dataservice.database.DbQuery; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import com.zaxxer.hikari.HikariDataSource; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; + +import javax.sql.DataSource; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.List; +import java.util.Map; + +public abstract class AbstractDbQueryFactory implements DbQuery { + + private static final Logger log = LoggerFactory.getLogger(AbstractDbQueryFactory.class); + + protected DataSource dataSource; + + protected JdbcTemplate jdbcTemplate; + + protected DbDialect dbDialect; + + @Override + public Connection getConnection() { + try { + return dataSource.getConnection(); + } catch (SQLException e) { + throw new RuntimeException("获取数据库连接出错"); + } + } + + @Override + public boolean valid() { + Connection conn = null; + try { + conn = dataSource.getConnection(); + return conn.isValid(0); + } catch (SQLException e) { + throw new RuntimeException("检测连通性出错"); + } finally { + if (conn != null) { + try { + conn.close(); + } catch (SQLException e) { + log.error("链接关闭失败",e); + } + } + } + + } + + @Override + public void close() { + if (dataSource instanceof HikariDataSource) { + ((HikariDataSource) dataSource).close(); + } else { + throw new RuntimeException("不合法数据源类型"); + } + } + + @Override + public List getTableColumns(String dbName, String tableName) { + String sql = dbDialect.columns(dbName, tableName); + return jdbcTemplate.query(sql, dbDialect.columnMapper()); + } + + @Override + public List getTables(String dbName) { + String sql = dbDialect.tables(dbName); + return jdbcTemplate.query(sql, dbDialect.tableMapper()); + } + + @Override + public Long count(String sql) { + return jdbcTemplate.queryForObject(dbDialect.count(sql), Long.class); + } + + @Override + public Long count(String sql, Object[] args) { + return jdbcTemplate.queryForObject(dbDialect.count(sql), args, Long.class); + } + + @Override + public Long count(String sql, Map params) { + NamedParameterJdbcTemplate namedJdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate); + return namedJdbcTemplate.queryForObject(dbDialect.count(sql), params, Long.class); + } + + @Override + public List> queryList(String sql) { + return jdbcTemplate.queryForList(sql); + } + + @Override + public List> queryList(String sql, Object[] args) { + return jdbcTemplate.queryForList(sql, args); + } + + @Override + public PageResult> queryByPage(String sql, long offset, long size) { + Long total = count(sql); + String pageSql = dbDialect.buildPaginationSql(sql, offset, size); + List> records = jdbcTemplate.queryForList(pageSql); + return new PageResult<>(total, records); + } + + @Override + public PageResult> queryByPage(String sql, Object[] args, long offset, long size) { + Long total = count(sql, args); + String pageSql = dbDialect.buildPaginationSql(sql, offset, size); + List> records = jdbcTemplate.queryForList(pageSql, args); + return new PageResult<>(total, records); + } + + @Override + public PageResult> queryByPage(String sql, Map params, long offset, long size) { + Long total = count(sql, params); + String pageSql = dbDialect.buildPaginationSql(sql, offset, size); + NamedParameterJdbcTemplate namedJdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate); + List> records = namedJdbcTemplate.queryForList(pageSql, params); + return new PageResult(total, records); + } + + public void setDataSource(DataSource dataSource) { + this.dataSource = dataSource; + } + + public void setJdbcTemplate(JdbcTemplate jdbcTemplate) { + this.jdbcTemplate = jdbcTemplate; + } + + public void setDbDialect(DbDialect dbDialect) { + this.dbDialect = dbDialect; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/CacheDbQueryFactoryBean.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/CacheDbQueryFactoryBean.java new file mode 100644 index 00000000..f002a5e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/CacheDbQueryFactoryBean.java @@ -0,0 +1,105 @@ +package com.jiuyv.sptcc.agile.dataservice.database.query; + + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import com.jiuyv.sptcc.agile.dataservice.database.cache.DefaultSqlCache; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Optional; + +public class CacheDbQueryFactoryBean extends AbstractDbQueryFactory { + + /** + * 默认缓存5分钟 + */ + private static final long DEFAULT_EXPIRE = 5 * 60 * 1000L; + private static final DefaultSqlCache sqlCache = new DefaultSqlCache(100, DEFAULT_EXPIRE); + + private T putCacheValue(String key, T value, long ttl) { + sqlCache.put(key, value, ttl); + return value; + } + + @Override + public List getTableColumns(String dbName, String tableName) { + Object[] args = new Object[]{dbName, tableName}; + Optional o = Optional.ofNullable(sqlCache.get(sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":getTableColumns", args))); + return super.getTableColumns(dbName, tableName); + } + + @Override + public List getTables(String dbName) { + Object[] args = new Object[]{dbName}; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":getTables", args); + return (List) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.getTables(dbName), DEFAULT_EXPIRE)); + } + + @Override + public Long count(String sql) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, null); + return (Long) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.count(sql), DEFAULT_EXPIRE)); + } + + @Override + public Long count(String sql, Object[] args) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, args); + return (Long) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.count(sql, args), DEFAULT_EXPIRE)); + } + + @Override + public Long count(String sql, Map params) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, params.values().toArray()); + return (Long) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.count(sql, params), DEFAULT_EXPIRE)); + } + + @Override + public List> queryList(String sql) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, null); + return (List>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryList(sql), DEFAULT_EXPIRE)); + } + + @Override + public List> queryList(String sql, Object[] args) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, args); + return (List>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryList(sql, args), DEFAULT_EXPIRE)); + } + + @Override + public PageResult> queryByPage(String sql, long offset, long size) { + Object[] args = new Object[]{offset, size}; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, args); + return (PageResult>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryByPage(sql, offset, size), DEFAULT_EXPIRE)); + } + + @Override + public PageResult> queryByPage(String sql, Object[] args, long offset, long size) { + Object[] objects = Arrays.copyOf(args, args.length + 2); + objects[args.length] = offset; + objects[args.length + 1] = size; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, objects); + return (PageResult>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryByPage(sql, args, offset, size), DEFAULT_EXPIRE)); + } + + @Override + public PageResult> queryByPage(String sql, Map params, long offset, long size) { + Object[] args = params.values().toArray(); + Object[] objects = Arrays.copyOf(args, args.length + 2); + objects[args.length] = offset; + objects[args.length + 1] = size; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, objects); + return (PageResult>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryByPage(sql, params, offset, size), DEFAULT_EXPIRE)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AbstractFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AbstractFactory.java new file mode 100644 index 00000000..f8a9d221 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AbstractFactory.java @@ -0,0 +1,8 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; + +public abstract class AbstractFactory { + + public abstract Crypto getCrypto(String type); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AlgorithmFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AlgorithmFactory.java new file mode 100644 index 00000000..4ce9e2a0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AlgorithmFactory.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.AlgorithmCrypto; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.AlgorithmRegistry; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; + +public class AlgorithmFactory extends AbstractFactory { + + private static final AlgorithmRegistry ALGORITHM_REGISTRY = new AlgorithmRegistry(); + + @Override + public Crypto getCrypto(String type) { + AlgorithmCrypto crypto = AlgorithmCrypto.getAlgorithmCrypto(type); + return ALGORITHM_REGISTRY.getAlgorithm(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/FactoryProducer.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/FactoryProducer.java new file mode 100644 index 00000000..a901a8b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/FactoryProducer.java @@ -0,0 +1,17 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; + +public class FactoryProducer { + + public static AbstractFactory getFactory(String type){ + DataApiEnum.CipherType cipherType = DataApiEnum.CipherType.getCipherType(type); + switch (cipherType) { + case REGEX: + return new RegexFactory(); + case ALGORITHM: + return new AlgorithmFactory(); + } + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/RegexFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/RegexFactory.java new file mode 100644 index 00000000..c40b6f7d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/RegexFactory.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.RegexCrypto; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.RegexRegistry; + +public class RegexFactory extends AbstractFactory { + + private static final RegexRegistry REGEX_REGISTRY = new RegexRegistry(); + + @Override + public Crypto getCrypto(String type) { + RegexCrypto crypto = RegexCrypto.getRegexCrypto(type); + return REGEX_REGISTRY.getRegex(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/ADDRESSCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/ADDRESSCrypto.java new file mode 100644 index 00000000..9689c6f9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/ADDRESSCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [地址] 只显示前六位,不显示详细地址;我们要对个人信息增强保护<例子:北京市海淀区****> + */ +public class ADDRESSCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.rightPad(StringUtils.left(content, 6), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java new file mode 100644 index 00000000..2192661c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.crypto.Cipher; +import javax.crypto.KeyGenerator; +import javax.crypto.SecretKey; +import javax.crypto.spec.SecretKeySpec; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.util.Base64; + +public class AESCrypto implements Crypto { + + + public static final Logger log = LoggerFactory.getLogger(AESCrypto.class); + + private static final String TRANSFORMATION = "AES/GCM/NoPadding"; + + private static final String ALGORITHM = "AES"; + public static final String SecretKey = "6dUhsytWsgiMVZ8UeT3TzQ=="; + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + //1.构造密钥生成器,指定为AES算法,不区分大小写 + SecretKeySpec key = initSecretKey(); + //6.根据指定算法AES生成密码器 + Cipher cipher = Cipher.getInstance(TRANSFORMATION); + //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密解密(Decrypt_mode)操作,第二个参数为使用的KEY + cipher.init(Cipher.ENCRYPT_MODE, key); + //8.根据密码器的初始化方式--加密:将数据加密 + byte[] AES_encrypt = cipher.doFinal(content.getBytes(CHARSET_UTF8)); + //9.将字符串返回 + return Base64.getEncoder().encodeToString(AES_encrypt); + } catch (Exception e) { + log.error("AES加密失败",e); + } + return null; + } + + @Override + public String decrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + //1.构造密钥生成器,指定为AES算法,不区分大小写 + SecretKeySpec key = initSecretKey(); + //6.根据指定算法AES生成密码器 + Cipher cipher = Cipher.getInstance(TRANSFORMATION); + //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密解密(Decrypt_mode)操作,第二个参数为使用的KEY + cipher.init(Cipher.DECRYPT_MODE, key);// 初始化 + //8.根据密码器的初始化方式--加密:将数据加密 + byte[] AES_decode = cipher.doFinal(Base64.getDecoder().decode(content)); + return new String(AES_decode, CHARSET_UTF8); + } catch (Exception e) { + log.error("AES解密失败",e); + } + return null; + } + + private String getKey() throws NoSuchAlgorithmException { + KeyGenerator kGen = KeyGenerator.getInstance(ALGORITHM); + SecureRandom random = SecureRandom.getInstance(SHA1PRNG); + random.setSeed(SLAT.getBytes()); + //2.根据 RULES 规则初始化密钥生成器,根据传入的字节数组生成一个128位的随机源 + kGen.init(128, random); + //3.产生原始对称密钥 + SecretKey secretKey = kGen.generateKey(); + //4.获得原始对称密钥的字节数组 + byte[] enCodeFormat = secretKey.getEncoded(); + return Base64.getEncoder().encodeToString(enCodeFormat); + } + + private SecretKeySpec initSecretKey() { + return new SecretKeySpec(Base64.getDecoder().decode(AESCrypto.SecretKey), "AES"); + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java new file mode 100644 index 00000000..0fd824f8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.AlgorithmCrypto; + +import java.util.EnumMap; +import java.util.Map; + +public class AlgorithmRegistry { + + private final Map algorithm_enum_map = new EnumMap<>(AlgorithmCrypto.class); + + public AlgorithmRegistry() { + algorithm_enum_map.put(AlgorithmCrypto.BASE64, new BASE64Crypto()); + algorithm_enum_map.put(AlgorithmCrypto.AES, new AESCrypto()); + algorithm_enum_map.put(AlgorithmCrypto.MD5, new MD5Crypto()); + algorithm_enum_map.put(AlgorithmCrypto.SHA_1, new SHA1Crypto()); + algorithm_enum_map.put(AlgorithmCrypto.SHA_256, new SHA256Crypto()); + } + + public Crypto getAlgorithm(AlgorithmCrypto crypto) { + return algorithm_enum_map.get(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BANKCARDCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BANKCARDCrypto.java new file mode 100644 index 00000000..d431db84 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BANKCARDCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [银行卡号] 前六位,后四位,其他用星号隐藏每位1个星号<例子:6222600**********1234> + */ +public class BANKCARDCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.left(content, 6).concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"), "******")); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BASE64Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BASE64Crypto.java new file mode 100644 index 00000000..c3746d75 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BASE64Crypto.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.util.Base64; + +public class BASE64Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + byte[] encode = Base64.getEncoder().encode(content.getBytes(CHARSET_UTF8)); + return new String(encode, CHARSET_UTF8); + } catch (Exception e) { + } + return null; + } + + @Override + public String decrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + byte[] decode = Base64.getDecoder().decode(content.getBytes(CHARSET_UTF8)); + return new String(decode, CHARSET_UTF8); + } catch (Exception e) { + } + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CHINESENAMECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CHINESENAMECrypto.java new file mode 100644 index 00000000..6961548a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CHINESENAMECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [中文姓名] 只显示第一个汉字,其他隐藏为星号<例子:李**> + */ +public class CHINESENAMECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.rightPad(StringUtils.left(content, 1), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CNAPSCODECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CNAPSCODECrypto.java new file mode 100644 index 00000000..2013ddce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CNAPSCODECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [公司开户银行联号] 公司开户银行联行号,显示前四位,其他用星号隐藏,每位1个星号<例子:1234********> + */ +public class CNAPSCODECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.rightPad(StringUtils.left(content, 4), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/Crypto.java new file mode 100644 index 00000000..6f62bf41 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/Crypto.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +public interface Crypto { + + /** + * 字符编码 + */ + String CHARSET_UTF8 = "UTF-8"; + /** + * 密码盐 + */ + String SLAT = "DATAX:20200101"; + + String SHA1PRNG = "SHA1PRNG"; + + String encrypt(String content); + + String decrypt(String content); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java new file mode 100644 index 00000000..253c39ce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java @@ -0,0 +1,77 @@ +// package com.jiuyv.sptcc.agile.dataservice.factory.crypto; +// +// import org.apache.commons.lang3.StringUtils; +// import org.slf4j.Logger; +// import org.slf4j.LoggerFactory; +// +// import javax.crypto.Cipher; +// import javax.crypto.KeyGenerator; +// import javax.crypto.SecretKey; +// import javax.crypto.spec.SecretKeySpec; +// import java.nio.charset.StandardCharsets; +// import java.security.NoSuchAlgorithmException; +// import java.security.SecureRandom; +// import java.util.Base64; +// +// public class DESCrypto implements Crypto { +// +// private static final Logger log = LoggerFactory.getLogger(DESCrypto.class); +// private static final String DES ="DES"; +// private static final String KEY = "DES/ECB/PKCS5Padding"; +// +// private static final String SLAT = "jiuyv"; +// +// +// @Override +// public String encrypt(String content) { +// if (StringUtils.isBlank(content)) { +// return null; +// } +// try { +// SecretKeySpec key = getKey(); +// Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding"); +// cipher.init(Cipher.ENCRYPT_MODE, key); +// byte[] DES_encrypt = cipher.doFinal(content.getBytes(StandardCharsets.UTF_8)); +// return Base64.getEncoder().encodeToString(DES_encrypt); +// } catch (Exception e) { +// log.error("des encrypt 失败", e); +// } +// return null; +// } +// +// +// private SecretKeySpec getKey() throws NoSuchAlgorithmException { +// KeyGenerator kGen = KeyGenerator.getInstance(DES); +// SecureRandom random = SecureRandom.getInstance(SHA1PRNG); +// random.setSeed(SLAT.getBytes()); +// kGen.init(56,random); +// SecretKey secretKey = kGen.generateKey(); +// return new SecretKeySpec(secretKey.getEncoded(), DES); +// } +// +// @Override +// public String decrypt(String content) { +// if (StringUtils.isBlank(content)) { +// return null; +// } +// try { +// SecretKeySpec key = getKey(); +// Cipher cipher = Cipher.getInstance(KEY); +// cipher.init(Cipher.DECRYPT_MODE, key); +// byte[] DES_decrypt = cipher.doFinal(Base64.getDecoder().decode(content)); +// return new String(DES_decrypt, StandardCharsets.UTF_8); +// } catch (Exception e) { +// log.error("des encrypt 失败", e); +// } +// return null; +// } +// +// public static void main(String[] args) { +// DESCrypto desCrypto = new DESCrypto(); +// String encrypt = desCrypto.encrypt("123456"); +// System.out.println(encrypt); +// System.out.println(desCrypto.decrypt(encrypt)); +// } +// +// +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/EMAILCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/EMAILCrypto.java new file mode 100644 index 00000000..48fa94d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/EMAILCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [电子邮箱] 只显示前三后显示邮箱后缀,其他隐藏为星号<例子:312****@qq.com> + */ +public class EMAILCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return content.replaceAll("(\\w{3}).*@(\\w+)", "$1****@$2"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/FIXEDPHONECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/FIXEDPHONECrypto.java new file mode 100644 index 00000000..42df6931 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/FIXEDPHONECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [固定电话] 后四位,其他隐藏<例子:****1234> + */ +public class FIXEDPHONECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/IDCARDCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/IDCARDCrypto.java new file mode 100644 index 00000000..548b58e2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/IDCARDCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [身份证号] 显示最后四位,其他隐藏。共计18位或者15位。<例子:*************5762> + */ +public class IDCARDCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MD5Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MD5Crypto.java new file mode 100644 index 00000000..6dc40327 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MD5Crypto.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.security.MessageDigest; +import java.util.Base64; + +public class MD5Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + MessageDigest md5 = null; + try { + md5 = MessageDigest.getInstance("MD5"); + md5.update(content.getBytes(CHARSET_UTF8)); + md5.update(SLAT.getBytes(CHARSET_UTF8)); + } catch (Exception ignored) { + } + if (md5 != null) { + return Base64.getEncoder().encodeToString(md5.digest()); + } + return null; + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MOBILEPHONECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MOBILEPHONECrypto.java new file mode 100644 index 00000000..204b6be9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MOBILEPHONECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [手机号码] 前三位,后四位,其他隐藏<例子:138******1234> + */ +public class MOBILEPHONECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.left(content, 3).concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"), "***")); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/RegexRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/RegexRegistry.java new file mode 100644 index 00000000..c45ef8ee --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/RegexRegistry.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.RegexCrypto; + +import java.util.EnumMap; +import java.util.Map; + +public class RegexRegistry { + + private final Map regex_enum_map = new EnumMap<>(RegexCrypto.class); + + public RegexRegistry() { + regex_enum_map.put(RegexCrypto.CHINESE_NAME, new CHINESENAMECrypto()); + regex_enum_map.put(RegexCrypto.ID_CARD, new IDCARDCrypto()); + regex_enum_map.put(RegexCrypto.FIXED_PHONE, new FIXEDPHONECrypto()); + regex_enum_map.put(RegexCrypto.MOBILE_PHONE, new MOBILEPHONECrypto()); + regex_enum_map.put(RegexCrypto.ADDRESS, new ADDRESSCrypto()); + regex_enum_map.put(RegexCrypto.EMAIL, new EMAILCrypto()); + regex_enum_map.put(RegexCrypto.BANK_CARD, new BANKCARDCrypto()); + regex_enum_map.put(RegexCrypto.CNAPS_CODE, new CNAPSCODECrypto()); + } + + public Crypto getRegex(RegexCrypto crypto) { + return regex_enum_map.get(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA1Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA1Crypto.java new file mode 100644 index 00000000..ed7577a8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA1Crypto.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.security.MessageDigest; +import java.util.Base64; + +public class SHA1Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + MessageDigest md5 = null; + try { + md5 = MessageDigest.getInstance("SHA-1"); + md5.update(content.getBytes(CHARSET_UTF8)); + md5.update(SLAT.getBytes(CHARSET_UTF8)); + } catch (Exception ignored) { + } + if (md5 != null) { + return Base64.getEncoder().encodeToString(md5.digest()); + } + return null; + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA256Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA256Crypto.java new file mode 100644 index 00000000..873508c4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA256Crypto.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.security.MessageDigest; +import java.util.Base64; + +public class SHA256Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + MessageDigest md5 = null; + try { + md5 = MessageDigest.getInstance("SHA-256"); + md5.update(content.getBytes(CHARSET_UTF8)); + md5.update(SLAT.getBytes(CHARSET_UTF8)); + } catch (Exception ignored) { + } + if (md5 != null) { + return Base64.getEncoder().encodeToString(md5.digest()); + } + return null; + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/feign/MessageFeign.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/feign/MessageFeign.java new file mode 100644 index 00000000..8d4270e6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/feign/MessageFeign.java @@ -0,0 +1,8 @@ +package com.jiuyv.sptcc.agile.dataservice.feign; + +import com.jiuyv.sptccc.agile.api.fegin.PublicPhoneMsgLogFeignApi; +import org.springframework.cloud.openfeign.FeignClient; + +@FeignClient(name = "message-service",contextId = "sendMassage") +public interface MessageFeign extends PublicPhoneMsgLogFeignApi { +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/GolabExceptionHandler.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/GolabExceptionHandler.java new file mode 100644 index 00000000..324d2cc4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/GolabExceptionHandler.java @@ -0,0 +1,75 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.validation.BindException; +import org.springframework.validation.FieldError; +import org.springframework.validation.ObjectError; +import org.springframework.web.bind.MissingServletRequestParameterException; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; +import org.springframework.web.servlet.NoHandlerFoundException; + +import javax.servlet.http.HttpServletRequest; +import javax.validation.ValidationException; +import java.util.List; + +/** + * @author shu_k + * @Description: 全局异常处理 + * @date 2022年1月5日 下午1:54:37 + */ +@RestControllerAdvice +public class GolabExceptionHandler { + + private static final Logger logger = LoggerFactory.getLogger(GolabExceptionHandler.class); + + @ExceptionHandler(BaseException.class) + public R handlerNoFoundException(BaseException e) { + logger.info("自定义异常,code: {},message: {}", e.getCode(), e.getDefaultMessage()); + return R.fail(e.getCode(), e.getDefaultMessage()); + } + + @ExceptionHandler(ValidationException.class) + public R validedBindException(ValidationException e) { + logger.warn("校验报错", e); + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), e.getMessage()); + } + + + @ExceptionHandler(BindException.class) + public R bindException(BindException e) { + logger.info("参数校验错误 {}", e.getMessage()); + List list = e.getBindingResult().getAllErrors(); + StringBuilder builder = new StringBuilder(); + for (ObjectError objectError : list) { + FieldError fieldError = (FieldError) objectError; + builder.append(fieldError.getField()).append(":").append(fieldError.getDefaultMessage()).append(";"); + } + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), builder.toString()); + } + + @ExceptionHandler(NoHandlerFoundException.class) + public R handlerNoFoundException(NoHandlerFoundException e) { + logger.warn(e.getMessage(), e); + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), "路径不存在,请检查路径是否正确"); + } + + + /** + * 访问接口参数不全 + * + * @param request + * @param pe + * @return + */ + @ExceptionHandler(MissingServletRequestParameterException.class) + public R missingServletRequestParameterException(HttpServletRequest request, MissingServletRequestParameterException pe) { + logger.info("请求地址:{},\n异常: {}", request.getRequestURI(), pe); + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), pe.getMessage()); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/MappingHandlerMapping.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/MappingHandlerMapping.java new file mode 100644 index 00000000..49982e09 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/MappingHandlerMapping.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.context.request.NativeWebRequest; +import org.springframework.web.context.request.RequestAttributes; +import org.springframework.web.context.request.ServletWebRequest; +import org.springframework.web.servlet.HandlerMapping; +import org.springframework.web.servlet.mvc.method.RequestMappingInfo; +import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.lang.reflect.Method; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +public class MappingHandlerMapping { + + private static final Logger LOGGER = LoggerFactory.getLogger(MappingHandlerMapping.class); + + /** + * 记录当前机器一注册api + */ + private static final Map MAPPINGS = new ConcurrentHashMap<>(); + private static final Method method; + + static { + try { + method = RequestHandler.class.getDeclaredMethod("invoke", HttpServletRequest.class, HttpServletResponse.class, Map.class, Map.class, Map.class); + } catch (NoSuchMethodException e) { + throw new UnsupportedOperationException(e); + } + } + + private RequestMappingHandlerMapping requestMappingHandlerMapping; + private RequestHandler handler; + private String prefix = "v1.0.0"; + + public static ApiEntity getMappingApiInfo(HttpServletRequest request) { + NativeWebRequest webRequest = new ServletWebRequest(request); + String requestMapping = (String) webRequest.getAttribute(HandlerMapping.BEST_MATCHING_PATTERN_ATTRIBUTE, RequestAttributes.SCOPE_REQUEST); + return getMappingApiInfo(buildMappingKey(request.getMethod(), requestMapping)); + } + + public static ApiEntity getMappingApiInfo(String key) { + return MAPPINGS.get(key); + } + + public static String buildMappingKey(String requestMethod, String requestMapping) { + return requestMethod.toUpperCase() + ":" + requestMapping; + } + + public void setRequestMappingHandlerMapping(RequestMappingHandlerMapping requestMappingHandlerMapping) { + this.requestMappingHandlerMapping = requestMappingHandlerMapping; + } + + public void setHandler(RequestHandler handler) { + this.handler = handler; + } + + /** + * 注册请求映射 + * + * @param api + */ + public void registerMapping(ApiEntity api) { + String mappingKey = getMappingKey(api); + if (MAPPINGS.containsKey(mappingKey)) { + // 取消注册 + MAPPINGS.remove(mappingKey); + requestMappingHandlerMapping.unregisterMapping(getRequestMapping(api)); + } + LOGGER.info("注册接口:{}:{}", api.getApiName(), mappingKey); + RequestMappingInfo requestMapping = getRequestMapping(api); + MAPPINGS.put(mappingKey, api); + requestMappingHandlerMapping.registerMapping(requestMapping, handler, method); + } + + /** + * 取消注册请求映射 + * + * @param api + */ + public void unregisterMapping(ApiEntity api) { + String mappingKey = getMappingKey(api); + if (MAPPINGS.containsKey(mappingKey)) { + // 取消注册 + MAPPINGS.remove(mappingKey); + requestMappingHandlerMapping.unregisterMapping(getRequestMapping(api)); + } + LOGGER.info("取消注册接口:{}:{}", api.getApiName(), mappingKey); + } + + private String getMappingKey(ApiEntity api) { + return buildMappingKey(api.getReqMethod().toUpperCase(), api.getApiUrl()); + } + + private RequestMappingInfo getRequestMapping(ApiEntity api) { + return RequestMappingInfo.paths(api.getApiUrl()).methods(RequestMethod.valueOf(api.getReqMethod().toUpperCase())).build(); + } + + /** + * 调用接口 /services/v1.0.0/user/1 + * + * @param version + * @param path + * @return + */ + // private String getRequestPath(String version, String path) { + // if (version != null) { + // prefix = version; + // } + // return Constants.PREFIX + SEPARATOR + prefix + (path.startsWith(SEPARATOR) ? path : (SEPARATOR + path)); + // } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestHandler.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestHandler.java new file mode 100644 index 00000000..ef626a27 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestHandler.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.service.api.impl.ApiMappingEngine; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.HashMap; +import java.util.Map; + +public class RequestHandler { + + private static final Logger LOGGER = LoggerFactory.getLogger(RequestHandler.class); + + private RequestInterceptor requestInterceptor; + + private ApiMappingEngine apiMappingEngine; + + private ObjectMapper objectMapper; + + private AsyncTask asyncTask; + + public void setRequestInterceptor(RequestInterceptor requestInterceptor) { + this.requestInterceptor = requestInterceptor; + } + + public void setApiMappingEngine(ApiMappingEngine apiMappingEngine) { + this.apiMappingEngine = apiMappingEngine; + } + + public void setObjectMapper(ObjectMapper objectMapper) { + this.objectMapper = objectMapper; + } + + public void setAsyncTask(AsyncTask asyncTask) { + this.asyncTask = asyncTask; + } + + @ResponseBody + public R>> invoke(HttpServletRequest request, HttpServletResponse response, + @PathVariable(required = false) Map pathVariables, + @RequestParam(required = false) Map requestParams, + @RequestBody(required = false) Map requestBodys) { + + ApiEntity api = MappingHandlerMapping.getMappingApiInfo(request); + PageResult> value = null; + boolean isSuccess = false; + try { + Map params = new HashMap<>(); + if (null != pathVariables && !pathVariables.isEmpty()) { + LOGGER.info("pathVariables:{}", pathVariables); + params.putAll(pathVariables); + } + if (null != requestParams && !requestParams.isEmpty()) { + LOGGER.info("requestParams:{}", requestParams); + params.putAll(requestParams); + } + if (null != requestBodys && !requestBodys.isEmpty()) { + LOGGER.info("requestBodys:{}", requestBodys); + params.putAll(requestBodys); + } + // 执行前置拦截器 + requestInterceptor.preHandle(request, response, api, params); + Long startTime = System.currentTimeMillis(); + value = apiMappingEngine.execute(api, params); + Long endTime = System.currentTimeMillis(); + // 执行后置拦截器 + requestInterceptor.postHandle(request, response, api, params,value, asyncTask,(endTime-startTime)); + isSuccess = true; + return R.ok(value); + } catch (BaseException e) { + return R.fail(e.getCode(),e.getMessage()); + } catch (Exception e){ + if(LOGGER.isDebugEnabled()){ + LOGGER.error("执行api任务失败",e); + }else{ + LOGGER.error("execute api error ,message is :{}",e.getMessage()); + } + return R.fail(ResultCode.FAILED.getCode(), e.getMessage()); + }finally { + statistics(api.getApiCode(),request,isSuccess); + } + } + + /** + * 统计接口调用次数 + * @param apiCode + * @param request + * @param isSuccess + */ + private void statistics(String apiCode, HttpServletRequest request, Boolean isSuccess) { + String orgNo = request.getHeader("orgNo"); + if(orgNo != null){ + asyncTask.doStatics(orgNo,apiCode,isSuccess); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestInterceptor.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestInterceptor.java new file mode 100644 index 00000000..99b3f9e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestInterceptor.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.EnableState; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.utils.IPUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + +public class RequestInterceptor { + + private static final Logger LOGGER = LoggerFactory.getLogger(RequestInterceptor.class); + + private static final String SYSTEM_CONSOLE = "SYSTEM_CONSOLE"; + + /** + * 请求之前执行 + * + * @return 当返回对象时,直接将此对象返回到页面,返回null时,继续执行后续操作 + * @throws Exception + */ + public void preHandle(HttpServletRequest request, HttpServletResponse response, ApiEntity api, Map params) throws JsonProcessingException { + LOGGER.info("************ApiInterceptor preHandle executed**********"); + String uri = request.getRequestURI(); + LOGGER.info("getRequestURI的值:{}" ,uri); + String ipAddr = IPUtil.getIpAddr(request); + LOGGER.info("ipAddr的值:{}" , ipAddr); + + LOGGER.info("request body {}",JacksonUtil.obj2String(params)); + + // 参数校验 + if (ApiCrypto.ApiState.WAIT.getCode().equals(api.getStatus())){ + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + ObjectMapper objectMapper = new ObjectMapper(); + TypeReference> typeReference = new TypeReference>(){}; + List list = objectMapper.readValue(api.getReqParams(), typeReference); + if (null != params && !params.isEmpty()) { + list.forEach(param -> { + if (params.containsKey(param.getParamName())) { + // 参数类型是否正确 + try { + Object parse = DataApiEnum.ParamType.parse(DataApiEnum.ParamType.getParamType(param.getParamType()), params.get(param.getParamName())); + params.put(param.getParamName(),parse); + } catch (Exception e) { + throw new BaseException(ResultCode.INPUT_NOT_VALID.getCode(),param.getParamName()); + } + } + }); + } + + } + + /** + * 执行完毕之后执行 + * + * @throws Exception + */ + public void postHandle(HttpServletRequest request, HttpServletResponse response, ApiEntity api, Map params, Object value, AsyncTask asyncTask,Long time) { + LOGGER.info("response body {}",value); + // 如果是测试接口饿话,记录日志 + String header = request.getHeader(SYSTEM_CONSOLE); + if(StringUtils.isNotBlank(header)){ + ApiLogEntity log = new ApiLogEntity(); + log.setApiId(api.getApiId()); + String uri = request.getRequestURI(); + log.setCallerUrl(uri); + String ipAddr = IPUtil.getIpAddr(request); + log.setCallerIp(ipAddr); + log.setStatus(EnableState.ENABLE.getCode()); + log.setApiName(api.getApiName()); + log.setCallerParams(JacksonUtil.obj2String(params)); + log.setMsg(JacksonUtil.obj2String(value)); + log.setCallerId(null); + log.setTime(time); + asyncTask.doTask(log); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/ApiParams.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/ApiParams.java new file mode 100644 index 00000000..ffb1f54e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/ApiParams.java @@ -0,0 +1,21 @@ +package com.jiuyv.sptcc.agile.dataservice.parmasValidate; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; + +/** + * @ClassName : ApiParams + * @Description : + * @Author : sky + * @Date: 2023-09-20 18:53 + */ +public class ApiParams implements Validate{ + + @Override + public void paramsVal(Object content) { + ApiDtoBase base = (ApiDtoBase) content; + String apiUrl = base.getApiUrl(); + //格式校验,要求 /*/* + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/Validate.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/Validate.java new file mode 100644 index 00000000..ef8bf26b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/Validate.java @@ -0,0 +1,12 @@ +package com.jiuyv.sptcc.agile.dataservice.parmasValidate; + +/** + * @ClassName : Validate + * @Description : 参数校验 + * @Author : sky + * @Date: 2023-09-20 18:51 + */ +public interface Validate { + + void paramsVal(Object content); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/ISyncRecordService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/ISyncRecordService.java new file mode 100644 index 00000000..1e9cdb85 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/ISyncRecordService.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.service; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; + +import java.util.Date; + +/** + * 客流表文件Service接口 + * + * @author shu_kai + * @date 2023-09-26 + */ +public interface ISyncRecordService { + /** + * 查询客流表文件列表 + * + * @param syncRecord 客流表文件 + * @return 客流表文件集合 + */ + SyncRecord selectSyncRecordList(String fileType, Date txnDate); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/AgileApiService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/AgileApiService.java new file mode 100644 index 00000000..e4443d09 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/AgileApiService.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api; + +import com.aspose.words.Document; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiDelRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiStatusRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; + +import java.util.List; + +/** + * 敏捷API + * + * @author yulei + */ +public interface AgileApiService { + + void releaseDataApi(); + + void cancelDataApi(); + + void saveDataApi(ApiEntity entity); + + void updateDataApi(ApiEntity entity); + + ApiEntity getDataApiById(Long id); + + void copyDataApi(Long id, String userName); + + /** + * 发布api接口 + * @param request + */ + void releaseDataApi(ApiStatusRequest request); + + List queryByList(ApiEntity entity); + + List buildApiTree(ApiEntity entity); + + void deleteDataApiById(ApiDelRequest request); + + void registerDataApi(ApiStatusRequest request); + + void cancelDataApi(ApiStatusRequest request); + + /** + * 下架api + * + * @param dto + */ + void downDataApi(ApiStatusRequest dto); + + /** + * 查询用户API列表 + * + * @param request + * @return + */ + List getUserApiList(ApiUserRequest request); + + /** + * 获取API接口统一路径 + * + * @return + */ + String getApiPrefixPath(); + + /** + * 接口文档生成 + * @param id + * @return + * @throws Exception + */ + Document wordDataApi(Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/ApiLogService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/ApiLogService.java new file mode 100644 index 00000000..a401d37c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/ApiLogService.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; + +import java.util.List; + +public interface ApiLogService { + + ApiLogEntity saveApiLog(ApiLogEntity Entity); + + ApiLogEntity getApiLogById(Long id); + + List queryByList(ApiLogEntity entity); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/MetadataSourceService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/MetadataSourceService.java new file mode 100644 index 00000000..8d4eec67 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/MetadataSourceService.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; + +/** + *

+ * 数据源信息表 服务类 + *

+ */ +public interface MetadataSourceService { + + MetadataSourceEntity getMetadataSourceById(Long id); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/AgileApiServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/AgileApiServiceImpl.java new file mode 100644 index 00000000..7643b424 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/AgileApiServiceImpl.java @@ -0,0 +1,536 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.aspose.words.Document; +import com.aspose.words.MailMerge; +import com.aspose.words.net.System.Data.DataRow; +import com.aspose.words.net.System.Data.DataTable; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.dto.RespVo; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.common.exception.ServiceException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.ApiLogTime; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiLogMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiDelRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiStatusRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.handler.MappingHandlerMapping; +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import com.jiuyv.sptcc.agile.dataservice.utils.AddressUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm3Util; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.word.WordUtil; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.core.io.ClassPathResource; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.io.InputStream; +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; +import java.util.stream.Collectors; + +/** + * @author yulei + */ +@Service +public class AgileApiServiceImpl implements AgileApiService { + + private static final Logger LOGGER = LoggerFactory.getLogger(AgileApiServiceImpl.class); + + private static final Map mappings = new ConcurrentHashMap<>(); + + @Resource + private ApiMapper apiMapper; + @Resource + private BaseMapper baseMapper; + @Resource + private ObjectMapper objectMapper; + @Resource + private ApiLogMapper apiLogMapper; + @Resource + private MappingHandlerMapping mappingHandlerMapping; + @Value("${api.test.avgTime}") + private long avgTime; + @Value("${api.test.num}") + private int num; + /** + * 获取API接口统一路径 + * + * @return + */ + @Override + public String getApiPrefixPath() { + return Constants.PREFIX; + } + + @Override + public void releaseDataApi() { + + String[] status = {ApiCrypto.ApiState.RELEASE.getCode(), ApiCrypto.ApiState.REGISTER.getCode()}; + List list = apiMapper.selectListByStatus(status); + LOGGER.info("list size {}", list.size()); + if (!CollectionUtils.isEmpty(list)) { + list = list.stream().filter(x-> x.getApiType().equals(DataApiEnum.API_TYPE.AGILE.getCode())).collect(Collectors.toList()); + list.forEach(this::register); + } + } + + @Override + public void cancelDataApi() { + String[] status = {ApiCrypto.ApiState.WAIT.getCode()}; + List list = apiMapper.selectListByStatus(status); + if (!CollectionUtils.isEmpty(list)) { + list = list.stream().filter(x-> x.getApiType().equals(DataApiEnum.API_TYPE.AGILE.getCode())).collect(Collectors.toList()); + list.forEach(this::unRegister); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void saveDataApi(ApiEntity entity) { + + ApiEntity only = apiMapper.getByApiCode(entity.getApiCode()); + if (only != null) { + throw new BaseException(ResultCode.API_CODE_HAS_USED); + } + // 检测同一个地址是否被占用 + ApiEntity vo = new ApiEntity(); + vo.setApiUrl(entity.getApiUrl()); + vo.setReqMethod(entity.getReqMethod()); + List list = apiMapper.selectList(vo); + if (!CollectionUtils.isEmpty(list)) { + throw new BaseException(ResultCode.API_PATH_HAS_USED); + } + entity.setStatus(DataApiEnum.API_STATUS.WAIT.getCode()); + entity.setApiType(DataApiEnum.API_TYPE.AGILE.getCode()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setVersion(Constants.VERSION); + int insert = apiMapper.insert(entity); + if (insert != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateDataApi(ApiEntity entity) { + ApiEntity byId = apiMapper.getById(entity.getApiId()); + if (byId == null) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + ApiEntity only = apiMapper.getByApiCode(entity.getApiCode()); + if (only != null && !only.getApiId().equals(entity.getApiId())) { + throw new BaseException(ResultCode.API_CODE_HAS_USED); + } + + ApiEntity vo = new ApiEntity(); + vo.setApiUrl(entity.getApiUrl()); + vo.setReqMethod(entity.getReqMethod()); + List list = apiMapper.selectList(vo); + if (!CollectionUtils.isEmpty(list)) { + for (ApiEntity apiEntity : list) { + if(apiEntity.getReqMethod().equals(entity.getReqMethod()) + &&Objects.equals(apiEntity.getApiUrl(),entity.getApiUrl()) + &&!Objects.equals(apiEntity.getApiId(),entity.getApiId())){ + throw new BaseException(ResultCode.API_PATH_HAS_USED); + } + } + } + + entity.setApiType(DataApiEnum.API_TYPE.AGILE.getCode()); + int row = apiMapper.updateById(entity); + if (row != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + @Override + public ApiEntity getDataApiById(Long id) { + ApiEntity apiEntity = apiMapper.getById(id); + if (null == apiEntity) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + return apiEntity; + } + + @Override + public void deleteDataApiById(ApiDelRequest request) { + ApiEntity apiEntity = apiMapper.getById(request.getApiId()); + if (null == apiEntity) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + if (DataApiEnum.API_STATUS.DOWN.getCode().equals(apiEntity.getStatus())||apiEntity.getStatus().equals(DataApiEnum.API_STATUS.WAIT.getCode())) { + ApiEntity entity = new ApiEntity(); + entity.setApiId(request.getApiId()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setUpdateBy(request.getUserName()); + entity.setParams(ParamsUtil.idempotent(request.getRecToken(), null)); + int i = apiMapper.deleteById(entity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + }else{ + throw new BaseException(ResultCode.API_DELETE_ERROR); + } + + + } + + @Override + public void copyDataApi(Long id, String userName) { + ApiEntity apiEntity = Optional.ofNullable(apiMapper.getById(id)).orElseThrow(() -> new BaseException(ResultCode.DATE_NOT_EXIST)); + + ApiEntity copy = new ApiEntity(); + copy.setApiName(apiEntity.getApiName() + Constants.COPY ); + //原始API+时间戳作为新版本号 + String apiVersion = apiEntity.getApiVersion(); + apiVersion = apiVersion.concat(Constants.LINE).concat(baseMapper.selectSeq()+""); + copy.setApiVersion(apiVersion); + //获取原始用户API地址,组装新的地址 + String apiUrl = apiEntity.getApiUrl(); + String apiUrlAfter = AddressUtil.getApiUrl(apiUrl,apiEntity.getApiVersion()); + String newUrl = AddressUtil.getRequestPath(apiVersion,apiUrlAfter); + copy.setApiUrl(newUrl); + copy.setReqMethod(apiEntity.getReqMethod()); + copy.setResType(apiEntity.getResType()); + copy.setDeny(apiEntity.getDeny()); + copy.setRateLimit(apiEntity.getRateLimit()); + copy.setExecuteConfig(apiEntity.getExecuteConfig()); + copy.setReqParams(apiEntity.getReqParams()); + copy.setResParams(apiEntity.getResParams()); + copy.setStatus(DataApiEnum.API_STATUS.WAIT.getCode()); + copy.setCreateBy(userName); + copy.setSourceId(apiEntity.getSourceId()); + copy.setApiType(apiEntity.getApiType()); + copy.setApiCode(getNewApiCode()); + copy.setRecToken(IdUtils.getNewRecToken()); + int insert = apiMapper.insert(copy); + if (insert != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + /** + * @return + */ + public String getNewApiCode() { + Long seq = baseMapper.selectSeq(); + String seqStr = String.valueOf(seq); + return Constants.PRE_APICODE.concat(seqStr); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void registerDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.WAIT); + this.updateStatus(request, DataApiEnum.API_STATUS.REGISTER); + apiEntity.setStatus(DataApiEnum.API_STATUS.REGISTER.getCode()); + register(apiEntity); + } + + /** + * 注册API + * + * @param apiEntity + */ + private void register(ApiEntity apiEntity) { + if (!mappings.containsKey(apiEntity.getApiId().toString())) { + mappingHandlerMapping.registerMapping(apiEntity); + mappings.put(apiEntity.getApiId().toString(), apiEntity); + } + + } + + /** + * 取消注册API + * + * @param apiEntity + */ + private void unRegister(ApiEntity apiEntity) { + if (mappings.containsKey(apiEntity.getApiId().toString())) { + mappingHandlerMapping.unregisterMapping(apiEntity); + mappings.remove(apiEntity.getApiId().toString()); + } + } + + + @Transactional(rollbackFor = Exception.class) + @Override + public void cancelDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.REGISTER); + this.updateStatus(request, DataApiEnum.API_STATUS.WAIT); + unRegister(apiEntity); + } + + /** + * 下架api + * + * @param request + */ + @Transactional(rollbackFor = Exception.class) + @Override + public void downDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.RELEASE); + // 检查该API是否被使用 + int isUse = apiMapper.check(request.getApiId()); + if (isUse > 0) { + throw new BaseException(ResultCode.API_HAS_ORG); + } + this.updateStatus(request, DataApiEnum.API_STATUS.DOWN); + // 发布的API可以下架 + unRegister(apiEntity); + } + + /** + * 检查数据与状态 + * + * @param apiId 接口Id + * @param status 接口当前应该状态 + */ + public ApiEntity checkApi(Long apiId, DataApiEnum.API_STATUS status) { + ApiEntity apiEntity = apiMapper.getById(apiId); + if (apiEntity == null) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + if (!status.getCode().equals(apiEntity.getStatus())) { + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + return apiEntity; + } + + /** + * 更新API状态 + * + * @param request api基本参数 + * @param status 要更新的状态 + */ + public void updateStatus(ApiStatusRequest request, DataApiEnum.API_STATUS status) { + ApiEntity entity = new ApiEntity(); + entity.setApiId(request.getApiId()); + entity.setStatus(status.getCode()); + entity.setUpdateBy(request.getUserName()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setParams(ParamsUtil.idempotent(request.getRecToken(), null)); + int i = apiMapper.updateById(entity); + if (i != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + + } + + /** + * 发布api接口 + * @param request + */ + @Override + public void releaseDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.REGISTER); + + // 最后一次更新后,近10次的API接口测试数据 + ApiLogEntity logEntity = new ApiLogEntity(); + logEntity.setApiId(request.getApiId()); + logEntity.setCallerDate(apiEntity.getUpdateTime()); + ApiLogTime apiLogTime = apiLogMapper.countBy(logEntity); + + if (apiLogTime == null || apiLogTime.getCount() < num) { + throw new ServiceException("测试小于 10 次,不允许发布"); + } + if (apiLogTime.getAvgTime() > avgTime) { + throw new ServiceException("服务平均耗时大于10秒,不允许发布"); + } + // 发布 + this.updateStatus(request, DataApiEnum.API_STATUS.RELEASE); + + } + + @Override + public List queryByList(ApiEntity entity) { + return apiMapper.selectList(entity); + } + + @Override + public List buildApiTree(ApiEntity entity) { + entity.setStatus(DataApiEnum.API_STATUS.RELEASE.getCode()); + List selectList = apiMapper.selectList(entity); + if (!CollectionUtils.isEmpty(selectList)) { + Map> apiMap = selectList.stream().collect(Collectors.groupingBy(ApiEntity::getApiType)); + List treeSelectList = new ArrayList<>(); + Set keySet = apiMap.keySet(); + for (String s : keySet) { + TreeSelect treeSelect = new TreeSelect(); + String apiTypeName = DataApiEnum.API_TYPE.AGILE.getMsg(); + if (DataApiEnum.API_TYPE.SYSTEM.getCode().equals(s)) { + apiTypeName = DataApiEnum.API_TYPE.SYSTEM.getMsg(); + } + treeSelect.setLabel(apiTypeName); + List apiEntityList = apiMap.get(s); + List apiTreeList = new ArrayList<>(); + apiEntityList.stream().forEach(x -> { + TreeSelect tempTree = new TreeSelect(); + tempTree.setId(x.getApiId()); + tempTree.setLabel(x.getApiName()); + apiTreeList.add(tempTree); + }); + treeSelect.setChildren(apiTreeList); + treeSelectList.add(treeSelect); + } + return treeSelectList; + } + return new ArrayList<>(); + } + + /** + * 查询用户API列表 + * + * @param request + * @return + */ + @Override + public List getUserApiList(ApiUserRequest request) { + return apiMapper.getUserApi(request.getMemberId()); + } + + @Override + public Document wordDataApi(Long id){ + + ApiEntity dataApiEntity = apiMapper.getById(id); + if(dataApiEntity == null){ + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + Document doc = null; + try { + ClassPathResource classPathResource = new ClassPathResource("templates/api_1.0.1.docx"); + InputStream inputStream = classPathResource.getInputStream(); + doc = WordUtil.getInstance().getDocument(inputStream); + + // 提供字段 + String[] fieldNames = new String[]{"apiName", "apiVersion", "reqMethod", "resType", "apiUrl", "remark", "transCode", "secretkey"}; + Object[] fieldValues = new Object[]{dataApiEntity.getApiName(), dataApiEntity.getApiVersion(), dataApiEntity.getReqMethod(), dataApiEntity.getResType(), dataApiEntity.getApiUrl(), dataApiEntity.getRemark(), dataApiEntity.getApiCode() , "secretkey"}; + MailMerge mailMerge = doc.getMailMerge(); + mailMerge.execute(fieldNames, fieldValues); + // 请求参数 TableStart:ReqParamList TableEnd:ReqParamList + DataTable reqParamTable = new DataTable("ReqParamList"); + reqParamTable.getColumns().add("paramName"); + reqParamTable.getColumns().add("paramComment"); + reqParamTable.getColumns().add("paramType"); + reqParamTable.getColumns().add("nullable"); + reqParamTable.getColumns().add("exampleValue"); + List reqParamList = JacksonUtil.string2Obj(dataApiEntity.getReqParams(), new TypeReference>() {}); + //分页参数 + ReqParam pageNum = new ReqParam(); + pageNum.setParamName("pageNum"); + pageNum.setNullable("N"); + pageNum.setParamComment("分页页码"); + pageNum.setWhereType(DataApiEnum.WHERE_TYPE.EQUALS.getType()); + pageNum.setParamType(DataApiEnum.ParamType.INTEGER.getCode()); + pageNum.setExampleValue("默认是1"); + pageNum.setDefaultValue("1"); + + ReqParam pageSize = new ReqParam(); + pageSize.setParamName("pageSize"); + pageSize.setNullable("N"); + pageSize.setParamComment("分页大小"); + pageSize.setWhereType(DataApiEnum.WHERE_TYPE.EQUALS.getType()); + pageSize.setParamType(DataApiEnum.ParamType.INTEGER.getCode()); + pageSize.setExampleValue("默认是10"); + pageSize.setDefaultValue("10"); + + reqParamList = reqParamList == null? new ArrayList<>():reqParamList; + //分页参数 + reqParamList.add(pageNum); + reqParamList.add(pageSize); + + for (ReqParam reqParam : reqParamList) { + DataRow row = reqParamTable.newRow(); + row.set(0, reqParam.getParamName()); + row.set(1, reqParam.getParamComment()); + row.set(2,reqParam.getParamType()); + row.set(3, "1".equals(reqParam.getNullable()) ? "Y" : "N"); + row.set(4, reqParam.getExampleValue()); + reqParamTable.getRows().add(row); + } + + mailMerge.executeWithRegions(reqParamTable); + // 返回字段 TableStart:ResParamList TableEnd:ResParamList + DataTable resParamTable = new DataTable("ResParamList"); + resParamTable.getColumns().add("fieldName"); + resParamTable.getColumns().add("dataType"); + resParamTable.getColumns().add("fieldComment"); + resParamTable.getColumns().add("exampleValue"); + List resParamList = JacksonUtil.string2Obj(dataApiEntity.getResParams(), new TypeReference>() {}); + resParamList = resParamList ==null ?new ArrayList<>():resParamList; + for (ResParam resParam : resParamList) { + DataRow row = resParamTable.newRow(); + row.set(0, resParam.getFieldName()); + row.set(1, resParam.getDataType()); + row.set(2, resParam.getFieldComment()); + row.set(3, resParam.getExampleValue()); + resParamTable.getRows().add(row); + } + + mailMerge.executeWithRegions(resParamTable); + // 返回示例 reqExample resExample + ObjectNode objectNode = objectMapper.createObjectNode(); + for (ResParam param : resParamList) { + objectNode.put(param.getFieldName(), param.getExampleValue()); + } + + this.buildReturn(objectNode,mailMerge,dataApiEntity.getApiCode()); + WordUtil.getInstance().insertWatermarkText(doc, "jiuyv.sptcc.agile"); + return doc; + }catch (Exception e){ + LOGGER.error("生成接口文档异常",e); + } + return doc; + } + + void buildReturn(ObjectNode objectNode,MailMerge mailMerge,String transCode) throws Exception { + + LinkedList objectNodes = new LinkedList<>(); + objectNodes.add(objectNode); + PageResult pageResult = new PageResult<>(); + pageResult.setPageNum(1); + pageResult.setRows(objectNodes); + pageResult.setPageSize(20); + pageResult.setTotal(1L); + + RespVo respVo = new RespVo(); + respVo.setRespCode(ResultCode.SUCCESS.getCode()); + respVo.setRespDesc(ResultCode.SUCCESS.getCode()); + respVo.setRespSubCode(""); + respVo.setRespSubDesc(""); + respVo.setSeriNo(IdUtils.fastSimpleUUID()); + respVo.setOrgCode("JGH12222"); + respVo.setTimestamp(new Date()); + respVo.setTransCode(transCode); + respVo.setSign(Sm3Util.encrypt(respVo.toString())); + respVo.setBody(Sm4Util.encryptEcb("886f918cb40cb5a5014402a6c00cda74",JacksonUtil.obj2String(pageResult))); + + mailMerge.execute(new String[]{"reqExample", "resExample"}, new Object[]{ + objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(respVo), + objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(pageResult)}); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiLogServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiLogServiceImpl.java new file mode 100644 index 00000000..1e2bec03 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiLogServiceImpl.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiLogMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.service.api.ApiLogService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class ApiLogServiceImpl implements ApiLogService { + + @Resource + private ApiLogMapper apiLogMapper; + + @Resource + private BaseMapper baseMapper; + + @Override + public ApiLogEntity saveApiLog(ApiLogEntity Entity) { + Entity.setCallerDate(baseMapper.selectSysCurrentTime().getDate()); + apiLogMapper.insert(Entity); + return Entity; + } + + @Override + public ApiLogEntity getApiLogById(Long id) { + return apiLogMapper.getById(id); + } + + @Override + public List queryByList(ApiLogEntity entity) { + return apiLogMapper.selectList(entity); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiMappingEngine.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiMappingEngine.java new file mode 100644 index 00000000..c4ddf022 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiMappingEngine.java @@ -0,0 +1,105 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; +import com.jiuyv.sptcc.agile.dataservice.database.DataSourceFactory; +import com.jiuyv.sptcc.agile.dataservice.database.DbQuery; +import com.jiuyv.sptcc.agile.dataservice.database.DbQueryProperty; +import com.jiuyv.sptcc.agile.dataservice.dto.request.DbSchema; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.factory.AbstractFactory; +import com.jiuyv.sptcc.agile.dataservice.factory.FactoryProducer; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; +import com.jiuyv.sptcc.agile.dataservice.service.api.MetadataSourceService; +import com.jiuyv.sptcc.agile.dataservice.utils.PageUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.SqlBuilderUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ThrowableUtil; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.List; +import java.util.Map; +import java.util.Optional; + +@Service +public class ApiMappingEngine { + + private static final Logger logger = LoggerFactory.getLogger(ApiMappingEngine.class); + + @Autowired + private DataSourceFactory dataSourceFactory; + + @Autowired + private MetadataSourceService metadataSourceService; + + public PageResult> execute(ApiEntity dataApi, Map params) throws JsonProcessingException { + ObjectMapper objectMapper = new ObjectMapper(); + ExecuteConfig executeConfig = objectMapper.readValue(dataApi.getExecuteConfig(), ExecuteConfig.class); + MetadataSourceEntity dataSource = Optional.ofNullable(metadataSourceService.getMetadataSourceById(executeConfig.getSourceId())).orElseThrow(() -> new RuntimeException("API调用查询数据源出错")); + DbSchema dbSchema = objectMapper.readValue(dataSource.getDbSchema(), DbSchema.class); + DbQueryProperty dbQueryProperty = new DbQueryProperty(dataSource.getDbType(), dbSchema.getHost(), + dbSchema.getUsername(), dbSchema.getPassword(), dbSchema.getPort(), dbSchema.getDbName(), dbSchema.getSid()); + DbQuery dbQuery = Optional.ofNullable(dataSourceFactory.createDbQuery(dbQueryProperty)).orElseThrow(() -> new RuntimeException("创建数据查询接口出错")); + // 参数 + Integer pageNum = Integer.parseInt(String.valueOf(params.getOrDefault("pageNum", 1))); + Integer pageSize = Integer.parseInt(String.valueOf(params.getOrDefault("pageSize", 10))); + PageUtil pageUtil = new PageUtil(pageNum, pageSize); + Integer offset = pageUtil.getOffset(); + SqlBuilderUtil.SqlFilterResult sqlFilterResult; + try { + sqlFilterResult = SqlBuilderUtil.getInstance().applyFilters(executeConfig.getSqlText(), params); + } catch (Exception e) { + logger.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new RuntimeException("API调用动态构造SQL语句出错"); + } + Map acceptedFilters = sqlFilterResult.getAcceptedFilters(); + + PageResult> pageResult; + try { + logger.info("执行的sql {},offset {},pageSize {} ", sqlFilterResult.getSql(), offset, pageSize); + pageResult = dbQuery.queryByPage(sqlFilterResult.getSql(), acceptedFilters, offset, pageSize); + } catch (Exception e) { + logger.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new RuntimeException("API调用查询结果集出错"); + } + // 数据脱敏 + TypeReference> typeReference = new TypeReference>() { + }; + try { + List resParams = objectMapper.readValue(dataApi.getResParams(), typeReference); + if (!CollectionUtils.isEmpty(resParams)) { + // 并行流处理脱敏 + pageResult.getRows().parallelStream().forEach(m -> { + resParams.stream().forEach(r -> { + if (m.containsKey(r.getFieldName())) { + Object obj = m.get(r.getFieldName()); + if (null != obj) { + if (StringUtils.isNotEmpty(r.getCipherType()) && StringUtils.isNotEmpty(r.getCryptType())) { + AbstractFactory factory = FactoryProducer.getFactory(r.getCipherType()); + Crypto crypto = factory.getCrypto(r.getCryptType()); + String encrypt = crypto.encrypt(String.valueOf(obj)); + m.put(r.getFieldName(), encrypt); + } + } + } + }); + }); + } + } catch (Exception e) { + logger.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new RuntimeException("API调用数据脱敏出错"); + } + pageResult.setPageNum(pageNum); + pageResult.setPageSize(pageSize); + return pageResult; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/MetadataSourceServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/MetadataSourceServiceImpl.java new file mode 100644 index 00000000..e2318d35 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/MetadataSourceServiceImpl.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.MetadataSourceMapper; +import com.jiuyv.sptcc.agile.dataservice.service.api.MetadataSourceService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + *

+ * 数据源信息表 服务实现类 + *

+ */ +@Service +public class MetadataSourceServiceImpl implements MetadataSourceService { + + @Autowired + private MetadataSourceMapper metadataSourceMapper; + + @Override + public MetadataSourceEntity getMetadataSourceById(Long id) { + MetadataSourceEntity metadataSourceEntity = metadataSourceMapper.getById(id); + return metadataSourceEntity; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/impl/SyncRecordServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/impl/SyncRecordServiceImpl.java new file mode 100644 index 00000000..b2c64142 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/impl/SyncRecordServiceImpl.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.service.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.SyncRecordMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataStatusEnum; +import com.jiuyv.sptcc.agile.dataservice.service.ISyncRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.Date; +import java.util.List; + +/** + * 客流表文件Service业务层处理 + * + * @author shu_kai + * @date 2023-09-26 + */ +@Service +public class SyncRecordServiceImpl implements ISyncRecordService { + @Autowired + private SyncRecordMapper syncRecordMapper; + + /** + * 查询客流表文件列表 + * @return 客流表文件 + */ + @Override + public SyncRecord selectSyncRecordList(String fileType, Date txnDate) { + SyncRecord syncRecord = new SyncRecord(); + syncRecord.setTableName(fileType); + syncRecord.setTxnData(txnDate); + syncRecord.setDataStatus(DataStatusEnum.SUCCESS.getCode()); + List syncRecords = syncRecordMapper.selectSyncRecordList(syncRecord); + if(CollectionUtils.isEmpty(syncRecords)){ + return null; + } + return syncRecords.get(0); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgConfigService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgConfigService.java new file mode 100644 index 00000000..1f578e99 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgConfigService.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; + +import java.util.Date; +import java.util.List; + +/** + * 机构配置信息 + * + * @author yulei + **/ +public interface IOrgConfigService { + + List queryList(OrgConfig config); + + OrgConfig queryDetail(Long configId); + + void addOrgConfig(OrgConfig config); + + void updateOrgConfig(OrgConfig config); + + void deleteById(Long configId); + + /** + * 检测数据日期是否在可允许范围 + * @param metricDate + * @return + */ + boolean checkDataRange(Date metricDate,String orgNo); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgInfoService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgInfoService.java new file mode 100644 index 00000000..45f0fec3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgInfoService.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgDelReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoAddReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoEditReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoStatusReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; + +import java.util.Date; +import java.util.List; + +/** + * 【机构管理信息】Service接口 + * + * @author yulei + * @date 2023-06-16 + */ +public interface IOrgInfoService { + /** + * 查询【机构管理信息】 + * + * @param orgNo 【机构管理信息】主键 + * @return 【机构管理信息】 + */ + OrgInfoEntity selectOrgInfoByOrgNo(String orgNo); + + /** + * 查询【机构管理信息】列表 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 【机构管理信息】集合 + */ + List selectOrgInfoList(OrgInfoEntity orgInfoEntity); + + + /** + * 授权 + * + * @param orgNo + * @param apiIds + */ + void orgApiAuth(OrgApiAuthRequest request); + + /** + * 列表 + * + * @param orgNo + * @return + */ + Long[] orgApiAuthList(String orgNo); + + /** + * 新增机构 + * + * @param addReq + */ + void add(OrgInfoAddReq addReq); + + /** + * 更新结构信息 + * + * @param request + */ + void update(OrgInfoEditReq request); + + /** + * 删除机构 + * + * @param request + */ + void delete(OrgDelReq request); + + /** + * 启动机构 + * + * @param request + */ + void run(OrgInfoStatusReq request); + + /** + * 停止机构 + * + * @param request + */ + void stop(OrgInfoStatusReq request); + + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgStatisticsService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgStatisticsService.java new file mode 100644 index 00000000..2f061a9f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgStatisticsService.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; + +import java.util.List; + +/** + * 接口调用次数统计Service接口 + * + * @author yulei + * @date 2023-06-16 + */ +public interface IOrgStatisticsService { + + /** + * 查询接口调用次数统计列表 + * + * @param orgStatistics 接口调用次数统计 + * @return 接口调用次数统计集合 + */ + List selectList(OrgStatisticsEntity orgStatistics); + + /** + * 新增接口调用次数统计 + * + * @param orgStatistics 接口调用次数统计 + * @return 结果 + */ + int insertOrgStatistics(OrgStatisticsEntity orgStatistics); + + /** + * 新增接口调用次数统计 + * @param orgNo + * @param apiCode + * @param isuceess + */ + void insertOrgStatistics(String orgNo, String apiCode,Boolean isuceess); + + /** + * 获取会员的接口统计情况 + * + * @param memberId + * @return + */ + List getUserInfo(String memberId); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgApiAuthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgApiAuthService.java new file mode 100644 index 00000000..ef8507f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgApiAuthService.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; + +import java.util.List; + +/** + * 【机构接口权限表】(OrgApiAuth)表服务接口 + * + * @author makejava + * @since 2023-07-13 16:03:56 + */ +public interface OrgApiAuthService { + + + /** + * 分页查询 + * + * @param orgApiAuth 筛选条件 + * @param orgApiAuth 分页对象 + * @return 查询结果 + */ + List queryByPage(OrgApiAuth orgApiAuth); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgAuthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgAuthService.java new file mode 100644 index 00000000..1c7edb82 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgAuthService.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgAuthEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; + +import java.util.List; + +/** + * 机构权限接口 + * + * @ClassName : OrgAuthService + * @Author : sky + * @Date: 2023-07-13 13:49 + */ +public interface OrgAuthService { + + + /** + * 获取机构权限列表 + * @param req + * @return + */ + OrgAuthResp getOrgAuth(OrgAuthReq req); + + List selectAllApi(OrgAuthReq req); + + /** + * 机构权限校验 + * @param request + */ + OrgKeyResponse check(OrgAuthRequest request); + + /** + * 活接密钥 + * @param orgCode + * @return + */ + OrgKeyResponse getKey(String orgCode); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgApiAuthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgApiAuthServiceImpl.java new file mode 100644 index 00000000..ca70660a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgApiAuthServiceImpl.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.OrgApiAuthDao; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; +import com.jiuyv.sptcc.agile.dataservice.service.org.OrgApiAuthService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 【机构接口权限表】(OrgApiAuth)表服务实现类 + * + * @author makejava + * @since 2023-07-13 16:03:56 + */ +@Service("orgApiAuthService") +public class OrgApiAuthServiceImpl implements OrgApiAuthService { + @Resource + private OrgApiAuthDao orgApiAuthDao; + + /** + * 分页查询 + * + * @param orgApiAuth 筛选条件 + * @return 查询结果 + */ + @Override + public List queryByPage(OrgApiAuth orgApiAuth) { + return orgApiAuthDao.selectList(orgApiAuth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java new file mode 100644 index 00000000..36378e17 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java @@ -0,0 +1,226 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.OrgApiAuthDao; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgAuthEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.OrgAuthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.IpWhiteCheckUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.cache.annotation.Cacheable; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; + +/** + * @ClassName : OrgAuthServiceImpl + * @Description : + * @Author : sky + * @Date: 2023-07-13 16:39 + */ +@Service +public class OrgAuthServiceImpl implements OrgAuthService { + + private static final Logger LOGGER = LoggerFactory.getLogger(OrgAuthServiceImpl.class); + + @Resource + private OrgInfoMapper orgInfoDao; + @Resource + private OrgApiAuthDao orgApiAuthDao; + @Resource + private ApiMapper apiMapper; + @Resource + private OrgConfigMapper configMapper; + + + /** + * 获取机构权限列表 + * + * @param req + * @return + */ + @Override + public OrgAuthResp getOrgAuth(OrgAuthReq req) { + + OrgInfoEntity orgInfo = orgInfoDao.selectOrgInfoByOrgNo(req.getOrgCode()); + if (orgInfo == null) { + throw new BaseException(ResultCode.ORG_NOT_FOUND); + } + if (!OrgCrypto.OrgInfoStatusCrypto.UP.getKey().equals(orgInfo.getStatus())) { + throw new BaseException(ResultCode.API_IS_DOWN); + } + + OrgAuthResp orgAuthResp = new OrgAuthResp(); + orgAuthResp.setOrgCode(orgInfo.getOrgNo()); + orgAuthResp.setSubOrgCode(req.getSubOrgCode()); + orgAuthResp.setOrgName(orgInfo.getOrgName()); + orgAuthResp.setOrgType(orgInfo.getOrgType()); + + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); + + orgAuthResp.setSalt(deptSalt); + orgAuthResp.setEncrypt(deptEncrypt); + orgAuthResp.setIp(orgInfo.getIp()); + orgAuthResp.setDataBegin(orgInfo.getDataBegin()); + orgAuthResp.setDataEnd(orgInfo.getDataEnd()); + + List orgApiEntities = apiMapper.selectOrgApi(req.getOrgCode()); + if (CollectionUtils.isEmpty(orgApiEntities)) { + throw new BaseException(ResultCode.API_NOT_RIGHT); + } + List apis = new ArrayList<>(); + for (OrgApiEntity o : orgApiEntities) { + // 只有已发布的才有效 + if (ApiCrypto.ApiState.RELEASE.getCode().equals(o.getStatus())) { + OrgAuthResp.Api api = toApi(o); + apis.add(api); + + } + } + orgAuthResp.setApiList(apis); + return orgAuthResp; + } + + @Cacheable(value = "SECOND_CACHE", keyGenerator = "customKeyGenerator") + @Override + public List selectAllApi(OrgAuthReq req) { + return orgApiAuthDao.selectAllApi(req); + } + + @Override + public OrgKeyResponse check(OrgAuthRequest request) { + String orgCode = request.getOrgCode(); + LOGGER.info("机构校验 {}", orgCode); + OrgInfoEntity orgInfo = orgInfoDao.selectOrgInfoByOrgNo(orgCode); + if (orgInfo == null) { + throw new BaseException(ResultCode.ORG_NOT_FOUND); + } + if (!OrgCrypto.OrgInfoStatusCrypto.UP.getKey().equals(orgInfo.getStatus())) { + throw new BaseException(ResultCode.API_IS_DOWN); + } + OrgKeyResponse response = new OrgKeyResponse(); + + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); + response.setSalt(deptSalt); + response.setEncrypt(deptEncrypt); + // 该机构的授权接口 + List orgApiEntities = apiMapper.selectOrgApi(orgCode); + if (CollectionUtils.isEmpty(orgApiEntities)) { + throw new BaseException(ResultCode.API_NOT_RIGHT); + } + // 是否包含交易码 + String apiCode = request.getApiCode(); + LOGGER.info("交易码校验 {}", apiCode); + List collect = orgApiEntities.stream().filter(x -> Objects.equals(apiCode, x.getApiCode())).collect(Collectors.toList()); + if (CollectionUtils.isEmpty(collect)) { + throw new BaseException(ResultCode.API_NOT_RIGHT); + } + OrgApiEntity orgApiEntity = collect.get(0); + + OrgAuthResp.Api api= toApi(orgApiEntity); + response.setApi(api); + + /* + * "1.168.1.1" //设置单个IP的白名单 // + * "192.168.3.17-192.168.3.38" //设置一个IP范围 + * "192.168.4.0/24"; //設置一个网段 + * 三种格式允许并行 + */ + LOGGER.info("白名单校验 {},white list {}", request.getIp(), orgInfo.getIp()); + if (!IpWhiteCheckUtil.isPermited(request.getIp(), orgInfo.getIp())) { + throw new BaseException(ResultCode.ORG_IP_WHILE_LIST); + } + // 数据范围权限 + checkDataTime(request); + return response; + } + + private OrgAuthResp.Api toApi(OrgApiEntity orgApiEntity) { + OrgAuthResp.Api api = new OrgAuthResp.Api(); + api.setApiId(orgApiEntity.getApiId()); + api.setStatus(orgApiEntity.getStatus()); + api.setRemark(orgApiEntity.getRemark()); + api.setApiName(orgApiEntity.getApiName()); + api.setApiVersion(orgApiEntity.getApiVersion()); + api.setApiUrl(orgApiEntity.getApiUrl()); + api.setReqMethod(orgApiEntity.getReqMethod()); + api.setResType(orgApiEntity.getResType()); + api.setExecuteConfig(orgApiEntity.getExecuteConfig()); + api.setReqParams(orgApiEntity.getReqParams()); + api.setResParams(orgApiEntity.getResParams()); + api.setApiCode(orgApiEntity.getApiCode()); + api.setApiType(orgApiEntity.getApiType()); + return api; + } + + + /** + * 该接口很具有范围特性,接口必须是查询类接口,切必须带有查询时间限制 + * + * @param request + */ + private void checkDataTime(OrgAuthRequest request) { + Date dataDate = request.getDataDate(); + if (dataDate == null) { + return; + } + OrgConfig config = new OrgConfig(); + config.setOrgNo(request.getOrgCode()); + List list = configMapper.getList(config); + for (OrgConfig orgConfig : list) { + String configKey = orgConfig.getConfigKey(); + String configValue = orgConfig.getConfigValue(); + if (configKey.equals(ConfigCrypot.OrgCfnKeyEnum.DATA_BEGIN.getCode())) { + Date dataBegin = DateUtils.dateTime(DateUtils.YYYY_MM_DD, configValue); + if (dataDate.before(dataBegin)) { + throw new BaseException(ResultCode.DATA_TIME_NO_RIGHT); + } + } + if (configKey.equals(ConfigCrypot.OrgCfnKeyEnum.DATA_END.getCode())) { + Date dataEnd = DateUtils.dateTime(DateUtils.YYYY_MM_DD, configValue); + if (dataDate.after(dataEnd)) { + throw new BaseException(ResultCode.DATA_TIME_NO_RIGHT); + } + } + } + + } + + @Cacheable(value = "SECOND_CACHE", keyGenerator = "customKeyGenerator") + @Override + public OrgKeyResponse getKey(String orgCode) { + OrgInfoEntity orgInfo = orgInfoDao.selectOrgInfoByOrgNo(orgCode); + if (orgInfo == null) { + throw new BaseException(ResultCode.ORG_NOT_FOUND); + } + OrgKeyResponse response = new OrgKeyResponse(); + response.setSalt(orgInfo.getSalt()); + response.setEncrypt(orgInfo.getEncrypt()); + return response; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgConfigServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgConfigServiceImpl.java new file mode 100644 index 00000000..b0250db1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgConfigServiceImpl.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * 机构配置信息 + * + * @author yulei + **/ +@Service +public class OrgConfigServiceImpl implements IOrgConfigService { + + @Resource + private OrgConfigMapper orgConfigMapper; + + @Override + public List queryList(OrgConfig config) { + return orgConfigMapper.getList(config); + } + + @Override + public OrgConfig queryDetail(Long configId) { + return orgConfigMapper.getById(configId); + } + + @Override + public void addOrgConfig(OrgConfig config) { + orgConfigMapper.insert(config); + } + + @Override + public void updateOrgConfig(OrgConfig config) { + OrgConfig byId = orgConfigMapper.getById(config.getConfigId()); + if (byId == null) { + throw new BaseException("配置信息不存在"); + } + if (!byId.getOrgNo().equals(config.getOrgNo())) { + throw new BaseException("不允许切换机构"); + } + int row = orgConfigMapper.updateById(config); + if (row != 1) { + throw new BaseException(ResultCode.FAILED); + } + } + + @Override + public void deleteById(Long configId) { + orgConfigMapper.deleteById(configId); + } + + @Override + public boolean checkDataRange(Date metricDate,String orgNo) { + if(metricDate == null){ + return true; + } + OrgConfig config = new OrgConfig(); + config.setOrgNo(orgNo); + List list = orgConfigMapper.getList(config); + String dataBegin = null; + String dateEnd = null; + for (OrgConfig orgConfig : list) { + if(ConfigCrypot.OrgCfnKeyEnum.DATA_BEGIN.getCode().equals(orgConfig.getConfigKey())){ + dataBegin = orgConfig.getConfigValue(); + } + if(ConfigCrypot.OrgCfnKeyEnum.DATA_END.getCode().equals(orgConfig.getConfigKey())){ + dateEnd = orgConfig.getConfigValue(); + } + } + if(null != dataBegin){ + Date beginDate = DateUtils.parseDate(dataBegin); + if(metricDate.before(beginDate)){ + return false; + } + } + if(null != dateEnd){ + Date endDate = DateUtils.parseDate(dateEnd); + if(metricDate.after(endDate)){ + return false; + } + } + return true; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java new file mode 100644 index 00000000..162af5bd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java @@ -0,0 +1,346 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.core.BaseTime; +import com.jiuyv.sptcc.agile.dataservice.common.enums.DeleteEnum; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.OrgApiAuthDao; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.*; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgDelReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoAddReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoEditReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoStatusReq; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgInfoService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 【机构管理信息】Service业务层处理 + * + * @author shu_k + * @date 2023-06-16 + */ +@Service +public class OrgInfoServiceImpl implements IOrgInfoService { + + @Resource + private OrgInfoMapper orgInfoMapper; + + @Resource + private OrgApiAuthDao orgApiAuthMapper; + + @Resource + private OrgConfigMapper configMapper; + @Resource + private ApiMapper apiMapper; + + @Resource + private BaseMapper baseMapper; + + /** + * 查询【机构管理信息】 + * + * @param orgNo 【机构管理信息】主键 + * @return 【机构管理信息】 + */ + @Override + public OrgInfoEntity selectOrgInfoByOrgNo(String orgNo) { + OrgInfoEntity orgInfo = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); + orgInfo.setSalt(deptSalt); + orgInfo.setEncrypt(deptEncrypt); + return orgInfo; + } + + /** + * 查询【机构管理信息】列表 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 【机构管理信息】 + */ + @Override + public List selectOrgInfoList(OrgInfoEntity orgInfoEntity) { + return orgInfoMapper.selectOrgInfoList(orgInfoEntity); + } + + /** + * 机构授权 + * @param request + */ + @Transactional(rollbackFor = Exception.class) + @Override + public void orgApiAuth(OrgApiAuthRequest request) { + String orgNo = request.getOrgNo(); + Long[] apiIds = request.getApiIds(); + List apis = null; + if (apiIds.length != 0) { + //是否有效id + apis = apiMapper.getByIds(apiIds); + if (apis.size() != apiIds.length) { + throw new BaseException(ResultCode.DATE_NOT_EXIST.getCode(), "接口数据不匹配"); + } + } + + // 删除原绑定信息 + orgApiAuthMapper.deleteByOrgNo(orgNo); + for (Long apiId : apiIds) { + OrgApiAuth vo = new OrgApiAuth(); + vo.setOrgNo(orgNo); + vo.setApiId(apiId); + orgApiAuthMapper.insert(vo); + } + + //删除下载接口权限 + OrgConfig config = new OrgConfig(); + config.setOrgNo(orgNo); + config.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); + configMapper.deleteByEntity(config); + //如果该接口是下载接口,交易码是download,默认拥有全部下载权限 + if (apis == null) { + return ; + } + List collect = apis.stream().map(ApiEntity::getApiCode).collect(Collectors.toList()); + OrgInfoEntity orgInfoEntity = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + if (collect.contains(ApicodeEnum.DWONLOAD.getCode())) { + FileTypeEnum[] values = FileTypeEnum.values(); + for (FileTypeEnum value : values) { + OrgConfig vo = new OrgConfig(); + vo.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); + vo.setConfigValue(value.getCode()); + vo.setOrgNo(orgNo); + vo.setOrgName(orgInfoEntity.getOrgName()); + vo.setStatus(ConfigCrypot.ConfigStatus.NORMAL.getCode()); + vo.setConfigDesc(value.getMsg()); + vo.setDelFlag(DeleteEnum.NO.getCode()); + vo.setMemberId(orgInfoEntity.getMemberId()); + vo.setRecToken(IdUtils.getNewRecToken()); + vo.setVersionNum(Constants.VERSION); + vo.setCreateBy(request.getUserId().toString()); + vo.setCreateByName(request.getUserName()); + configMapper.insert(vo); + } + } + } + + @Override + public Long[] orgApiAuthList(String orgNo) { + OrgApiAuth authEntity = new OrgApiAuth(); + authEntity.setOrgNo(orgNo); + List authEntityList = orgApiAuthMapper.selectList(authEntity); + return authEntityList.stream().map(OrgApiAuth::getApiId).toArray(Long[]::new); + } + + /** + * 新增机构 + * + * @param addReq + */ + @Override + public void add(OrgInfoAddReq addReq) { + Long aLong = baseMapper.selectSeq(); + String orgNo = IdUtils.buildSeq(aLong, Constants.ORG_NO_PREFIX, Constants.ORG_NO_LENGTH); + String memberId = addReq.getMemberId(); + if(memberId != null){ + OrgInfoEntity entity = orgInfoMapper.getByMemberId(addReq.getMemberId()); + if (entity != null) { + throw new BaseException(ResultCode.PORTAL_USER_HAS_BINGED); + } + } + + OrgInfoEntity infoEntity = toEntity(addReq); + infoEntity.setOrgNo(orgNo); + infoEntity.setStatus(OrgCrypto.OrgStatus.STOP.getCode()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setCreateByName(addReq.getUserName()); + infoEntity.setCreateByName(addReq.getUserName()); + orgInfoMapper.insertOrgInfo(infoEntity); + } + + private OrgInfoEntity toEntity(OrgInfoBase base) { + OrgInfoEntity entity = new OrgInfoEntity(); + entity.setOrgName(base.getOrgName()); + entity.setOrgType(base.getOrgType()); + entity.setOrgDesc(base.getOrgDesc()); + //密钥数据库加密存储 + String encryptSalt = Sm4Util.encryptEcb(base.getSalt()); + String encryptEcpt = Sm4Util.encryptEcb(base.getEncrypt()); + entity.setSalt(encryptSalt); + entity.setEncrypt(encryptEcpt); + entity.setStartTime(base.getStartTime()); + entity.setEndTime(base.getEndTime()); + entity.setStatus(base.getStatus()); + entity.setCreateByName(base.getUserName()); + entity.setUpdateByName(base.getUserName()); + entity.setIp(base.getIp()); + entity.setContractTel(Sm4Util.encryptEcb(base.getContractTel())); + entity.setDataBegin(base.getStartTime()); + entity.setDataEnd(base.getEndTime()); + entity.setMemberId(base.getMemberId()); + entity.setCreateBy(String.valueOf(base.getUserId())); + entity.setRemark(base.getRemark()); + return entity; + } + + /** + * 更新结构信息 + * + * @param request + */ + @Override + public void update(OrgInfoEditReq request) { + + OrgInfoEntity validate = validate(request.getOrgNo(), OrgCrypto.OrgStatus.STOP); + + String memberId = request.getMemberId(); + if(memberId != null && !memberId.equals(validate.getMemberId())){ + OrgInfoEntity entity = orgInfoMapper.getByMemberId(memberId); + if (entity != null) { + throw new BaseException(ResultCode.PORTAL_USER_HAS_BINGED); + } + } + + OrgInfoEntity infoEntity = toEntity(request); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.updateOrgInfo(infoEntity); + if (i != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + + } + + /** + * 删除机构 + * + * @param request + */ + @Override + public void delete(OrgDelReq request) { + + validate(request.getOrgNo(), OrgCrypto.OrgStatus.NORMAL, false); + + OrgInfoEntity infoEntity = new OrgInfoEntity(); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateBy("" + request.getUserId()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.delete(infoEntity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + //删除机构配置 + configMapper.deleteByOrgNo(request.getOrgNo()); + //删除机构绑定接口 + orgApiAuthMapper.deleteByOrgNo(request.getOrgNo()); + + } + + /** + * 启动机构 + * + * @param request + */ + @Override + public void run(OrgInfoStatusReq request) { + OrgInfoEntity vo = validate(request.getOrgNo(), OrgCrypto.OrgStatus.NORMAL, false); + + Date endTime = vo.getEndTime(); + BaseTime baseTime = baseMapper.selectSysCurrentTime(); + Date now = baseTime.getDate(); + //已经在到期时间之后 + if (now.after(endTime)) { + throw new BaseException(ResultCode.ORG_DATE_TIME_ERROR); + } + OrgInfoEntity infoEntity = new OrgInfoEntity(); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setStatus(OrgCrypto.OrgStatus.NORMAL.getCode()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateBy("" + request.getUserId()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.updateOrgInfo(infoEntity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + /** + * 停止机构 + * + * @param request + */ + @Override + public void stop(OrgInfoStatusReq request) { + validate(request.getOrgNo(), OrgCrypto.OrgStatus.NORMAL); + OrgInfoEntity infoEntity = new OrgInfoEntity(); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setStatus(OrgCrypto.OrgStatus.STOP.getCode()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateBy("" + request.getUserId()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.updateOrgInfo(infoEntity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + /** + * @param orgNo 主键 + * @param status 不允许操作的状态 + */ + private OrgInfoEntity validate(String orgNo, OrgCrypto.OrgStatus status) { + return validate(orgNo, status, true); + } + + /** + * @param orgNo 主键 + * @param status 不允许操作的状态 + * @param isWish 是否希望的状态 + */ + private OrgInfoEntity validate(String orgNo, OrgCrypto.OrgStatus status, boolean isWish) { + OrgInfoEntity vo = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + if (vo == null) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + if (isWish) { + //期望的状态 + if (!status.getCode().equals(vo.getStatus())) { + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + } else { + //不期望的状态 + if (status.getCode().equals(vo.getStatus())) { + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + } + return vo; + } + + + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgStatisticsServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgStatisticsServiceImpl.java new file mode 100644 index 00000000..c10ea939 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgStatisticsServiceImpl.java @@ -0,0 +1,157 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.enums.DeleteEnum; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgStatisticsMapper; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgStatisticsService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.sun.org.apache.xpath.internal.operations.Bool; +import org.mybatis.spring.MyBatisSystemException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +/** + * 接口调用次数统计Service业务层处理 + * + * @author yulei + * @date 2023-06-16 + */ +@Service +public class OrgStatisticsServiceImpl implements IOrgStatisticsService { + + private static final Logger LOGGER = LoggerFactory.getLogger(OrgStatisticsServiceImpl.class); + @Resource + private OrgStatisticsMapper orgStatisticsMapper; + + @Resource + private OrgInfoMapper orgInfoMapper; + + @Resource + private ApiMapper apiMapper; + + @Resource + BaseMapper baseMapper; + /** + * 查询接口调用次数统计列表 + * + * @param orgStatistics 接口调用次数统计 + * @return 接口调用次数统计 + */ + @Override + public List selectList(OrgStatisticsEntity orgStatistics) { + return orgStatisticsMapper.selectOrgStatisticsList(orgStatistics); + } + + /** + * 新增接口调用次数统计 + * + * @param orgStatistics 接口调用次数统计 + * @return 结果 + */ + @Override + public int insertOrgStatistics(OrgStatisticsEntity orgStatistics) { + return orgStatisticsMapper.insertOrgStatistics(orgStatistics); + } + + @Override + public List getUserInfo(String memberId) { + + OrgInfoEntity orgInfoEntity = orgInfoMapper.getByMemberId(memberId); + if (orgInfoEntity == null) { + return new ArrayList<>(); + } + OrgStatisticsEntity orgStatistics = new OrgStatisticsEntity(); + orgStatistics.setOrgNo(orgInfoEntity.getOrgNo()); + return orgStatisticsMapper.selectOrgStatisticsList(orgStatistics); + } + + @Override + public void insertOrgStatistics(String orgNo, String apiCode, Boolean isSuccess) { + + if(orgNo ==null || apiCode == null ||isSuccess ==null){ + LOGGER.info("Statistics api ,orgNo {},apiCode {},isSuccess{}",orgNo,apiCode,isSuccess); + return; + } + OrgInfoEntity orgInfoEntity = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + ApiEntity byApiCode = apiMapper.getByApiCode(apiCode); + if(orgInfoEntity ==null || byApiCode ==null){ + LOGGER.info("不合法的请求"); + return; + } + OrgStatisticsEntity vo = new OrgStatisticsEntity(); + vo.setApiId(byApiCode.getApiId()); + vo.setOrgNo(orgNo); + OrgStatisticsEntity orgStatistics = orgStatisticsMapper.selectByApi(vo); + if(orgStatistics ==null){ + //新增 + try { + doSave(orgNo, isSuccess, orgInfoEntity, byApiCode); + }catch (MyBatisSystemException e){ + //并发执行了,主键冲突 + orgStatistics = orgStatisticsMapper.selectByApi(vo); + doIncrease(isSuccess, orgStatistics); + } + + }else{ + //更新 + doIncrease(isSuccess, orgStatistics); + } + } + + /** + * 统计次数 + * @param isSuccess 是否成功 + * @param orgStatistics 统计信息 + */ + private void doIncrease(Boolean isSuccess, OrgStatisticsEntity orgStatistics) { + if(orgStatistics == null){ + LOGGER.warn(" unknown exception: orgStatistics is null"); + return ; + } + orgStatistics.setSuccessTotal(Boolean.TRUE.equals(isSuccess)?1:0); + orgStatistics.setFailTotal(Boolean.TRUE.equals(isSuccess)?0:1); + orgStatistics.setUpdateTime(baseMapper.selectSysCurrentTime().getDate()); + orgStatisticsMapper.increase(orgStatistics); + } + + /** + * 初始化数据 + * @param orgNo 机构 + * @param isSuccess 是否成功 + * @param orgInfoEntity 机构信息 + * @param byApiCode 编码 + */ + private void doSave(String orgNo, Boolean isSuccess, OrgInfoEntity orgInfoEntity, ApiEntity byApiCode) { + OrgStatisticsEntity orgStatisticsEntity = new OrgStatisticsEntity(); + orgStatisticsEntity.setOrgNo(orgNo); + orgStatisticsEntity.setOrgName(orgInfoEntity.getOrgName()); + orgStatisticsEntity.setApiId(byApiCode.getApiId()); + orgStatisticsEntity.setSuccessTotal(Boolean.TRUE.equals(isSuccess)?1:0); + orgStatisticsEntity.setFailTotal(Boolean.TRUE.equals(isSuccess)?0:1); + orgStatisticsEntity.setApiName(byApiCode.getApiName()); + orgStatisticsEntity.setVersionNum(0); + orgStatisticsEntity.setRecToken(IdUtils.getNewRecToken()); + orgStatisticsEntity.setCreateByName(Constants.SYSTEM_NAME); + orgStatisticsEntity.setUpdateByName(Constants.SYSTEM_NAME); + orgStatisticsEntity.setCreateBy(Constants.SYSTEM_NAME); + orgStatisticsEntity.setCreateTime(baseMapper.selectSysCurrentTime().getDate()); + orgStatisticsEntity.setUpdateBy(Constants.SYSTEM_NAME); + orgStatisticsEntity.setUpdateTime(baseMapper.selectSysCurrentTime().getDate()); + orgStatisticsEntity.setDelFlag(DeleteEnum.NO.getCode()); + orgStatisticsMapper.insertOrgStatistics(orgStatisticsEntity); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IFileService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IFileService.java new file mode 100644 index 00000000..cecfb5e6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IFileService.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import feign.Response; +import org.springframework.http.ResponseEntity; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; + +/** + * @ClassName : IFileService + * @Description : 文件流 + * @Author : sky + * @Date: 2023-09-14 10:51 + */ +public interface IFileService { + + /** + * 文件下载 + * + * @param request + * @return + */ + Response downloadFile(DownLoadRequest request, HttpServletResponse response) throws IOException; + + + /** + * 文件下载 + * @return + */ + ResponseEntity download(); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineInfoService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineInfoService.java new file mode 100644 index 00000000..39579200 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineInfoService.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineInfo; + +import java.util.List; + +/** + * 线路基础信息Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineInfoService +{ + /** + * 查询线路基础信息 + * + * @param lineName 线路基础信息主键 + * @return 线路基础信息 + */ + public LineInfo selectLineInfoByLineName(String lineName); + + /** + * 查询线路基础信息列表 + * + * @param lineInfo 线路基础信息 + * @return 线路基础信息集合 + */ + public List selectLineInfoList(LineInfo lineInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricDayService.java new file mode 100644 index 00000000..91c0d91d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricDayService.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; + +import java.util.List; + +/** + * 线路每天客流宝量指标Service接口 + * + * @author shu_k + * @date 2023-09-18 + */ +public interface ILineMetricDayService { + + + /** + * 查询线路每天客流宝量指标列表 + * + * @param lineMetricDay 线路每天客流宝量指标 + * @return 线路每天客流宝量指标集合 + */ + List selectLineMetricDayList(LineMetricDay lineMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricHourService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricHourService.java new file mode 100644 index 00000000..66f6d014 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricHourService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; + +import java.util.List; + +/** + * 线路小时客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineMetricHourService { + /** + * 查询线路小时客流量统计 + * + * @param id 线路小时客流量统计主键 + * @return 线路小时客流量统计 + */ + LineMetricHour selectlineMetricHourById(Long id); + + /** + * 查询线路小时客流量统计列表 + * + * @param lineMetricHour 线路小时客流量统计 + * @return 线路小时客流量统计集合 + */ + List selectlineMetricHourList(LineMetricHour lineMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricMonthService.java new file mode 100644 index 00000000..d0a75298 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; + +import java.util.List; + +/** + * 线路月客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineMetricMonthService { + /** + * 查询线路月客流量统计 + * + * @param id 线路月客流量统计主键 + * @return 线路月客流量统计 + */ + LineMetricMonth selectlineMetricMonthById(Long id); + + /** + * 查询线路月客流量统计列表 + * + * @param lineMetricMonth 线路月客流量统计 + * @return 线路月客流量统计集合 + */ + List selectlineMetricMonthList(LineMetricMonth lineMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationInfoService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationInfoService.java new file mode 100644 index 00000000..d750f4c9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationInfoService.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationInfo; + +import java.util.List; + +/** + * 站点基础信息Service接口 + * + * @author ruoyi + * @date 2023-09-19 + */ +public interface ILineStationInfoService +{ + /** + * 查询站点基础信息 + * + * @param lineCode 站点基础信息主键 + * @return 站点基础信息 + */ + public LineStationInfo selectLineStationInfoByLineCode(String lineCode); + + /** + * 查询站点基础信息列表 + * + * @param lineStationInfo 站点基础信息 + * @return 站点基础信息集合 + */ + public List selectLineStationInfoList(LineStationInfo lineStationInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricDayService.java new file mode 100644 index 00000000..5ef95842 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; + +import java.util.List; + +/** + * 站点日客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationMetricDayService { + /** + * 查询站点日客流量统计 + * + * @param id 站点日客流量统计主键 + * @return 站点日客流量统计 + */ + LineStationMetricDay selectLineStationMetricDayById(Long id); + + /** + * 查询站点日客流量统计列表 + * + * @param lineStationMetricDay 站点日客流量统计 + * @return 站点日客流量统计集合 + */ + List selectLineStationMetricDayList(LineStationMetricDay lineStationMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricHourService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricHourService.java new file mode 100644 index 00000000..641d1da0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricHourService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; + +import java.util.List; + +/** + * 站点小时客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationMetricHourService { + /** + * 查询站点小时客流量统计 + * + * @param id 站点小时客流量统计主键 + * @return 站点小时客流量统计 + */ + LineStationMetricHour selectLineStationMetricHourById(Long id); + + /** + * 查询站点小时客流量统计列表 + * + * @param lineStationMetricHour 站点小时客流量统计 + * @return 站点小时客流量统计集合 + */ + List selectLineStationMetricHourList(LineStationMetricHour lineStationMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricMonthService.java new file mode 100644 index 00000000..bd096b7e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; + +import java.util.List; + +/** + * 站点月客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationMetricMonthService { + /** + * 查询站点月客流量统计 + * + * @param id 站点月客流量统计主键 + * @return 站点月客流量统计 + */ + LineStationMetricMonth selectLineStationMetricMonthById(Long id); + + /** + * 查询站点月客流量统计列表 + * + * @param lineStationMetricMonth 站点月客流量统计 + * @return 站点月客流量统计集合 + */ + List selectLineStationMetricMonthList(LineStationMetricMonth lineStationMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransDayService.java new file mode 100644 index 00000000..e98bade2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; + +import java.util.List; + +/** + * 站点日换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationTransDayService { + /** + * 查询站点日换乘客流量统计 + * + * @param id 站点日换乘客流量统计主键 + * @return 站点日换乘客流量统计 + */ + LineStationTransDay selectLineStationTransDayById(Long id); + + /** + * 查询站点日换乘客流量统计列表 + * + * @param lineStationTransDay 站点日换乘客流量统计 + * @return 站点日换乘客流量统计集合 + */ + List selectLineStationTransDayList(LineStationTransDay lineStationTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransHourService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransHourService.java new file mode 100644 index 00000000..13d69615 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransHourService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; + +import java.util.List; + +/** + * 站点小时换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationTransHourService { + /** + * 查询站点小时换乘客流量统计 + * + * @param id 站点小时换乘客流量统计主键 + * @return 站点小时换乘客流量统计 + */ + LineStationTransHour selectLineStationTransHourById(Long id); + + /** + * 查询站点小时换乘客流量统计列表 + * + * @param lineStationTransHour 站点小时换乘客流量统计 + * @return 站点小时换乘客流量统计集合 + */ + List selectLineStationTransHourList(LineStationTransHour lineStationTransHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransMonthService.java new file mode 100644 index 00000000..5d3b9d45 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; + +import java.util.List; + +/** + * 站点月换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationTransMonthService { + /** + * 查询站点月换乘客流量统计 + * + * @param id 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + LineStationTransMonth selectLineStationTransMonthById(Long id); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param lineStationTransMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectLineStationTransMonthList(LineStationTransMonth lineStationTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IRouteMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IRouteMetricDayService.java new file mode 100644 index 00000000..b8f50074 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IRouteMetricDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; + +import java.util.List; + +/** + * 班次日客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IRouteMetricDayService { + /** + * 查询班次日客流量统计 + * + * @param id 班次日客流量统计主键 + * @return 班次日客流量统计 + */ + RouteMetricDay selectRouteMetricDayById(Long id); + + /** + * 查询班次日客流量统计列表 + * + * @param routeMetricDay 班次日客流量统计 + * @return 班次日客流量统计集合 + */ + List selectRouteMetricDayList(RouteMetricDay routeMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricDayService.java new file mode 100644 index 00000000..aef48bb5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; + +import java.util.List; + +/** + * 站点日常乘客客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqMetricDayService { + /** + * 查询站点日常乘客客流量统计 + * + * @param id 站点日常乘客客流量统计主键 + * @return 站点日常乘客客流量统计 + */ + StationFreqMetricDay selectStationFreqMetricDayById(Long id); + + /** + * 查询站点日常乘客客流量统计列表 + * + * @param stationFreqMetricDay 站点日常乘客客流量统计 + * @return 站点日常乘客客流量统计集合 + */ + List selectStationFreqMetricDayList(StationFreqMetricDay stationFreqMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricMonthService.java new file mode 100644 index 00000000..6478a8b8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; + +import java.util.List; + +/** + * 站点月换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqMetricMonthService { + /** + * 查询站点月换乘客流量统计 + * + * @param lineCode 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + StationFreqMetricMonth selectStationFreqMetricMonthByLineCode(String lineCode); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param stationFreqMetricMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectStationFreqMetricMonthList(StationFreqMetricMonth stationFreqMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransDayService.java new file mode 100644 index 00000000..f8f07f43 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqTransDayService { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransDay selectStationFreqTransDayById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransDay 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransDayList(StationFreqTransDay stationFreqTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransMonthService.java new file mode 100644 index 00000000..309f63f7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqTransMonthService { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransMonth selectStationFreqTransMonthById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransMonth 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransMonthList(StationFreqTransMonth stationFreqTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/FileServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/FileServiceImpl.java new file mode 100644 index 00000000..54a5de2a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/FileServiceImpl.java @@ -0,0 +1,178 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jcraft.jsch.ChannelSftp; +import com.jcraft.jsch.SftpException; +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.config.sftp.SftpPool; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataStatusEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import com.jiuyv.sptcc.agile.dataservice.service.ISyncRecordService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IFileService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import feign.Response; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.ContentDisposition; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StreamUtils; + +import javax.annotation.Resource; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.InputStream; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.List; +import java.util.Vector; + +/** + * 文件下载 + * + * @Date: 2023-09-14 13:34 + */ +@Service +public class FileServiceImpl implements IFileService { + + private static final Logger logger = LoggerFactory.getLogger(FileServiceImpl.class); + @Resource + private SftpPool sftpPool; + @Resource + private ISyncRecordService syncRecordService; + @Resource + private OrgConfigMapper configMapper; + + @Value("${sftp.sdk.path}") + private String sdkPath; + + /** + * 文件下载 + * + * @param request + * @return + */ + @Override + public Response downloadFile(DownLoadRequest request, HttpServletResponse response) throws IOException { + + //文件是否有下载权限 + OrgConfig cfg = new OrgConfig(); + cfg.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); + cfg.setOrgNo(request.getOrgNo()); + List list = configMapper.getValueList(cfg); + if(CollectionUtils.isEmpty(list)|| !list.contains(request.getFileType())){ + throw new BaseException(ResultCode.FILE_DOWN_NO_RIGHT); + } + // 文件是否生成 + SyncRecord syncRecord = syncRecordService.selectSyncRecordList(request.getFileType(), request.getDate()); + if (syncRecord == null || !DataStatusEnum.SUCCESS.getCode().equals(syncRecord.getDataStatus())) { + logger.warn("文件不存在"); + throw new BaseException(ResultCode.FILE_DOWN_NO_EXIST); + } + + //文件下载 + String path = syncRecord.getPath(); + String fileName = path.substring(path.lastIndexOf(Constants.SEPARATOR) + 1); + String dir = path.substring(0, path.lastIndexOf(Constants.SEPARATOR)); + logger.info("文件地址:{},文件名: {}",path,fileName); + + response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE); + byte[] buff = new byte[1024]; + try (InputStream inputStream = getByteArray(dir, fileName); + ServletOutputStream outputStream = response.getOutputStream()) { + response.setHeader("Content-Disposition", "attachment;fileName=" + fileName + ";filename*=utf-8''" + URLEncoder.encode(fileName, "utf-8")); + int len = 0; + while ((len = inputStream.read(buff)) > 0) { + outputStream.write(buff, 0, len); + } + } catch (Exception e1) { + logger.error("encode error", e1); + throw new IOException(e1.getMessage()); + } + return null; + } + + @Override + public ResponseEntity download() { + int i = sdkPath.lastIndexOf(Constants.SEPARATOR); + String fileName = sdkPath.substring(i + 1); + String dir = sdkPath.substring(0, i); + InputStream inputStream = getByteArray(dir, fileName); + + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); + headers.setContentDisposition(ContentDisposition.attachment().filename(fileName).build()); + try { + return ResponseEntity.ok().headers(headers).body(StreamUtils.copyToByteArray(inputStream)); + } catch (IOException e) { + throw new BaseException(ResultCode.FILE_DOWN_FAIL); + } + } + + public String encoderURL(String str) { + try { + return URLEncoder.encode(str, StandardCharsets.UTF_8.toString()).replace("+", "%20"); + } catch (UnsupportedEncodingException e) { + logger.error("", e); + throw new BaseException(""); + } + } + + + private InputStream getByteArray(String targetPath, String fileName) { + ChannelSftp sftpChannel = null; + try { + logger.info("文件路径{},文件名称{}",targetPath,fileName); + sftpChannel = sftpPool.borrowObject(); + sftpChannel.cd(targetPath); + return sftpChannel.get(fileName); + } catch (Exception e) { + logger.error("文件[{},{}]获取失败", targetPath,fileName, e); + throw new BaseException("文件获取失败"); + } finally { + if (sftpChannel != null) { + sftpPool.returnObject(sftpChannel); + } + } + } + + /** + * 判断是否有该目录或文件 + * + * @param channel 通道 + * @param directory 主目录 + * @param resources 需要检测的目录或文件 + * @return 存在返回true 不存在返回false + */ + @SuppressWarnings("unchecked") + private boolean isResourceExist(ChannelSftp channel, String directory, String resources) { + // 获取目录下的文件和子目录列表 + Vector entries; + try { + + entries = channel.ls(directory); + } catch (SftpException e) { + logger.error("文件服务器异常", e); + throw new BaseException("No such file"); + } + if (entries == null) { + return false; + } + for (ChannelSftp.LsEntry entry : entries) { + if (entry.getFilename().equals(resources)) { + return true; + } + } + return false; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineInfoServiceImpl.java new file mode 100644 index 00000000..26cd4c8e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineInfoServiceImpl.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineInfo; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 线路基础信息Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineInfoServiceImpl implements ILineInfoService { + @Autowired + private LineInfoMapper lineInfoMapper; + + /** + * 查询线路基础信息 + * + * @param lineName 线路基础信息主键 + * @return 线路基础信息 + */ + @Override + public LineInfo selectLineInfoByLineName(String lineName) { + return lineInfoMapper.selectLineInfoByLineName(lineName); + } + + /** + * 查询线路基础信息列表 + * + * @param lineInfo 线路基础信息 + * @return 线路基础信息 + */ + @Override + public List selectLineInfoList(LineInfo lineInfo) { + return lineInfoMapper.selectLineInfoList(lineInfo); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricDayServiceImpl.java new file mode 100644 index 00000000..e9829f30 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricDayServiceImpl.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricDayService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 线路每天客流宝量指标Service业务层处理 + * + * @author shu_k + * @date 2023-09-18 + */ +@Service +public class LineMetricDayServiceImpl implements ILineMetricDayService { + + private final LineMetricDayMapper lineMetricDayMapper; + + @Autowired + public LineMetricDayServiceImpl(LineMetricDayMapper lineMetricDayMapper) { + this.lineMetricDayMapper = lineMetricDayMapper; + } + + /** + * 查询线路每天客流宝量指标列表 + * + * @param lineMetricDay 线路每天客流宝量指标 + * @return 线路每天客流宝量指标 + */ + @Override + public List selectLineMetricDayList(LineMetricDay lineMetricDay) { + return lineMetricDayMapper.selectLineMetricDayList(lineMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricHourServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricHourServiceImpl.java new file mode 100644 index 00000000..166fab1e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricHourServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineMetricHourMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 线路小时客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineMetricHourServiceImpl implements ILineMetricHourService { + @Resource + private LineMetricHourMapper lineMetricHourMapper; + + /** + * 查询线路小时客流量统计 + * + * @param id 线路小时客流量统计主键 + * @return 线路小时客流量统计 + */ + @Override + public LineMetricHour selectlineMetricHourById(Long id) { + return lineMetricHourMapper.selectlineMetricHourById(id); + } + + /** + * 查询线路小时客流量统计列表 + * + * @param lineMetricHour 线路小时客流量统计 + * @return 线路小时客流量统计 + */ + @Override + public List selectlineMetricHourList(LineMetricHour lineMetricHour) { + return lineMetricHourMapper.selectlineMetricHourList(lineMetricHour); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricMonthServiceImpl.java new file mode 100644 index 00000000..960aa4aa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineMetricMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 线路月客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineMetricMonthServiceImpl implements ILineMetricMonthService { + @Resource + private LineMetricMonthMapper lineMetricMonthMapper; + + /** + * 查询线路月客流量统计 + * + * @param id 线路月客流量统计主键 + * @return 线路月客流量统计 + */ + @Override + public LineMetricMonth selectlineMetricMonthById(Long id) { + return lineMetricMonthMapper.selectlineMetricMonthById(id); + } + + /** + * 查询线路月客流量统计列表 + * + * @param lineMetricMonth 线路月客流量统计 + * @return 线路月客流量统计 + */ + @Override + public List selectlineMetricMonthList(LineMetricMonth lineMetricMonth) { + return lineMetricMonthMapper.selectlineMetricMonthList(lineMetricMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationInfoServiceImpl.java new file mode 100644 index 00000000..e03e15e4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationInfoServiceImpl.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationInfo; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 站点基础信息Service业务层处理 + * + * @author ruoyi + * @date 2023-09-19 + */ +@Service +public class LineStationInfoServiceImpl implements ILineStationInfoService +{ + @Autowired + private LineStationInfoMapper lineStationInfoMapper; + + /** + * 查询站点基础信息 + * + * @param lineCode 站点基础信息主键 + * @return 站点基础信息 + */ + @Override + public LineStationInfo selectLineStationInfoByLineCode(String lineCode) + { + return lineStationInfoMapper.selectLineStationInfoByLineCode(lineCode); + } + + /** + * 查询站点基础信息列表 + * + * @param lineStationInfo 站点基础信息 + * @return 站点基础信息 + */ + @Override + public List selectLineStationInfoList(LineStationInfo lineStationInfo) + { + return lineStationInfoMapper.selectLineStationInfoList(lineStationInfo); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricDayServiceImpl.java new file mode 100644 index 00000000..dd6eb8bb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationMetricDayServiceImpl implements ILineStationMetricDayService { + @Resource + private LineStationMetricDayMapper lineStationMetricDayMapper; + + /** + * 查询站点日客流量统计 + * + * @param id 站点日客流量统计主键 + * @return 站点日客流量统计 + */ + @Override + public LineStationMetricDay selectLineStationMetricDayById(Long id) { + return lineStationMetricDayMapper.selectLineStationMetricDayById(id); + } + + /** + * 查询站点日客流量统计列表 + * + * @param lineStationMetricDay 站点日客流量统计 + * @return 站点日客流量统计 + */ + @Override + public List selectLineStationMetricDayList(LineStationMetricDay lineStationMetricDay) { + return lineStationMetricDayMapper.selectLineStationMetricDayList(lineStationMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricHourServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricHourServiceImpl.java new file mode 100644 index 00000000..9b65f2ef --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricHourServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationMetricHourMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点小时客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationMetricHourServiceImpl implements ILineStationMetricHourService { + @Resource + private LineStationMetricHourMapper lineStationMetricHourMapper; + + /** + * 查询站点小时客流量统计 + * + * @param id 站点小时客流量统计主键 + * @return 站点小时客流量统计 + */ + @Override + public LineStationMetricHour selectLineStationMetricHourById(Long id) { + return lineStationMetricHourMapper.selectLineStationMetricHourById(id); + } + + /** + * 查询站点小时客流量统计列表 + * + * @param lineStationMetricHour 站点小时客流量统计 + * @return 站点小时客流量统计 + */ + @Override + public List selectLineStationMetricHourList(LineStationMetricHour lineStationMetricHour) { + return lineStationMetricHourMapper.selectLineStationMetricHourList(lineStationMetricHour); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricMonthServiceImpl.java new file mode 100644 index 00000000..11951016 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationMetricMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点月客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationMetricMonthServiceImpl implements ILineStationMetricMonthService { + @Resource + private LineStationMetricMonthMapper lineStationMetricMonthMapper; + + /** + * 查询站点月客流量统计 + * + * @param id 站点月客流量统计主键 + * @return 站点月客流量统计 + */ + @Override + public LineStationMetricMonth selectLineStationMetricMonthById(Long id) { + return lineStationMetricMonthMapper.selectLineStationMetricMonthById(id); + } + + /** + * 查询站点月客流量统计列表 + * + * @param lineStationMetricMonth 站点月客流量统计 + * @return 站点月客流量统计 + */ + @Override + public List selectLineStationMetricMonthList(LineStationMetricMonth lineStationMetricMonth) { + return lineStationMetricMonthMapper.selectLineStationMetricMonthList(lineStationMetricMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransDayServiceImpl.java new file mode 100644 index 00000000..8330b424 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationTransDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationTransDayServiceImpl implements ILineStationTransDayService { + @Resource + private LineStationTransDayMapper lineStationTransDayMapper; + + /** + * 查询站点日换乘客流量统计 + * + * @param id 站点日换乘客流量统计主键 + * @return 站点日换乘客流量统计 + */ + @Override + public LineStationTransDay selectLineStationTransDayById(Long id) { + return lineStationTransDayMapper.selectLineStationTransDayById(id); + } + + /** + * 查询站点日换乘客流量统计列表 + * + * @param lineStationTransDay 站点日换乘客流量统计 + * @return 站点日换乘客流量统计 + */ + @Override + public List selectLineStationTransDayList(LineStationTransDay lineStationTransDay) { + return lineStationTransDayMapper.selectLineStationTransDayList(lineStationTransDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransHourServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransHourServiceImpl.java new file mode 100644 index 00000000..be651446 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransHourServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationTransHourMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransHourService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点小时换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationTransHourServiceImpl implements ILineStationTransHourService { + @Resource + private LineStationTransHourMapper lineStationTransHourMapper; + + /** + * 查询站点小时换乘客流量统计 + * + * @param id 站点小时换乘客流量统计主键 + * @return 站点小时换乘客流量统计 + */ + @Override + public LineStationTransHour selectLineStationTransHourById(Long id) { + return lineStationTransHourMapper.selectLineStationTransHourById(id); + } + + /** + * 查询站点小时换乘客流量统计列表 + * + * @param lineStationTransHour 站点小时换乘客流量统计 + * @return 站点小时换乘客流量统计 + */ + @Override + public List selectLineStationTransHourList(LineStationTransHour lineStationTransHour) { + return lineStationTransHourMapper.selectLineStationTransHourList(lineStationTransHour); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransMonthServiceImpl.java new file mode 100644 index 00000000..284d0bbc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationTransMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点月换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationTransMonthServiceImpl implements ILineStationTransMonthService { + @Resource + private LineStationTransMonthMapper lineStationTransMonthMapper; + + /** + * 查询站点月换乘客流量统计 + * + * @param id 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + @Override + public LineStationTransMonth selectLineStationTransMonthById(Long id) { + return lineStationTransMonthMapper.selectLineStationTransMonthById(id); + } + + /** + * 查询站点月换乘客流量统计列表 + * + * @param lineStationTransMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计 + */ + @Override + public List selectLineStationTransMonthList(LineStationTransMonth lineStationTransMonth) { + return lineStationTransMonthMapper.selectLineStationTransMonthList(lineStationTransMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/RouteMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/RouteMetricDayServiceImpl.java new file mode 100644 index 00000000..b016eaf9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/RouteMetricDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IRouteMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 班次日客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class RouteMetricDayServiceImpl implements IRouteMetricDayService { + @Resource + private RouteMetricDayMapper routeMetricDayMapper; + + /** + * 查询班次日客流量统计 + * + * @param id 班次日客流量统计主键 + * @return 班次日客流量统计 + */ + @Override + public RouteMetricDay selectRouteMetricDayById(Long id) { + return routeMetricDayMapper.selectRouteMetricDayById(id); + } + + /** + * 查询班次日客流量统计列表 + * + * @param routeMetricDay 班次日客流量统计 + * @return 班次日客流量统计 + */ + @Override + public List selectRouteMetricDayList(RouteMetricDay routeMetricDay) { + return routeMetricDayMapper.selectRouteMetricDayList(routeMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricDayServiceImpl.java new file mode 100644 index 00000000..1c74eeb9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日常乘客客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqMetricDayServiceImpl implements IStationFreqMetricDayService { + @Resource + private StationFreqMetricDayMapper stationFreqMetricDayMapper; + + /** + * 查询站点日常乘客客流量统计 + * + * @param id 站点日常乘客客流量统计主键 + * @return 站点日常乘客客流量统计 + */ + @Override + public StationFreqMetricDay selectStationFreqMetricDayById(Long id) { + return stationFreqMetricDayMapper.selectStationFreqMetricDayById(id); + } + + /** + * 查询站点日常乘客客流量统计列表 + * + * @param stationFreqMetricDay 站点日常乘客客流量统计 + * @return 站点日常乘客客流量统计 + */ + @Override + public List selectStationFreqMetricDayList(StationFreqMetricDay stationFreqMetricDay) { + return stationFreqMetricDayMapper.selectStationFreqMetricDayList(stationFreqMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricMonthServiceImpl.java new file mode 100644 index 00000000..38a5f209 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqMetricMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点月换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqMetricMonthServiceImpl implements IStationFreqMetricMonthService { + @Resource + private StationFreqMetricMonthMapper stationFreqMetricMonthMapper; + + /** + * 查询站点月换乘客流量统计 + * + * @param lineCode 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + @Override + public StationFreqMetricMonth selectStationFreqMetricMonthByLineCode(String lineCode) { + return stationFreqMetricMonthMapper.selectStationFreqMetricMonthByLineCode(lineCode); + } + + /** + * 查询站点月换乘客流量统计列表 + * + * @param stationFreqMetricMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计 + */ + @Override + public List selectStationFreqMetricMonthList(StationFreqMetricMonth stationFreqMetricMonth) { + return stationFreqMetricMonthMapper.selectStationFreqMetricMonthList(stationFreqMetricMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransDayServiceImpl.java new file mode 100644 index 00000000..24b34e6c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqTransDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqTransDayServiceImpl implements IStationFreqTransDayService { + @Resource + private StationFreqTransDayMapper stationFreqTransDayMapper; + + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public StationFreqTransDay selectStationFreqTransDayById(Long id) { + return stationFreqTransDayMapper.selectStationFreqTransDayById(id); + } + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransDay 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public List selectStationFreqTransDayList(StationFreqTransDay stationFreqTransDay) { + return stationFreqTransDayMapper.selectStationFreqTransDayList(stationFreqTransDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransMonthServiceImpl.java new file mode 100644 index 00000000..75e82f4a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqTransMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqTransMonthServiceImpl implements IStationFreqTransMonthService { + @Resource + private StationFreqTransMonthMapper stationFreqTransMonthMapper; + + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public StationFreqTransMonth selectStationFreqTransMonthById(Long id) { + return stationFreqTransMonthMapper.selectStationFreqTransMonthById(id); + } + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransMonth 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public List selectStationFreqTransMonthList(StationFreqTransMonth stationFreqTransMonth) { + return stationFreqTransMonthMapper.selectStationFreqTransMonthList(stationFreqTransMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/ICentimeDelayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/ICentimeDelayService.java new file mode 100644 index 00000000..420dae8d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/ICentimeDelayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; + +import java.util.List; + +/** + * 延迟上送比率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface ICentimeDelayService { + /** + * 查询延迟上送比率 + * + * @param id 延迟上送比率主键 + * @return 延迟上送比率 + */ + CentimeDelay selectCentimeDelayById(Long id); + + /** + * 查询延迟上送比率列表 + * + * @param centimeDelay 延迟上送比率 + * @return 延迟上送比率集合 + */ + List selectCentimeDelayList(CentimeDelay centimeDelay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IPosMatchRateService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IPosMatchRateService.java new file mode 100644 index 00000000..70cabd44 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IPosMatchRateService.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; + +import java.util.Date; +import java.util.List; + +/** + * Pos匹配率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IPosMatchRateService { + /** + * 查询Pos匹配率 + * + * @param id Pos匹配率主键 + * @return Pos匹配率 + */ + PosMatchRate selectPosMatchRateById(Long id); + + /** + * 查询Pos匹配率列表 + * + * @param posMatchRate Pos匹配率 + * @return Pos匹配率集合 + */ + List selectPosMatchRateList(PosMatchRate posMatchRate); + + + /** + * pos匹配率异常告警 + * @param date + * @return + */ + boolean check(String date); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteDailyCountService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteDailyCountService.java new file mode 100644 index 00000000..21a9a884 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteDailyCountService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; + +import java.util.List; + +/** + * 日营运线路条数Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IRouteDailyCountService { + /** + * 查询日营运线路条数 + * + * @param id 日营运线路条数主键 + * @return 日营运线路条数 + */ + RouteDailyCount selectRouteDailyCountById(Long id); + + /** + * 查询日营运线路条数列表 + * + * @param routeDailyCount 日营运线路条数 + * @return 日营运线路条数集合 + */ + List selectRouteDailyCountList(RouteDailyCount routeDailyCount); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteMissService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteMissService.java new file mode 100644 index 00000000..e58b5b50 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteMissService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; + +import java.util.List; + +/** + * 班次缺失率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IRouteMissService { + /** + * 查询班次缺失率 + * + * @param id 班次缺失率主键 + * @return 班次缺失率 + */ + RouteMiss selectRouteMissById(Long id); + + /** + * 查询班次缺失率列表 + * + * @param routeMiss 班次缺失率 + * @return 班次缺失率集合 + */ + List selectRouteMissList(RouteMiss routeMiss); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteTurnoverTimeService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteTurnoverTimeService.java new file mode 100644 index 00000000..83a1b6be --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteTurnoverTimeService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; + +import java.util.List; + +/** + * 班次周转时间Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IRouteTurnoverTimeService { + /** + * 查询班次周转时间 + * + * @param id 班次周转时间主键 + * @return 班次周转时间 + */ + RouteTurnoverTime selectRouteTurnoverTimeById(Long id); + + /** + * 查询班次周转时间列表 + * + * @param routeTurnoverTime 班次周转时间 + * @return 班次周转时间集合 + */ + List selectRouteTurnoverTimeList(RouteTurnoverTime routeTurnoverTime); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IStationMissService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IStationMissService.java new file mode 100644 index 00000000..4a415f21 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IStationMissService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; + +import java.util.List; + +/** + * 站点缺失率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IStationMissService { + /** + * 查询站点缺失率 + * + * @param id 站点缺失率主键 + * @return 站点缺失率 + */ + StationMiss selectStationMissById(Long id); + + /** + * 查询站点缺失率列表 + * + * @param stationMiss 站点缺失率 + * @return 站点缺失率集合 + */ + List selectStationMissList(StationMiss stationMiss); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IVehicleDailyCountService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IVehicleDailyCountService.java new file mode 100644 index 00000000..14779d4e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IVehicleDailyCountService.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; + +import java.util.List; + +/** + * 日营运车辆数Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IVehicleDailyCountService { + /** + * 查询日营运车辆数 + * + * @param id 日营运车辆数主键 + * @return 日营运车辆数 + */ + VehicleDailyCount selectVehicleDailyCountById(Long id); + + /** + * 查询日营运车辆数列表 + * + * @param vehicleDailyCount 日营运车辆数 + * @return 日营运车辆数集合 + */ + List selectVehicleDailyCountList(VehicleDailyCount vehicleDailyCount); + + /** + * 根据条件统计车辆数 + * @param req + * @return + */ + Long countBus(VehicleDailyCount req); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/CentimeDelayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/CentimeDelayServiceImpl.java new file mode 100644 index 00000000..2442dd6d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/CentimeDelayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.CentimeDelayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.ICentimeDelayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 延迟上送比率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class CentimeDelayServiceImpl implements ICentimeDelayService { + @Autowired + private CentimeDelayMapper centimeDelayMapper; + + /** + * 查询延迟上送比率 + * + * @param id 延迟上送比率主键 + * @return 延迟上送比率 + */ + @Override + public CentimeDelay selectCentimeDelayById(Long id) { + return centimeDelayMapper.selectCentimeDelayById(id); + } + + /** + * 查询延迟上送比率列表 + * + * @param centimeDelay 延迟上送比率 + * @return 延迟上送比率 + */ + @Override + public List selectCentimeDelayList(CentimeDelay centimeDelay) { + return centimeDelayMapper.selectCentimeDelayList(centimeDelay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/PosMatchRateServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/PosMatchRateServiceImpl.java new file mode 100644 index 00000000..c4a73b32 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/PosMatchRateServiceImpl.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.PosMatchRateMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IPosMatchRateService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.List; + +/** + * Pos匹配率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class PosMatchRateServiceImpl implements IPosMatchRateService { + + /** + * 默认90%匹配率,如果当天的小于该值,短信告警 + */ + @Value("${agile.config.posRatePoint:0.9}") + private double posRatePoint; + @Resource + private PosMatchRateMapper posMatchRateMapper; + + /** + * 查询Pos匹配率 + * + * @param id Pos匹配率主键 + * @return Pos匹配率 + */ + @Override + public PosMatchRate selectPosMatchRateById(Long id) { + return posMatchRateMapper.selectPosMatchRateById(id); + } + + /** + * 查询Pos匹配率列表 + * + * @param posMatchRate Pos匹配率 + * @return Pos匹配率 + */ + @Override + public List selectPosMatchRateList(PosMatchRate posMatchRate) { + return posMatchRateMapper.selectPosMatchRateList(posMatchRate); + } + + + @Override + public boolean check(String date) { + BigDecimal bigDecimal = posMatchRateMapper.selectByDate(date); + if(bigDecimal ==null){ + return false; + } + return bigDecimal.doubleValue()>posRatePoint; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteDailyCountServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteDailyCountServiceImpl.java new file mode 100644 index 00000000..82780af1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteDailyCountServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteDailyCountMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 日营运线路条数Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class RouteDailyCountServiceImpl implements IRouteDailyCountService { + @Autowired + private RouteDailyCountMapper routeDailyCountMapper; + + /** + * 查询日营运线路条数 + * + * @param id 日营运线路条数主键 + * @return 日营运线路条数 + */ + @Override + public RouteDailyCount selectRouteDailyCountById(Long id) { + return routeDailyCountMapper.selectRouteDailyCountById(id); + } + + /** + * 查询日营运线路条数列表 + * + * @param routeDailyCount 日营运线路条数 + * @return 日营运线路条数 + */ + @Override + public List selectRouteDailyCountList(RouteDailyCount routeDailyCount) { + return routeDailyCountMapper.selectRouteDailyCountList(routeDailyCount); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteMissServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteMissServiceImpl.java new file mode 100644 index 00000000..c9c63d19 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteMissServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteMissMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 班次缺失率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class RouteMissServiceImpl implements IRouteMissService { + @Autowired + private RouteMissMapper routeMissMapper; + + /** + * 查询班次缺失率 + * + * @param id 班次缺失率主键 + * @return 班次缺失率 + */ + @Override + public RouteMiss selectRouteMissById(Long id) { + return routeMissMapper.selectRouteMissById(id); + } + + /** + * 查询班次缺失率列表 + * + * @param routeMiss 班次缺失率 + * @return 班次缺失率 + */ + @Override + public List selectRouteMissList(RouteMiss routeMiss) { + return routeMissMapper.selectRouteMissList(routeMiss); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteTurnoverTimeServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteTurnoverTimeServiceImpl.java new file mode 100644 index 00000000..740869a0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteTurnoverTimeServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteTurnoverTimeMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteTurnoverTimeService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 班次周转时间Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class RouteTurnoverTimeServiceImpl implements IRouteTurnoverTimeService { + @Autowired + private RouteTurnoverTimeMapper routeTurnoverTimeMapper; + + /** + * 查询班次周转时间 + * + * @param id 班次周转时间主键 + * @return 班次周转时间 + */ + @Override + public RouteTurnoverTime selectRouteTurnoverTimeById(Long id) { + return routeTurnoverTimeMapper.selectRouteTurnoverTimeById(id); + } + + /** + * 查询班次周转时间列表 + * + * @param routeTurnoverTime 班次周转时间 + * @return 班次周转时间 + */ + @Override + public List selectRouteTurnoverTimeList(RouteTurnoverTime routeTurnoverTime) { + return routeTurnoverTimeMapper.selectRouteTurnoverTimeList(routeTurnoverTime); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/StationMissServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/StationMissServiceImpl.java new file mode 100644 index 00000000..a7f1ef89 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/StationMissServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationMissMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IStationMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 站点缺失率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class StationMissServiceImpl implements IStationMissService { + @Autowired + private StationMissMapper stationMissMapper; + + /** + * 查询站点缺失率 + * + * @param id 站点缺失率主键 + * @return 站点缺失率 + */ + @Override + public StationMiss selectStationMissById(Long id) { + return stationMissMapper.selectStationMissById(id); + } + + /** + * 查询站点缺失率列表 + * + * @param stationMiss 站点缺失率 + * @return 站点缺失率 + */ + @Override + public List selectStationMissList(StationMiss stationMiss) { + return stationMissMapper.selectStationMissList(stationMiss); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/VehicleDailyCountServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/VehicleDailyCountServiceImpl.java new file mode 100644 index 00000000..ecee629c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/VehicleDailyCountServiceImpl.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.VehicleDailyCountMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IVehicleDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 日营运车辆数Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class VehicleDailyCountServiceImpl implements IVehicleDailyCountService { + @Autowired + private VehicleDailyCountMapper vehicleDailyCountMapper; + + /** + * 查询日营运车辆数 + * + * @param id 日营运车辆数主键 + * @return 日营运车辆数 + */ + @Override + public VehicleDailyCount selectVehicleDailyCountById(Long id) { + return vehicleDailyCountMapper.selectVehicleDailyCountById(id); + } + + /** + * 查询日营运车辆数列表 + * + * @param vehicleDailyCount 日营运车辆数 + * @return 日营运车辆数 + */ + @Override + public List selectVehicleDailyCountList(VehicleDailyCount vehicleDailyCount) { + return vehicleDailyCountMapper.selectVehicleDailyCountList(vehicleDailyCount); + } + + @Override + public Long countBus(VehicleDailyCount req) { + return vehicleDailyCountMapper.countBus(req); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/IOrgTask.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/IOrgTask.java new file mode 100644 index 00000000..00b2f8f8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/IOrgTask.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.service.task; + +import java.util.Date; + +public interface IOrgTask { + + /** + * 机构到期提醒 + * @param date + */ + Boolean expire(Date date); + + /** + * 机构到期下架 + * @param date + * @return Boolean + */ + Boolean down(Date date); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/impl/OrgTaskImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/impl/OrgTaskImpl.java new file mode 100644 index 00000000..e24a99bc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/impl/OrgTaskImpl.java @@ -0,0 +1,143 @@ +package com.jiuyv.sptcc.agile.dataservice.service.task.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.feign.MessageFeign; +import com.jiuyv.sptcc.agile.dataservice.service.task.IOrgTask; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptccc.agile.api.fegin.dto.publicPhoneMsgLog.ReqPublicPhoneMsgSendDTO; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +@Service +public class OrgTaskImpl implements IOrgTask { + + private static final Logger LOGGER = LoggerFactory.getLogger(OrgTaskImpl.class); + @Resource + private OrgInfoMapper orgInfoMapper; + @Resource + private MessageFeign messageFeign; + + @Value("${spring.application.name}") + private String systemName; + + /** + * 默认30,15,3天提前告警 + */ + @Value("${org.expire.interval.date:30,15,3}") + private String intervalDate; + + @Override + public Boolean expire(Date date) { + String[] split = intervalDate.split(","); + for (String interval : split) { + if (StringUtils.isNotBlank(interval)) { + // 计算到期日期符合到期提醒预期的 + int i = Integer.parseInt(interval.trim()); + Date endDate = DateUtils.addDays(date, i); + try { + expire(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,endDate), i); + } catch (Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("机构到期发送短信失败", e); + } else { + LOGGER.info("机构到期发送短信失败:{}", e.getMessage()); + } + } + } + } + return true; + } + + @Override + public Boolean down(Date date) { + List list = orgInfoMapper.afterEndDate(date); + if(CollectionUtils.isEmpty(list)){ + return true; + } + // 状态变更 + for (OrgInfoEntity orgInfoEntity : list) { + OrgInfoEntity orgInfo = new OrgInfoEntity(); + orgInfo.setOrgNo(orgInfoEntity.getOrgNo()); + orgInfo.setStatus(OrgCrypto.OrgStatus.END.getCode()); + orgInfo.setParams(ParamsUtil.idempotent(orgInfoEntity.getRecToken())); + orgInfo.setRecToken(IdUtils.getNewRecToken()); + int i = orgInfoMapper.updateOrgInfo(orgInfo); + // 乐观锁,更新失败 + if (1 != i) { + return false; + } + } + + try { + // 消息发送 + String phones = list.stream().map(x -> Sm4Util.decryptEcb(x.getContractTel())).collect(Collectors.joining(",")); + ReqPublicPhoneMsgSendDTO message = new ReqPublicPhoneMsgSendDTO(); + message.setPhoneNumber(phones); + message.setMsgTemplateCode("org_expire"); + message.setSysType(systemName); + message.setMsgMapParams(new HashMap<>()); + LOGGER.info("messageFeign request: {}", JacksonUtil.obj2String(message)); + R longR = messageFeign.sendPhoneMsg(message); + LOGGER.info("messageFeign response: {}", JacksonUtil.obj2String(longR)); + return true; + }catch (Exception e){ + if(LOGGER.isDebugEnabled()){ + LOGGER.error("短信提醒失败",e); + }else{ + LOGGER.info("短信提醒发送失败:{}",e.getMessage()); + } + } + return true; + + } + + /** + * @param date 到期时间 + * @param i 剩余天数 + */ + private void expire(String date, int i) { + List list = orgInfoMapper.selectEndDate(date); + if(CollectionUtils.isEmpty(list)){ + return ; + } + try{ + String phones = list.stream().map(x -> Sm4Util.decryptEcb(x.getContractTel())).collect(Collectors.joining(",")); + ReqPublicPhoneMsgSendDTO message = new ReqPublicPhoneMsgSendDTO(); + message.setPhoneNumber(phones); + message.setMsgTemplateCode("org_expire_reminder"); + message.setSysType(systemName); + Map param = new HashMap<>(); + param.put("expireDate", date); + param.put("days", String.valueOf(i)); + message.setMsgMapParams(param); + LOGGER.info("messageFeign request: {}", JacksonUtil.obj2String(message)); + R longR = messageFeign.sendPhoneMsg(message); + LOGGER.info("messageFeign response: {}", JacksonUtil.obj2String(longR)); + }catch (Exception e){ + if(LOGGER.isDebugEnabled()){ + LOGGER.error("短信提醒失败",e); + }else{ + LOGGER.info("短信提醒发送失败:{}",e.getMessage()); + } + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/task/AgileApiTask.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/task/AgileApiTask.java new file mode 100644 index 00000000..21fdd348 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/task/AgileApiTask.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.task; + +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +/** + * 敏捷API定时任务 + * + * @author yulei + */ +@Component +public class AgileApiTask { + + @Autowired + private AgileApiService apiService; + + /** + * 发布接口 + */ + @Scheduled(cron = "0/30 * * * * ? ") + public void releaseDataApi(){ + apiService.releaseDataApi(); + } + + /** + * 注销接口 + */ + @Scheduled(cron = "0/30 * * * * ? ") + public void cancelDataApi(){ + apiService.cancelDataApi(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/AddressUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/AddressUtil.java new file mode 100644 index 00000000..ef1a69a7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/AddressUtil.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; + +/** + * @ClassName : AdrressUtil + * @Description : 请求地址 + * @Author : sky + * @Date: 2023-09-20 18:18 + */ +public final class AddressUtil { + + private AddressUtil() { + throw new UnsupportedOperationException(); + } + + /** + * 调用接口 /services/v1.0.0/user/1 + * + * @param version + * @param path + * @return + */ + public static String getRequestPath(String version, String path) { + if (version == null) { + version = Constants.VERSION_DEFAULT; + } + String fullPath = Constants.PREFIX + Constants.SEPARATOR + + version + + Constants.SEPARATOR + + path; + return fullPath.replaceAll(Constants.SEPARATOR_DOUBLE, Constants.SEPARATOR); + } + + + /** + * 返回用户填写URL + * @param fullUrl /{prefix}/{version}/path + * @param version 站位符 + * @return path + */ + public static String getApiUrl(String fullUrl,String version){ + String noModule = fullUrl.replaceAll(Constants.PREFIX, Constants.SPACE); + String path = noModule.replaceAll(version, Constants.SPACE); + return path.replaceAll(Constants.SEPARATOR_DOUBLE, Constants.SEPARATOR); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DateUtils.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DateUtils.java new file mode 100644 index 00000000..9240d418 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DateUtils.java @@ -0,0 +1,157 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.lang.management.ManagementFactory; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * 时间工具类 + * + * @author admin + */ +public class DateUtils { + + private static final Logger LOGGER = LoggerFactory.getLogger(DateUtils.class); + + public static final String YYYY = "yyyy"; + + public static final String YYYY_MM = "yyyy-MM"; + + public static final String YYYY_MM_DD = "yyyy-MM-dd"; + + public static final String YYYYMMDD = "yyyyMMdd"; + + public static final String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; + + public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; + + public static final String HH_MM_SS = "HH:mm:ss"; + + private static final String[] parsePatterns = {YYYY_MM_DD, YYYY_MM_DD_HH_MM_SS, "yyyy-MM-dd HH:mm", YYYY_MM, YYYYMMDD, + "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", + "yyyy.MM.dd HH:mm", "yyyy.MM"}; + + /** + * 获取当前日期, 默认格式为yyyy-MM-dd + * + * @return String + */ + public static String getDate() { + return dateTimeNow(YYYY_MM_DD); + } + + public static String getTime() { + return dateTimeNow(YYYY_MM_DD_HH_MM_SS); + } + + public static String dateTimeNow() { + return dateTimeNow(YYYYMMDDHHMMSS); + } + + public static String dateTimeNow(final String format) { + return parseDateToStr(format, new Date()); + } + + public static String dateTime(final Date date) { + return parseDateToStr(YYYY_MM_DD, date); + } + + public static String parseDateToStr(final String format, final Date date) { + return new SimpleDateFormat(format).format(date); + } + + public static Date dateTime(final String format, final String ts) { + try { + return new SimpleDateFormat(format).parse(ts); + } catch (ParseException e) { + LOGGER.error("ParseException error :{}",e.getMessage()); + return null; + } + } + + public static Date dateTime(){ + Calendar calendar = Calendar.getInstance(); + int year = calendar.get(Calendar.YEAR); + int month = calendar.get(Calendar.MONTH); + int day = calendar.get(Calendar.DATE); + calendar.set(year,month,day,0,0,0); + return calendar.getTime(); + } + + + public static Date date(){ + return new Date(); + } + + /** + * 日期型字符串转化为日期 格式 + */ + public static Date parseDate(Object str) { + if (str == null) { + return null; + } + try { + return org.apache.commons.lang3.time.DateUtils.parseDate(str.toString(), parsePatterns); + } catch (ParseException e) { + LOGGER.error("ParseException error :{}",e.getMessage()); + return null; + } + } + + /** + * 日期天数加减 + * + * @param date + * @param days + * @return + */ + public static Date addDays(final Date date, int days) { + Calendar instance = Calendar.getInstance(); + instance.setTime(date); + instance.add(Calendar.DATE, days); + return instance.getTime(); + } + + /** + * 获取服务器启动时间 + */ + public static Date getServerStartDate() { + long time = ManagementFactory.getRuntimeMXBean().getStartTime(); + return new Date(time); + } + + /** + * 计算相差天数 + */ + public static int differentDaysByMillisecond(Date date1, Date date2) { + return Math.abs((int) ((date2.getTime() - date1.getTime()) / (1000 * 3600 * 24))); + } + + /** + * 计算两个时间差 + */ + public static String getDatePoor(Date endDate, Date nowDate) { + long nd = 1000 * 24 * 60 * 60L; + long nh = 1000 * 60 * 60L; + long nm = 1000 * 60L; + // long ns = 1000; + // 获得两个时间的毫秒时间差异 + long diff = endDate.getTime() - nowDate.getTime(); + // 计算差多少天 + long day = diff / nd; + // 计算差多少小时 + long hour = diff % nd / nh; + // 计算差多少分钟 + long min = diff % nd % nh / nm; + // 计算差多少秒//输出结果 + // long sec = diff % nd % nh % nm / ns; + return day + "天" + hour + "小时" + min + "分钟"; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DifferUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DifferUtil.java new file mode 100644 index 00000000..26db5004 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DifferUtil.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +public class DifferUtil { + + public static Long differ(Long except, Long actual){ + if(except == null ){ + except = 0L; + } + if(actual == null){ + actual = 0L; + } + return actual-except; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IPUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IPUtil.java new file mode 100644 index 00000000..d11c7ffd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IPUtil.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import javax.servlet.http.HttpServletRequest; +import java.net.*; +import java.util.Enumeration; + +public class IPUtil { + + public static String getLocalIP() throws SocketException { + String localIP = null; + Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces(); + InetAddress ip = null; + while (allNetInterfaces.hasMoreElements()) { + NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement(); + Enumeration addresses = netInterface.getInetAddresses(); + while (addresses.hasMoreElements()) { + ip = (InetAddress) addresses.nextElement(); + if (ip != null && ip instanceof Inet4Address) { + localIP = ip.getHostAddress(); + if (!"127.0.0.1".equalsIgnoreCase(localIP)) { + return localIP; + } + } + } + } + return localIP; + } + + /** + * 获取当前网络ip + * @param request + * @return + */ + public static String getIpAddr(HttpServletRequest request) { + String ipAddress = request.getHeader("x-forwarded-for"); + if (ipAddress == null || ipAddress.isEmpty() || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getHeader("Proxy-Client-IP"); + } + if (ipAddress == null || ipAddress.isEmpty() || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getHeader("WL-Proxy-Client-IP"); + } + if (ipAddress == null || ipAddress.isEmpty() || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getRemoteAddr(); + if (ipAddress.equals("127.0.0.1") || ipAddress.equals("0:0:0:0:0:0:0:1")) { + //根据网卡取本机配置的IP + InetAddress inet = null; + try { + inet = InetAddress.getLocalHost(); + } catch (UnknownHostException e) { + e.printStackTrace(); + } + ipAddress = inet != null ? inet.getHostAddress() : null; + } + } + //对于通过多个代理的情况,第一个IP为客户端真实IP,多个IP按照','分割 + if (ipAddress != null && ipAddress.length() > 15) { //"***.***.***.***".length() = 15 + if (ipAddress.contains(",")) { + ipAddress = ipAddress.substring(0, ipAddress.indexOf(",")); + } + } + return ipAddress; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IpWhiteCheckUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IpWhiteCheckUtil.java new file mode 100644 index 00000000..7c2b4192 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IpWhiteCheckUtil.java @@ -0,0 +1,260 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.regex.Pattern; + +/** + * + * ip 白名单校验 + */ +public final class IpWhiteCheckUtil { + // IP的正则 + private static final Pattern pattern = Pattern + .compile("(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})\\." + "(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})\\." + + "(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})\\." + "(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})"); + public static final String DEFAULT_ALLOW_ALL_FLAG = "*";// 允许所有ip标志位 + public static final String DEFAULT_DENY_ALL_FLAG = "0"; // 禁止所有ip标志位 + + /** + * + * getAvaliIpList:(根据IP白名单设置获取可用的IP列表). + * + * @date 2017-4-17 下午02:50:20 + * @param allowIp + * @return + */ + private static Set getAvaliIpList(String allowIp) { + String[] splitRex = allowIp.split(";");// 拆分出白名单正则 + Set ipList = new HashSet<>(splitRex.length); + for (String allow : splitRex) { + if (allow.contains("*")) {// 处理通配符 * + String[] ips = allow.split("\\."); + String[] from = new String[] { "0", "0", "0", "0" }; + String[] end = new String[] { "255", "255", "255", "255" }; + List tem = new ArrayList<>(); + for (int i = 0; i < ips.length; i++) + if (ips[i].contains("*")) { + tem = complete(ips[i]); + from[i] = null; + end[i] = null; + } else { + from[i] = ips[i]; + end[i] = ips[i]; + } + + StringBuilder fromIP = new StringBuilder(); + StringBuilder endIP = new StringBuilder(); + for (int i = 0; i < 4; i++) + if (from[i] != null) { + fromIP.append(from[i]).append("."); + endIP.append(end[i]).append("."); + } else { + fromIP.append("[*]."); + endIP.append("[*]."); + } + fromIP.deleteCharAt(fromIP.length() - 1); + endIP.deleteCharAt(endIP.length() - 1); + + for (String s : tem) { + String ip = fromIP.toString().replace("[*]", s.split(";")[0]) + "-" + + endIP.toString().replace("[*]", s.split(";")[1]); + if (validate(ip)) { + ipList.add(ip); + } + } + } else if (allow.contains("/")) {// 处理 网段 xxx.xxx.xxx./24 + ipList.add(allow); + } else {// 处理单个 ip 或者 范围 + if (validate(allow)) { + ipList.add(allow); + } + } + + } + + return ipList; + } + + /** + * 对单个IP节点进行范围限定 + * + * @param arg + * @return 返回限定后的IP范围,格式为List[10;19, 100;199] + */ + private static List complete(String arg) { + List com = new ArrayList<>(); + int len = arg.length(); + if (len == 1) { + com.add("0;255"); + } else if (len == 2) { + String s1 = complete(arg, 1); + if (s1 != null) + com.add(s1); + String s2 = complete(arg, 2); + if (s2 != null) + com.add(s2); + } else { + String s1 = complete(arg, 1); + if (s1 != null) + com.add(s1); + } + return com; + } + + private static String complete(String arg, int length) { + String from = ""; + String end = ""; + if (length == 1) { + from = arg.replace("*", "0"); + end = arg.replace("*", "9"); + } else { + from = arg.replace("*", "00"); + end = arg.replace("*", "99"); + } + if (Integer.valueOf(from) > 255) + return null; + if (Integer.valueOf(end) > 255) + end = "255"; + return from + ";" + end; + } + + /** + * 在添加至白名单时进行格式校验 + * + * @param ip + * @return + */ + private static boolean validate(String ip) { + String[] temp = ip.split("-"); + for (String s : temp) + if (!pattern.matcher(s).matches()) { + return false; + } + return true; + } + + /** + * + * isPermited:(根据IP,及可用Ip列表来判断ip是否包含在白名单之中). + * + * @date 2017-4-17 下午03:01:03 + * @param ip + * @param ipList + * @return + */ + private static boolean isPermited(String ip, Set ipList) { + if (ipList.isEmpty() || ipList.contains(ip)) + return true; + for (String allow : ipList) { + if (allow.contains("-")) {// 处理 类似 192.168.0.0-192.168.2.1 + String[] tempAllow = allow.split("-"); + String[] from = tempAllow[0].split("\\."); + String[] end = tempAllow[1].split("\\."); + String[] tag = ip.split("\\."); + boolean check = true; + for (int i = 0; i < 4; i++) {// 对IP从左到右进行逐段匹配 + int s = Integer.parseInt(from[i]); + int t = Integer.parseInt(tag[i]); + int e = Integer.parseInt(end[i]); + if (!(s <= t && t <= e)) { + check = false; + break; + } + } + if (check) + return true; + } else if (allow.contains("/")) {// 处理 网段 xxx.xxx.xxx./24 + int splitIndex = allow.indexOf("/"); + // 取出子网段 + String ipSegment = allow.substring(0, splitIndex); // 192.168.3.0 + // 子网数 + String netmask = allow.substring(splitIndex + 1);// 24 + // ip 转二进制 + long ipLong = ipToLong(ip); + //子网二进制 + long maskLong=(2L<<32 -1) -(2L << Integer.valueOf(32-Integer.valueOf(netmask))-1); + // ip与和子网相与 得到 网络地址 + String calcSegment = longToIP(ipLong & maskLong); + // 如果计算得出网络地址和库中网络地址相同 则合法 + if(ipSegment.equals(calcSegment))return true; + } + } + return false; + } + + /** + * + * isPermited:(根据IP地址,及IP白名单设置规则判断IP是否包含在白名单). + * + * @date 2017-4-17 下午03:01:37 + * @param ip + * @param ipWhiteConfig + * @return + */ + public static boolean isPermited(String ip, String ipWhiteConfig) { + if(null == ipWhiteConfig || ipWhiteConfig.isEmpty()){ + //没有配置白名单,默认通过 + return true; + } + if (null == ip || ip.isEmpty()) + return false; + //ip格式不对 + if(!pattern.matcher(ip).matches())return false; + if (DEFAULT_ALLOW_ALL_FLAG.equals(ipWhiteConfig)) + return true; + if (DEFAULT_DENY_ALL_FLAG.equals(ipWhiteConfig)) + return false; + Set ipList = getAvaliIpList(ipWhiteConfig); + return isPermited(ip, ipList); + } + + private static long ipToLong(String strIP) { + long[] ip = new long[4]; + // 先找到IP地址字符串中.的位置 + int position1 = strIP.indexOf("."); + int position2 = strIP.indexOf(".", position1 + 1); + int position3 = strIP.indexOf(".", position2 + 1); + // 将每个.之间的字符串转换成整型 + ip[0] = Long.parseLong(strIP.substring(0, position1)); + ip[1] = Long.parseLong(strIP.substring(position1 + 1, position2)); + ip[2] = Long.parseLong(strIP.substring(position2 + 1, position3)); + ip[3] = Long.parseLong(strIP.substring(position3 + 1)); + return (ip[0] << 24) + (ip[1] << 16) + (ip[2] << 8) + ip[3]; + } + + // 将10进制整数形式转换成127.0.0.1形式的IP地址 + private static String longToIP(long longIP) { + StringBuilder sb = new StringBuilder(""); + // 直接右移24位 + sb.append(String.valueOf(longIP >>> 24)); + sb.append("."); + // 将高8位置0,然后右移16位 + sb.append(String.valueOf((longIP & 0x00FFFFFF) >>> 16)); + sb.append("."); + sb.append(String.valueOf((longIP & 0x0000FFFF) >>> 8)); + sb.append("."); + sb.append(String.valueOf(longIP & 0x000000FF)); + return sb.toString(); + } + + public static void main(String[] args) { + + System.out.println(IpWhiteCheckUtil.isPermited("127.0.0.1","192.168.4.17")); + String ipWhilte = + "1.168.1.1;" + //设置单个IP的白名单 // + // "192.*;" //设置ip通配符,对一个ip段进行匹配 + "192.168.3.17-192.168.3.38;" //设置一个IP范围 + +"192.168.4.0/24"; //設置一个网段 + System.out.println(IpWhiteCheckUtil.isPermited("1.168.1.1",ipWhilte)); //true + System.out.println(IpWhiteCheckUtil.isPermited("192.168.1.2",ipWhilte)); //false + System.out.println(IpWhiteCheckUtil.isPermited("192.168.3.16",ipWhilte)); //false + System.out.println(IpWhiteCheckUtil.isPermited("192.168.3.37",ipWhilte)); //true + System.out.println(IpWhiteCheckUtil.isPermited("192.168.4.1",ipWhilte));//true + + + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/JacksonUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/JacksonUtil.java new file mode 100644 index 00000000..d071aff8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/JacksonUtil.java @@ -0,0 +1,236 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.*; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.StringUtils; + +import java.io.File; +import java.io.IOException; +import java.text.SimpleDateFormat; +import java.util.List; + +/** + * @ClassName : JsonUtil + * @Description : jackson工具类 + * @Author : sky + * @Date: 2023-06-07 10:55 + */ +public class JacksonUtil { + + private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper(); + + private static final ObjectMapper OBJECT_MAPPER_SNAKE_CASE = new ObjectMapper(); + // 日期格式化 + private static final String STANDARD_FORMAT = "yyyy-MM-dd HH:mm:ss"; + + private final static Logger log = LoggerFactory.getLogger(JacksonUtil.class); + + static { + //对象的所有字段全部列入 + OBJECT_MAPPER.setSerializationInclusion(JsonInclude.Include.ALWAYS); + //取消默认转换timestamps形式 + OBJECT_MAPPER.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + //忽略空Bean转json的错误 + OBJECT_MAPPER.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + //所有的日期格式都统一为以下的样式,即yyyy-MM-dd HH:mm:ss + OBJECT_MAPPER.setDateFormat(new SimpleDateFormat(STANDARD_FORMAT)); + //忽略 在json字符串中存在,但是在java对象中不存在对应属性的情况。防止错误 + OBJECT_MAPPER.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + } + + static { + //对象的所有字段全部列入 + OBJECT_MAPPER_SNAKE_CASE.setSerializationInclusion(JsonInclude.Include.ALWAYS); + //取消默认转换timestamps形式 + OBJECT_MAPPER_SNAKE_CASE.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + //忽略空Bean转json的错误 + OBJECT_MAPPER_SNAKE_CASE.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + //所有的日期格式都统一为以下的样式,即yyyy-MM-dd HH:mm:ss + OBJECT_MAPPER_SNAKE_CASE.setDateFormat(new SimpleDateFormat(STANDARD_FORMAT)); + //忽略 在json字符串中存在,但是在java对象中不存在对应属性的情况。防止错误 + OBJECT_MAPPER_SNAKE_CASE.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + //转换为下划线 + OBJECT_MAPPER_SNAKE_CASE.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); + } + + private JacksonUtil() { + } + + public static ObjectMapper getInstance(){ + return OBJECT_MAPPER; + } + + /** + * 对象转Json格式字符串 + * + * @param obj 对象 + * @return Json格式字符串 + */ + public static String obj2String(T obj) { + if (obj == null) { + return null; + } + try { + return obj instanceof String ? (String) obj : OBJECT_MAPPER.writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 对象转file + * + * @param fileName + * @param obj + */ + public static void obj2File(String fileName, Object obj) { + if (obj == null) { + return; + } + try { + OBJECT_MAPPER.writeValue(new File(fileName), obj); + } catch (IOException e) { + e.printStackTrace(); + } + } + + /** + * 对象转Json格式字符串; 属性名从驼峰改为下划线形式 + * + * @param obj 对象 + * @return Json格式字符串 + */ + public static String obj2StringFieldSnakeCase(T obj) { + if (obj == null) { + return null; + } + try { + ObjectMapper objectMapper = OBJECT_MAPPER_SNAKE_CASE; + return obj instanceof String ? (String) obj : objectMapper.writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象; 属性名从下划线形式改为驼峰 + * + * @param str 要转换的字符串 + * @param clazz 自定义对象的class对象 + * @return 自定义对象 + */ + public static T string2ObjFieldLowerCamelCase(String str, Class clazz) { + if (StringUtils.isEmpty(str) || clazz == null) { + return null; + } + try { + ObjectMapper objectMapper = OBJECT_MAPPER_SNAKE_CASE; + return clazz.equals(String.class) ? (T) str : objectMapper.readValue(str, clazz); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象(List); 属性名从下划线形式改为驼峰 + * + * @param str 要转换的字符串 + * @param typeReference 自定义对象的typeReference List 对象 + * @return 自定义对象 + */ + public static List string2ListFieldLowerCamelCase(String str, TypeReference> typeReference) { + if (StringUtils.isEmpty(str) || typeReference == null) { + return null; + } + try { + ObjectMapper objectMapper = OBJECT_MAPPER_SNAKE_CASE; + return objectMapper.readValue(str, typeReference); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return null; + } + } + + /** + * 对象转Json格式字符串(格式化的Json字符串) + * + * @param obj 对象 + * @return 美化的Json格式字符串 + */ + public static String obj2StringPretty(T obj) { + if (obj == null) { + return null; + } + try { + return obj instanceof String ? (String) obj : OBJECT_MAPPER.writerWithDefaultPrettyPrinter().writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象 + * + * @param str 要转换的字符串 + * @param clazz 自定义对象的class对象 + * @return 自定义对象 + */ + public static T string2Obj(String str, Class clazz) { + if (StringUtils.isEmpty(str) || clazz == null) { + return null; + } + try { + return clazz.equals(String.class) ? (T) str : OBJECT_MAPPER.readValue(str, clazz); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义字段转为list + * + * @param str + * @param typeReference + * @param + * @return + */ + public static T string2Obj(String str, TypeReference typeReference) { + if (StringUtils.isEmpty(str) || typeReference == null) { + return null; + } + try { + return (T) (typeReference.getType().equals(String.class) ? str : OBJECT_MAPPER.readValue(str, typeReference)); + } catch (IOException e) { + log.warn("Parse String to Object error", e.getMessage()); + return null; + } + } + + public static T string2Obj(String str, Class collectionClazz, Class... elementClazzes) { + JavaType javaType = OBJECT_MAPPER.getTypeFactory().constructParametricType(collectionClazz, elementClazzes); + try { + return OBJECT_MAPPER.readValue(str, javaType); + } catch (IOException e) { + log.warn("Parse String to Object error : {}" + e.getMessage()); + return null; + } + } + + public static String parseArray(Object[] arguments) { + try { + return OBJECT_MAPPER.writeValueAsString(arguments); + } catch (JsonProcessingException e) { + log.warn("Parse String to Object error : {}" + e.getMessage()); + return ""; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/LogPrintUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/LogPrintUtil.java new file mode 100644 index 00000000..86ffacf3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/LogPrintUtil.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.slf4j.Logger; + +/** + * @ClassName : LogUtil + * @Description : 日志打印 + * @Author : sky + * @Date: 2022-07-28 16:11 + */ +public final class LogPrintUtil { + + + private LogPrintUtil() { + throw new UnsupportedOperationException(); + } + + /** + * 错误日志打印 + * + * @param log 执行器 + * @param message 自定义错误 + * @param e 异常 + */ + public static void logError(Logger log,String message, Exception e){ + log.info(message); + if (log.isDebugEnabled()) { + log.error("异常信息",e); + }else { + log.info("异常信息:",e); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/MD5Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/MD5Util.java new file mode 100644 index 00000000..d1df0f50 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/MD5Util.java @@ -0,0 +1,110 @@ +// package com.jiuyv.sptcc.agile.dataservice.utils; +// +// import javax.crypto.Cipher; +// import javax.crypto.SecretKeyFactory; +// import javax.crypto.spec.DESKeySpec; +// import javax.crypto.spec.IvParameterSpec; +// import java.security.Key; +// import java.security.MessageDigest; +// import java.security.NoSuchAlgorithmException; +// import java.security.spec.AlgorithmParameterSpec; +// import java.util.Base64; +// +// public class MD5Util { +// +// /** 向量(同时拥有向量和密匙才能解密),此向量必须是8byte,多少都报错 */ +// private final byte[] DESIV = new byte[] { 0x22, 0x54, 0x36, 110, 0x40, (byte) 0xac, (byte) 0xad, (byte) 0xdf }; +// /** 自定义密钥,个数不能太短,太短报错,过长,它默认只取前N位(N的具体值,大家另行查找资料) */ +// private final String deSkey = "datax-cloud"; +// /** 加密算法的参数接口 */ +// private AlgorithmParameterSpec iv = null; +// private Key key = null; +// private String CHARSET = "UTF-8"; +// +// private static volatile MD5Util instance; +// +// /** +// * 构造函数 +// * @throws Exception +// */ +// private MD5Util() throws Exception { +// // 设置密钥参数 +// DESKeySpec keySpec = new DESKeySpec(deSkey.getBytes(this.CHARSET)); +// // 设置向量 +// iv = new IvParameterSpec(DESIV); +// // 获得密钥工厂 +// SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES"); +// // 得到密钥对象 +// key = keyFactory.generateSecret(keySpec); +// } +// +// public static MD5Util getInstance() throws Exception { +// if(instance == null) { +// synchronized (MD5Util.class) { +// if(instance == null) { +// instance = new MD5Util(); +// } +// } +// } +// return instance; +// } +// +// /** +// * 加密 +// * @param data +// * @return +// * @throws Exception +// */ +// public String encode(String data) throws Exception { +// // 得到加密对象Cipher +// Cipher enCipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); +// // 设置工作模式为加密模式,给出密钥和向量 +// enCipher.init(Cipher.ENCRYPT_MODE, key, iv); +// byte[] pasByte = enCipher.doFinal(data.getBytes(this.CHARSET)); +// return Base64.getEncoder().encodeToString(pasByte); +// } +// +// /** +// * 解密 +// * @param data +// * @return +// * @throws Exception +// */ +// public String decode(String data) throws Exception { +// Cipher deCipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); +// deCipher.init(Cipher.DECRYPT_MODE, key, iv); +// //此处注意doFinal()的参数的位数必须是8的倍数,否则会报错(通过encode加密的字符串读出来都是8的倍数位,但写入文件再读出来,就可能因为读取的方式的问题,导致最后此处的doFinal()的参数的位数不是8的倍数) +// //此处必须用base64Decoder,若用data。getBytes()则获取的字符串的byte数组的个数极可能不是8的倍数,而且不与上面的BASE64Encoder对应(即使解密不报错也不会得到正确结果) +// byte[] pasByte = deCipher.doFinal(Base64.getDecoder().decode(data)); +// return new String(pasByte, this.CHARSET); +// } +// +// /** +// * 获取MD5的值,可用于对比校验 +// * @param sourceStr +// * @return +// */ +// private static String getMD5Value(String sourceStr) { +// String result = ""; +// try { +// MessageDigest md = MessageDigest.getInstance("MD5"); +// md.update(sourceStr.getBytes()); +// byte b[] = md.digest(); +// int i; +// StringBuffer buf = new StringBuffer(""); +// for (int offset = 0; offset < b.length; offset++) { +// i = b[offset]; +// if (i < 0) { +// i += 256; +// } +// if (i < 16) { +// buf.append("0"); +// } +// buf.append(Integer.toHexString(i)); +// } +// result = buf.toString(); +// } catch (NoSuchAlgorithmException e) { +// } +// return result; +// } +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/NamedParameterUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/NamedParameterUtil.java new file mode 100644 index 00000000..1925046c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/NamedParameterUtil.java @@ -0,0 +1,119 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.springframework.util.Assert; + +import java.util.*; + +/** + * 带参数sql处理工具类 + */ +public class NamedParameterUtil { + + private NamedParameterUtil() {} + + /** + * 定义特殊字符(增加最后的自定义的'}') + */ + private static final char[] PARAMETER_SEPARATORS = + new char[] {'"', '\'', ':', '&', ',', ';', '(', ')', '|', '=', '+', '-', '*', '%', '/', '\\', '<', '>', '^', '}'}; + + /** + * 对带参数sql的统计式封装,便于后续肢解拼装 + * @param originalSql + * @return + */ + public static ParsedSql parseSqlStatement(String originalSql) { + Assert.notNull(originalSql, "SQL must not be null"); + ParsedSql parsedSql = new ParsedSql(originalSql); + Set namedParameters = new HashSet(); + char[] sqlchars = originalSql.toCharArray(); + int namedParamCount = 0; + int unNamedParamCount = 0; + int totalParamCount = 0; + int i = 0; + while (i < sqlchars.length) { + char statement = sqlchars[i]; + if (statement == ':') { + int j = i + 1; + while (j < sqlchars.length && !isSeparatorsChar(sqlchars[j])) { + j++; + } + if (j - i > 1) { + String paramName = originalSql.substring(i + 1, j); + if (!namedParameters.contains(paramName)) { + namedParameters.add(paramName); + namedParamCount++; + } + parsedSql.addParamNames(paramName, i, j); + totalParamCount++; + } + i = j - 1; + } else if (statement == '?') { + unNamedParamCount++; + totalParamCount++; + } + i++; + } + parsedSql.setNamedParamCount(namedParamCount); + parsedSql.setUnnamedParamCount(unNamedParamCount); + parsedSql.setTotalParamCount(totalParamCount); + return parsedSql; + } + + /** + * 获得不带参数的sql,即替换参数为? + * @param parsedSql + * @param params + * @return + */ + public static String substituteNamedParams(ParsedSql parsedSql, Map params){ + String original = parsedSql.getOriginalSql(); + StringBuffer actual = new StringBuffer(""); + int lastIndex = 0; + List paramNames = parsedSql.getParamNames(); + for (int i = 0; i < paramNames.size(); i++) { + int[] indexs = parsedSql.getParamIndexs(i); + int startIndex = indexs[0]; + int endIndex = indexs[1]; + String paramName = paramNames.get(i); + actual.append(original.substring(lastIndex, startIndex)); + actual.append("?"); + lastIndex = endIndex; + } + actual.append(original.subSequence(lastIndex, original.length())); + return actual.toString(); + } + + /** + * 获得sql所需参数K,V + * @param parsedSql + * @param params + * @return + */ + public static LinkedHashMap buildValueArray(ParsedSql parsedSql, Map params){ + List paramNames = parsedSql.getParamNames(); + LinkedHashMap acceptedFilters = new LinkedHashMap<>(parsedSql.getTotalParamCount()); + if (parsedSql.getNamedParamCount() > 0 && parsedSql.getUnnamedParamCount() > 0) { + throw new RuntimeException("parameter方式与?方式不能混合!"); + } + for (int i = 0; i < paramNames.size(); i++) { + String keyName = paramNames.get(i); + if (params.containsKey(keyName)) { + acceptedFilters.put(keyName, params.get(keyName)); + } + } + return acceptedFilters; + } + + private static boolean isSeparatorsChar(char statement){ + if (Character.isWhitespace(statement)) { + return true; + } + for (int i = 0; i < PARAMETER_SEPARATORS.length; i++) { + if (statement == PARAMETER_SEPARATORS[i]) { + return true; + } + } + return false; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/PageUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/PageUtil.java new file mode 100644 index 00000000..74b37bd9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/PageUtil.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.io.Serializable; + +public class PageUtil implements Serializable { + + private static final long serialVersionUID = 1L; + + private static final Integer DEFAULT_MAX_COUNT = 5000; + + // 当前页码 + private Integer pageNum = 1; + // 分页条数 + private Integer pageSize = 20; + + public Integer getPageNum() { + return pageNum; + } + + public void setPageNum(Integer pageNum) { + this.pageNum = pageNum; + } + + public Integer getPageSize() { + return pageSize; + } + + public void setPageSize(Integer pageSize) { + this.pageSize = pageSize; + if (this.pageSize > 0) { + this.pageSize = this.pageSize > DEFAULT_MAX_COUNT ? DEFAULT_MAX_COUNT : this.pageSize; + } else { + this.pageSize = 20; + } + } + + public PageUtil(Integer pageNum, Integer pageSize) { + this.pageNum = pageNum; + this.pageSize = pageSize; + if (this.pageSize > 0) { + this.pageSize = this.pageSize > DEFAULT_MAX_COUNT ? DEFAULT_MAX_COUNT : this.pageSize; + } else { + this.pageSize = 20; + } + } + + public Integer getOffset() { + pageSize = pageSize == null ? 20 : pageSize; + pageNum = pageNum == null ? 1 : pageNum; + int offset = pageNum > 0 ? (pageNum - 1) * pageSize : 0; + return offset; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParamsUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParamsUtil.java new file mode 100644 index 00000000..ab2127d1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParamsUtil.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import org.apache.commons.lang3.StringUtils; + +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +/** + * @ClassName : ParamsUtil + * @Description : + * @Author : sky + * @Date: 2023-09-05 18:12 + */ +public class ParamsUtil { + + public static Map idempotent( String recToken) { + return idempotent(recToken,null); + } + + public static Map idempotent( String recToken, Long versionNum) { + Map params = new HashMap<>(); + if(StringUtils.isBlank(recToken)){ + throw new BaseException("RecToken 不能为空"); + } + if (StringUtils.isNotEmpty(recToken)) { + params.put("recToken", recToken); + } + if (versionNum != null) { + params.put("versionNum", versionNum); + } + return params; + } + + public static Map range(Range range){ + Map params = new HashMap<>(); + Date beginDate = range.getBeginDate(); + Date endDate = range.getEndDate(); + params.put("beginDate", beginDate); + params.put("endDate", endDate); + return params; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParsedSql.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParsedSql.java new file mode 100644 index 00000000..1b532130 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParsedSql.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +/** + * 此类封装NamedParameterSql + */ +public class ParsedSql implements Serializable { + + private static final long serialVersionUID=1L; + + private String originalSql; + //参数名 + private List paramNames = new ArrayList<>(); + //参数在sql中对应的位置 + private List paramIndexs = new ArrayList<>(); + //统计参数个数(不包含重复) + private int namedParamCount; + //统计sql中?的个数 + private int unnamedParamCount; + + private int totalParamCount; + + public ParsedSql(String originalSql){ + this.originalSql = originalSql; + } + + public List getParamNames() { + return paramNames; + } + + public void addParamNames(String paramName,int startIndex,int endIndex) { + paramNames.add(paramName); + paramIndexs.add(new int[]{startIndex,endIndex}); + } + + public int[] getParamIndexs(int position) { + return paramIndexs.get(position); + } + + public String getOriginalSql() { + return originalSql; + } + + public int getNamedParamCount() { + return namedParamCount; + } + + public void setNamedParamCount(int namedParamCount) { + this.namedParamCount = namedParamCount; + } + + public int getUnnamedParamCount() { + return unnamedParamCount; + } + + public void setUnnamedParamCount(int unnamedParamCount) { + this.unnamedParamCount = unnamedParamCount; + } + + public int getTotalParamCount() { + return totalParamCount; + } + + public void setTotalParamCount(int totalParamCount) { + this.totalParamCount = totalParamCount; + } + + @Override + public String toString() { + return "ParsedSql{" + + "originalSql='" + originalSql + '\'' + + ", paramNames=" + paramNames + + ", paramIndexs=" + paramIndexs + + ", namedParamCount=" + namedParamCount + + ", unnamedParamCount=" + unnamedParamCount + + ", totalParamCount=" + totalParamCount + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ServletUtils.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ServletUtils.java new file mode 100644 index 00000000..3a8e82f1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ServletUtils.java @@ -0,0 +1,113 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.springframework.web.context.request.RequestAttributes; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import java.io.IOException; +import java.rmi.AccessException; + + +/** + * 客户端工具类 + * + * @author admin + */ +public final class ServletUtils { + + private ServletUtils() throws AccessException { + throw new AccessException("ServletUtils construct not access"); + } + + /** + * 获取request + */ + public static HttpServletRequest getRequest() { + ServletRequestAttributes requestAttributes = getRequestAttributes(); + if (null != requestAttributes) { + return requestAttributes.getRequest(); + } + return null; + } + + /** + * 获取response + */ + public static HttpServletResponse getResponse() { + ServletRequestAttributes requestAttributes = getRequestAttributes(); + if (null != requestAttributes) { + return requestAttributes.getResponse(); + } + return null; + } + + /** + * 获取session + */ + public static HttpSession getSession() { + HttpServletRequest request = getRequest(); + if (null != request) { + return request.getSession(); + } + return null; + } + + public static ServletRequestAttributes getRequestAttributes() { + RequestAttributes attributes = RequestContextHolder.getRequestAttributes(); + if (null != attributes) { + return (ServletRequestAttributes) attributes; + } + return null; + } + + /** + * 将字符串渲染到客户端 + * + * @param response 渲染对象 + * @param string 待渲染的字符串 + */ + public static void renderString(HttpServletResponse response, String string) { + try { + response.setStatus(200); + response.setContentType("application/json"); + response.setCharacterEncoding("utf-8"); + response.getWriter().print(string); + } catch (IOException e) { + e.printStackTrace(); + } + } + + /** + * 写入图片信息 + * + */ + public static void renderImg(HttpServletResponse response, String fileType, + String fileName, byte[] fileContent) { + response.setContentType(getContentType(fileType)); + response.setHeader("Pragma", "No-cache"); + response.setHeader("Cache-Control", "no-cache"); + try { + response.getOutputStream().write(fileContent); + } catch (IOException e) { + e.printStackTrace(); + } + } + + public static String getContentType(String fileType) { + if ("gif".equalsIgnoreCase(fileType)) { + return "image/gif"; + } else if ("jpg".equalsIgnoreCase(fileType) || "jpeg".equalsIgnoreCase(fileType)) { + return "image/jpg"; + } else if ("png".equalsIgnoreCase(fileType)) { + return "image/png"; + } else if ("bmp".equalsIgnoreCase(fileType)) { + return "image/bmp"; + } else { + return "application/octet-stream"; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/SqlBuilderUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/SqlBuilderUtil.java new file mode 100644 index 00000000..5811b5cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/SqlBuilderUtil.java @@ -0,0 +1,296 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.Assert; +import org.springframework.util.CollectionUtils; + +import java.io.Serializable; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +/** + * 用于动态构造sql语句 + * ${ segment... } 为一个条件代码块 + * + * String sql = "select * from user where 1=1 + * ${ and username = :username } + * ${ and password = :password } + * ${ and age = :age }" + * + * Map filters = new HashMap(); + * filters.put("username", "yuwei"); + * filters.put("age", "12"); + * filters.put("id", "123"); + * + * SqlFilterResult result = SqlBuilderUtil.applyFilters(sql, filters); + * + * result.getSql()结果 + * select * from user where 1=1 and username=:username and age=:age + * + * result.getAcceptedFilters()结果 + * {username=yuwei} + * {age=12} + */ +public class SqlBuilderUtil { + + private static Logger logger = LoggerFactory.getLogger(SqlBuilderUtil.class); + + private SqlBuilderUtil() {} + + private static volatile SqlBuilderUtil instance; + + public static SqlBuilderUtil getInstance() { + if(instance == null) { + synchronized (SqlBuilderUtil.class) { + if(instance == null) { + instance = new SqlBuilderUtil(); + } + } + } + return instance; + } + + /** + * 空格 + */ + private final String SPACE = " "; + /** + * 冒号占位符 + */ + private final String COLON = ":"; + /** + * 问号占位符 + */ + private final String MARK = "?"; + /** + * where关键字 + */ + private final String WHERE_SQL = "WHERE"; + /** + * AND连接符 + */ + private final String WHERE_AND = "AND"; + /** + * where 1=1条件 + */ + private final String WHERE_INIT = WHERE_SQL + " 1 = 1"; + /** + * 左括号 + */ + private final String LEFT_BRACKET = "("; + /** + * 右括号 + */ + private final String RIGHT_BRACKET = ")"; + /** + * 百分号% + */ + private final String PERCENT_SIGN = "%"; + /** + * 单引号 ' + */ + private final String SINGLE_QUOTE = "'"; + /** + * 条件代码块标记开始 + */ + public final String MARK_KEY_START = "${"; + /** + * 条件代码块标记结束 + */ + public final String MARK_KEY_END = "}"; + + /** + * 拼接命名参数sql + * @param sql + * @param params + * @return + */ + public String buildHql(String sql, List params){ + Assert.notNull(sql, "SQL must not be null"); + return buildHql(new StringBuffer(sql), params); + } + + private String buildHql(StringBuffer sql, List params){ + if(CollectionUtils.isEmpty(params)){ + return sql.toString(); + } + sql.append(SPACE).append(WHERE_INIT); + for (int i = 0; i < params.size(); i++) { + ReqParam reqParam = params.get(i); + sql.append(SPACE).append(MARK_KEY_START).append(WHERE_AND).append(SPACE).append(reqParam.getParamName()); + if (DataApiEnum.WHERE_TYPE.LIKE.getType().equals(reqParam.getWhereType())) { + // LIKE '%' :username '%' ,:username 两边一定要有空格,如果没有空格,是查询不到数据的 + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(SPACE) + .append(COLON).append(reqParam.getParamName()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.LIKE_LEFT.getType().equals(reqParam.getWhereType())) { + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(SPACE) + .append(COLON).append(reqParam.getParamName()).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.LIKE_RIGHT.getType().equals(reqParam.getWhereType())) { + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(COLON).append(reqParam.getParamName()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.NULL.getType().equals(reqParam.getWhereType()) || DataApiEnum.WHERE_TYPE.NOT_NULL.getType().equals(reqParam.getWhereType())){ + // is null或is not null不需要参数值 + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.IN.getType().equals(reqParam.getWhereType())){ + // in (:ids) + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(LEFT_BRACKET) + .append(COLON).append(reqParam.getParamName()) + .append(RIGHT_BRACKET).append(MARK_KEY_END); + } else { + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(COLON).append(reqParam.getParamName()).append(MARK_KEY_END); + } + } + return sql.toString(); + } + + /** + * 根据入参动态构造sql语句 + * @param sql + * @param filters + * @return + */ + public SqlFilterResult applyFilters(String sql, Map filters){ + Assert.notNull(sql, "SQL must not be null"); + return applyFilters(new StringBuffer(sql), filters); + } + + private SqlFilterResult applyFilters(StringBuffer sql, Map filters){ + LinkedHashMap acceptedFilters = new LinkedHashMap<>(); + for (int i = 0, end = 0, start = sql.indexOf(MARK_KEY_START); ((start = sql.indexOf(MARK_KEY_START, end)) >= 0); i++) { + end = sql.indexOf(MARK_KEY_END, start); + // 封装该条件代码块中的NamedParameterSql + ParsedSql parsedSql = getSegmentParsedSql(sql, start, end); + if (parsedSql.getParamNames() == null || parsedSql.getParamNames().size() < 1){ + throw new IllegalArgumentException("Not key found in segment=" + sql.substring(start, end + MARK_KEY_END.length())); + } + // 判断输入参数filters中是否存在查询参数 + if (isAcceptedKeys(filters, parsedSql.getParamNames())) { + // 动态构造可执行的sql语句,去掉条件代码块两边的${ }标记符 + if (logger.isDebugEnabled()) { + logger.debug("The filter namedParameters=" + parsedSql.getParamNames() + " is accepted on segment=" + sql.substring(start, end + MARK_KEY_END.length())); + } + // 下面方法2选1可以获取条件代码块 + // select id, name from user where 1 = 1 and id = :id +// String segment = sql.substring(start + MARK_KEY_START.length(), end); + String segment = parsedSql.getOriginalSql(); + // 转换命名参数:为? + // select id, name from user where 1 = 1 and id = ? +// String segment = NamedParameterUtil.substituteNamedParams(parsedSql, filters); + // 获取传参中包含命名参数的数据 + LinkedHashMap linkAcceptedFilters = NamedParameterUtil.buildValueArray(parsedSql, filters); + acceptedFilters.putAll(linkAcceptedFilters); + sql.replace(start, end + MARK_KEY_END.length(), segment); + end = start + segment.length(); + } else { + // 抛弃该条件代码块 + if (logger.isDebugEnabled()) { + logger.debug("The filter namedParameters=" + parsedSql.getParamNames() + " is removed from the query on segment=" + sql.substring(start, end + MARK_KEY_END.length())); + } + sql.replace(start, end + MARK_KEY_END.length(), ""); + end = start; + } + } + return new SqlFilterResult(sql.toString(), acceptedFilters); + } + + /** + * 验证入参,并过滤值为空的入参 + */ + private boolean isAcceptedKeys(Map filters, List keys) { + for (int i = 0; i < keys.size(); i++) { + String key = keys.get(i); + Object value = getProperty(filters, key); + if (!isValuePopulated(value, true)) { + return false; + } + } + return true; + } + + /** + * 封装该条件代码块中的NamedParameterSql + */ + private ParsedSql getSegmentParsedSql(StringBuffer sql, int start, int end) { + String segment = sql.substring(start + MARK_KEY_START.length(), end); + ParsedSql parsedSql = NamedParameterUtil.parseSqlStatement(segment); + return parsedSql; + } + + /** + * 获取参数值 + * @param filters + * @param key + * @return + */ + private Object getProperty(Map filters, String key) { + if (filters == null || filters.isEmpty()) + return null; + return filters.get(key); + } + + /** + * 验证参数值是否空 + * @param value + * @param isRemoveEmpty + * @return + */ + private boolean isValuePopulated(Object value, boolean isRemoveEmpty) { + if (value == null) { + return false; + } + if (isRemoveEmpty) { +// return ObjectUtil.isNotEmpty(value); + return value != null; + } else { + return true; + } + } + + public static class SqlFilterResult implements Serializable { + + private static final long serialVersionUID=1L; + + private String sql; + + private Map acceptedFilters; + + public SqlFilterResult(String sql, Map acceptedFilters) { + this.setSql(sql); + this.setAcceptedFilters(acceptedFilters); + } + + public String getSql() { + return sql; + } + + public void setSql(String sql) { + this.sql = sql; + } + + public Map getAcceptedFilters() { + return acceptedFilters; + } + + public void setAcceptedFilters(Map acceptedFilters) { + this.acceptedFilters = acceptedFilters; + } + + @Override + public String toString() { + return "SqlFilterResult{" + + "sql='" + sql + '\'' + + ", acceptedFilters=" + acceptedFilters + + '}'; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/StringUtilT.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/StringUtilT.java new file mode 100644 index 00000000..0a81dddd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/StringUtilT.java @@ -0,0 +1,145 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.springframework.util.AntPathMatcher; + +import java.util.Collection; +import java.util.List; +import java.util.Map; + + +/** + * 字符串工具类 + * + * @author admin + */ +public final class StringUtilT { + + private StringUtilT() { + throw new UnsupportedOperationException(); + } + + /** + * 空字符串 + */ + private static final String NULLSTR = ""; + + /** + * 下划线 + */ + private static final char SEPARATOR = '_'; + + + /** + * 去空格 + */ + public static String trim(String str) { + return (str == null ? "" : str.trim()); + } + + /** + * 截取字符串 + * + * @param str 字符串 + * @param start 开始 + * @return 结果 + */ + public static String substring(final String str, int start) { + if (str == null) { + return NULLSTR; + } + + if (start < 0) { + start = str.length() + start; + } + + if (start < 0) { + start = 0; + } + if (start > str.length()) { + return NULLSTR; + } + + return str.substring(start); + } + + /** + * 截取字符串 + * + * @param str 字符串 + * @param start 开始 + * @param end 结束 + * @return 结果 + */ + public static String substring(final String str, int start, int end) { + if (str == null) { + return NULLSTR; + } + + if (end < 0) { + end = str.length() + end; + } + if (start < 0) { + start = str.length() + start; + } + + if (end > str.length()) { + end = str.length(); + } + + if (start > end) { + return NULLSTR; + } + + if (start < 0) { + start = 0; + } + if (end < 0) { + end = 0; + } + + return str.substring(start, end); + } + + + /** + * 驼峰转下划线命名 + */ + public static String toUnderScoreCase(String str) { + if (str == null) { + return null; + } + StringBuilder sb = new StringBuilder(); + // 前置字符是否大写 + boolean preCharIsUpperCase = true; + // 当前字符是否大写 + boolean curreCharIsUpperCase = true; + // 下一字符是否大写 + boolean nexteCharIsUpperCase = true; + for (int i = 0; i < str.length(); i++) { + char c = str.charAt(i); + if (i > 0) { + preCharIsUpperCase = Character.isUpperCase(str.charAt(i - 1)); + } else { + preCharIsUpperCase = false; + } + + curreCharIsUpperCase = Character.isUpperCase(c); + + if (i < (str.length() - 1)) { + nexteCharIsUpperCase = Character.isUpperCase(str.charAt(i + 1)); + } + + if (preCharIsUpperCase && curreCharIsUpperCase && !nexteCharIsUpperCase) { + sb.append(SEPARATOR); + } + if ((i != 0 && !preCharIsUpperCase) && curreCharIsUpperCase) { + sb.append(SEPARATOR); + } + sb.append(Character.toLowerCase(c)); + } + + return sb.toString(); + } + + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ThrowableUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ThrowableUtil.java new file mode 100644 index 00000000..0409437e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ThrowableUtil.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.io.PrintWriter; +import java.io.StringWriter; + +/** + * 异常工具 + */ +public class ThrowableUtil { + + /** + * 获取堆栈信息 + * @param throwable + * @return + */ + public static String getStackTrace(Throwable throwable){ + StringWriter sw = new StringWriter(); + PrintWriter pw = new PrintWriter(sw); + try { + throwable.printStackTrace(pw); + return sw.toString(); + } finally { + pw.close(); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/MD5.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/MD5.java new file mode 100644 index 00000000..74fbddfe --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/MD5.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.data; + +import org.apache.commons.codec.digest.DigestUtils; + +import java.math.BigInteger; +import java.nio.charset.StandardCharsets; +import java.security.MessageDigest; + +/** + * Description: md5加密解密 + */ +public class MD5 { + + public static String md5(String dateString) throws Exception { + MessageDigest md5 = null; + byte[] digest = MessageDigest.getInstance("md5").digest(dateString.getBytes(StandardCharsets.UTF_8)); + String md5code = new BigInteger(1, digest).toString(16); + // 如果生成数字未满32位,需要前面补0 + for (int i = 0; i < 32 - md5code.length(); i++) { + md5code = "0" + md5code; + } + return md5code; + } + + // ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。 + //(1)0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符), + // 如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等;通信专用字 符:SOH(文头)、EOT(文尾)、ACK(确认)等; + // ASCII值为8、9、10 和13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的 应用程序,而对文本显示有不同的影响。 + // 2)32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字。 + //(3)65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。 + public static String md5PlusSalt(String keyword) { + // md5加密 + String md5 = DigestUtils.md5Hex(keyword); + // md5+盐 + return getString(md5); + + } + private static String getString(String md5) { + char[] cArray = md5.toCharArray(); + for (int i = 0; i < cArray.length; i++) { + if (cArray[i] >= 48 && cArray[i] <= 57) { + cArray[i] = (char) (105 - cArray[i]); + + } + } + // 都可以使用 + return String.valueOf(cArray); + } + + // 解密+盐 + public static String md5MinusSalt(String md5) { + return getString(md5); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/PhoneUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/PhoneUtil.java new file mode 100644 index 00000000..d70422b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/PhoneUtil.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.data; + +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.MOBILEPHONECrypto; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; + +public class PhoneUtil { + + public static String decryptEcb(String phone) { + String s = Sm4Util.decryptEcb(phone); + if (null == s) { + return null; + } + MOBILEPHONECrypto mobilephoneCrypto = new MOBILEPHONECrypto(); + return mobilephoneCrypto.encrypt(s); + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java new file mode 100644 index 00000000..58cb47a9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java @@ -0,0 +1,84 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.sm; + + + +import org.bouncycastle.crypto.digests.SM3Digest; +import org.bouncycastle.crypto.macs.HMac; +import org.bouncycastle.crypto.params.KeyParameter; +import org.bouncycastle.jce.provider.BouncyCastleProvider; +import org.bouncycastle.pqc.math.linearalgebra.ByteUtils; + +import java.io.UnsupportedEncodingException; +import java.nio.charset.StandardCharsets; +import java.security.Security; +import java.util.Arrays; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:35 + */ +public class Sm3Util { + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + /** + * 无密钥加密 + * @param text + * @return + */ + public static String encrypt(String text) throws UnsupportedEncodingException { + String resultHexStr = ""; + byte[] srcData = text.getBytes(StandardCharsets.UTF_8); + byte[] resultHash = hash(srcData); + resultHexStr = ByteUtils.toHexString(resultHash); + return resultHexStr; + } + + public static byte[] hash(byte[] srcData){ + SM3Digest digest = new SM3Digest(); + digest.update(srcData, 0, srcData.length); + byte[] hash = new byte[digest.getDigestSize()]; + digest.doFinal(hash, 0); + return hash; + } + + /** + * 有密钥加密 + * @param key + * @param srcData + * @return + */ + public static byte[] hmac(byte[] key, byte[] srcData){ + KeyParameter keyParameter = new KeyParameter(key); + SM3Digest digest = new SM3Digest(); + HMac mac = new HMac(digest); + mac.init(keyParameter); + mac.update(srcData, 0, srcData.length); + byte[] result = new byte[mac.getMacSize()]; + mac.doFinal(result, 0); + return result; + } + + /** + * 校验 + * @param srcStr + * @param sm3HexString + * @return + * @throws UnsupportedEncodingException + */ + public static boolean verify(String srcStr, String sm3HexString) throws UnsupportedEncodingException { + boolean flag; + byte[] srcData = srcStr.getBytes(StandardCharsets.UTF_8); + byte[] sm3Hash = ByteUtils.fromHexString(sm3HexString); + byte[] newHash = hash(srcData); + flag = Arrays.equals(sm3Hash, newHash); + return flag; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java new file mode 100644 index 00000000..9e6204cf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java @@ -0,0 +1,120 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.sm; + + +import org.apache.commons.codec.DecoderException; +import org.apache.commons.codec.binary.Base64; +import org.apache.commons.codec.binary.Hex; +import org.bouncycastle.jce.provider.BouncyCastleProvider; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; + +import javax.crypto.*; +import javax.crypto.spec.SecretKeySpec; +import java.nio.charset.StandardCharsets; +import java.security.*; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:04 + */ +public final class Sm4Util { + + public static final String ALGORITHM_NAME = "SM4"; + public static final String ALGORITHM_NAME_ECB_PADDING = "SM4/ECB/PKCS7Padding"; + public static final String ALGORITHM_NAME_ECB_NOPADDING = "SM4/ECB/NoPadding"; + public static final String ALGORITHM_NAME_CBC_PADDING = "SM4/CBC/PKCS7Padding"; + public static final String ALGORITHM_NAME_CBC_NOPADDING = "SM4/CBC/NoPadding"; + /** + * 数据加密密钥,不要动 + */ + public static final String SM4_KEY = "886f918cb40cb5a5014402a6c00cda74"; + /** + * SM4算法目前只支持128位(即密钥16字节) + */ + public static final int DEFAULT_KEY_SIZE = 128; + private static final Logger LOGGER = LoggerFactory.getLogger(Sm4Util.class); + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + private Sm4Util() throws IllegalAccessException { + throw new IllegalAccessException("access not allow"); + } + + public static byte[] generateKey(int keySize) throws NoSuchAlgorithmException, NoSuchProviderException { + KeyGenerator kg = KeyGenerator.getInstance(ALGORITHM_NAME, BouncyCastleProvider.PROVIDER_NAME); + kg.init(keySize, new SecureRandom()); + return kg.generateKey().getEncoded(); + } + + public static byte[] encrypt_ECB_Padding(byte[] key, byte[] data) + throws InvalidKeyException, NoSuchAlgorithmException, NoSuchProviderException, + NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.ENCRYPT_MODE, key); + return cipher.doFinal(data); + } + + public static byte[] decrypt_ECB_Padding(byte[] key, byte[] cipherText) + throws IllegalBlockSizeException, BadPaddingException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.DECRYPT_MODE, key); + return cipher.doFinal(cipherText); + } + + + private static Cipher generateECBCipher(String algorithmName, int mode, byte[] key) + throws NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException, + InvalidKeyException { + Cipher cipher = Cipher.getInstance(algorithmName, BouncyCastleProvider.PROVIDER_NAME); + Key sm4Key = new SecretKeySpec(key, ALGORITHM_NAME); + cipher.init(mode, sm4Key); + return cipher; + } + + + public static String encryptEcb(String key, String text) throws DecoderException, NoSuchPaddingException, IllegalBlockSizeException, NoSuchAlgorithmException, BadPaddingException, InvalidKeyException, NoSuchProviderException { + return Base64.encodeBase64String(Sm4Util.encrypt_ECB_Padding(Hex.decodeHex(key), text.getBytes(StandardCharsets.UTF_8))); + } + + public static String decryptEcb(String key, String text) throws DecoderException, IllegalBlockSizeException, NoSuchPaddingException, BadPaddingException, NoSuchAlgorithmException, InvalidKeyException, NoSuchProviderException { + return new String(Sm4Util.decrypt_ECB_Padding(Hex.decodeHex(key), Base64.decodeBase64((text)))); + } + + public static String generateKeyHex() throws NoSuchAlgorithmException, NoSuchProviderException { + return Hex.encodeHexString(Sm4Util.generateKey(DEFAULT_KEY_SIZE)); + } + + + public static String encryptEcb(String text) { + try { + return encryptEcb(SM4_KEY, text); + } catch (Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("sm4 encryptEcb failed", e); + } else { + LOGGER.info("sm4 encryptEcb failed: {}", e.getMessage()); + } + return text; + } + } + + public static String decryptEcb(String text) { + try { + return decryptEcb(SM4_KEY, text); + } catch (Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("sm4 encryptEcb failed", e); + } else { + LOGGER.info("sm4 encryptEcb failed: {}", e.getMessage()); + } + return text; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/IdUtils.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/IdUtils.java new file mode 100644 index 00000000..6b6531fc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/IdUtils.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.uuid; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; + +/** + * ID生成器工具类 + * + * @author admin + */ +public class IdUtils { + + public static final String ZORE = "0"; + /** + * 获取随机UUID + * + * @return 随机UUID + */ + public static String randomUUID() { + return UUID.randomUUID().toString(); + } + + /** + * 简化的UUID,去掉了横线 + * + * @return 简化的UUID,去掉了横线 + */ + public static String simpleUUID() { + return UUID.randomUUID().toString(true); + } + + /** + * 获取随机UUID,使用性能更好的ThreadLocalRandom生成UUID + * + * @return 随机UUID + */ + public static String fastUUID() { + return UUID.fastUUID().toString(); + } + + /** + * 简化的UUID,去掉了横线,使用性能更好的ThreadLocalRandom生成UUID + * + * @return 简化的UUID,去掉了横线 + */ + public static String fastSimpleUUID() { + return UUID.fastUUID().toString(true).replace(Constants.LINE,Constants.SPACE); + } + + /** + * 生成一个10位随机码recToken + * + * @return + */ + public static String getNewRecToken() { + return fastSimpleUUID().substring(0, 10); + } + + /** + * 构建规则编码 + * @param seqNo 序列值 + * @param prefix 前缀 + * @param length 希望长度 + * @return + */ + public static String buildSeq(Long seqNo, String prefix,Integer length){ + + + if(seqNo == null||prefix ==null ){ + return ""; + } + StringBuilder str = new StringBuilder(); + str.append(prefix) + .append(seqNo); + + Integer reduce = length- str.length(); + if(reduce > 0 ) { + for (Integer i = 0; i < reduce; i++) { + str.insert(prefix.length(),ZORE); + } + } + return str.toString(); + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/UUID.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/UUID.java new file mode 100644 index 00000000..77b5f627 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/UUID.java @@ -0,0 +1,437 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.uuid; + +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.util.Random; +import java.util.concurrent.ThreadLocalRandom; + +/** + * 提供通用唯一识别码(universally unique identifier)(UUID)实现 + * + * @author admin + */ +public final class UUID implements java.io.Serializable, Comparable { + private static final long serialVersionUID = -1185015143654744140L; + /** + * 此UUID的最高64有效位 + */ + private final long mostSigBits; + /** + * 此UUID的最低64有效位 + */ + private final long leastSigBits; + + /** + * 私有构造 + * + * @param data 数据 + */ + private UUID(byte[] data) { + long msb = 0; + long lsb = 0; + assert data.length == 16 : "data must be 16 bytes in length"; + for (int i = 0; i < 8; i++) { + msb = (msb << 8) | (data[i] & 0xff); + } + for (int i = 8; i < 16; i++) { + lsb = (lsb << 8) | (data[i] & 0xff); + } + this.mostSigBits = msb; + this.leastSigBits = lsb; + } + + /** + * 使用指定的数据构造新的 UUID。 + * + * @param mostSigBits 用于 {@code UUID} 的最高有效 64 位 + * @param leastSigBits 用于 {@code UUID} 的最低有效 64 位 + */ + public UUID(long mostSigBits, long leastSigBits) { + this.mostSigBits = mostSigBits; + this.leastSigBits = leastSigBits; + } + + /** + * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的本地线程伪随机数生成器生成该 UUID。 + * + * @return 随机生成的 {@code UUID} + */ + public static UUID fastUUID() { + return randomUUID(false); + } + + /** + * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的强伪随机数生成器生成该 UUID。 + * + * @return 随机生成的 {@code UUID} + */ + public static UUID randomUUID() { + return randomUUID(true); + } + + /** + * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的强伪随机数生成器生成该 UUID。 + * + * @param isSecure 是否使用{@link SecureRandom}如果是可以获得更安全的随机码,否则可以得到更好的性能 + * @return 随机生成的 {@code UUID} + */ + public static UUID randomUUID(boolean isSecure) { + final Random ng = isSecure ? Holder.numberGenerator : getRandom(); + + byte[] randomBytes = new byte[16]; + ng.nextBytes(randomBytes); + randomBytes[6] &= 0x0f; /* clear version */ + randomBytes[6] |= 0x40; /* set to version 4 */ + randomBytes[8] &= 0x3f; /* clear variant */ + randomBytes[8] |= 0x80; /* set to IETF variant */ + return new UUID(randomBytes); + } + + /** + * 根据指定的字节数组获取类型 3(基于名称的)UUID 的静态工厂。 + * + * @param name 用于构造 UUID 的字节数组。 + * @return 根据指定数组生成的 {@code UUID} + */ + public static UUID nameUUIDFromBytes(byte[] name) { + MessageDigest md; + try { + md = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException nsae) { + throw new InternalError("MD5 not supported"); + } + byte[] md5Bytes = md.digest(name); + md5Bytes[6] &= 0x0f; /* clear version */ + md5Bytes[6] |= 0x30; /* set to version 3 */ + md5Bytes[8] &= 0x3f; /* clear variant */ + md5Bytes[8] |= 0x80; /* set to IETF variant */ + return new UUID(md5Bytes); + } + + /** + * 根据 {@link #toString()} 方法中描述的字符串标准表示形式创建{@code UUID}。 + * + * @param name 指定 {@code UUID} 字符串 + * @return 具有指定值的 {@code UUID} + * @throws IllegalArgumentException 如果 name 与 {@link #toString} 中描述的字符串表示形式不符抛出此异常 + */ + public static UUID fromString(String name) { + String[] components = name.split("-"); + if (components.length != 5) { + throw new IllegalArgumentException("Invalid UUID string: " + name); + } + for (int i = 0; i < 5; i++) { + components[i] = "0x" + components[i]; + } + + long mostSigBits = Long.decode(components[0]).longValue(); + mostSigBits <<= 16; + mostSigBits |= Long.decode(components[1]).longValue(); + mostSigBits <<= 16; + mostSigBits |= Long.decode(components[2]).longValue(); + + long leastSigBits = Long.decode(components[3]).longValue(); + leastSigBits <<= 48; + leastSigBits |= Long.decode(components[4]).longValue(); + + return new UUID(mostSigBits, leastSigBits); + } + + /** + * 返回指定数字对应的hex值 + * + * @param val 值 + * @param digits 位 + * @return 值 + */ + private static String digits(long val, int digits) { + long hi = 1L << (digits * 4); + return Long.toHexString(hi | (val & (hi - 1))).substring(1); + } + + /** + * 获取{@link SecureRandom},类提供加密的强随机数生成器 (RNG) + * + * @return {@link SecureRandom} + */ + public static SecureRandom getSecureRandom() { + try { + return SecureRandom.getInstance("SHA1PRNG"); + } catch (NoSuchAlgorithmException e) { + throw new RuntimeException(""); + } + } + + /** + * 获取随机数生成器对象
+ * ThreadLocalRandom是JDK 7之后提供并发产生随机数,能够解决多个线程发生的竞争争夺。 + * + * @return {@link ThreadLocalRandom} + */ + public static ThreadLocalRandom getRandom() { + return ThreadLocalRandom.current(); + } + + /** + * 返回此 UUID 的 128 位值中的最低有效 64 位。 + * + * @return 此 UUID 的 128 位值中的最低有效 64 位。 + */ + public long getLeastSignificantBits() { + return leastSigBits; + } + + /** + * 返回此 UUID 的 128 位值中的最高有效 64 位。 + * + * @return 此 UUID 的 128 位值中最高有效 64 位。 + */ + public long getMostSignificantBits() { + return mostSigBits; + } + + /** + * 与此 {@code UUID} 相关联的版本号. 版本号描述此 {@code UUID} 是如何生成的。 + *

+ * 版本号具有以下含意: + *

    + *
  • 1 基于时间的 UUID + *
  • 2 DCE 安全 UUID + *
  • 3 基于名称的 UUID + *
  • 4 随机生成的 UUID + *
+ * + * @return 此 {@code UUID} 的版本号 + */ + public int version() { + // Version is bits masked by 0x000000000000F000 in MS long + return (int) ((mostSigBits >> 12) & 0x0f); + } + + /** + * 与此 {@code UUID} 相关联的变体号。变体号描述 {@code UUID} 的布局。 + *

+ * 变体号具有以下含意: + *

    + *
  • 0 为 NCS 向后兼容保留 + *
  • 2 IETF RFC 4122(Leach-Salz), 用于此类 + *
  • 6 保留,微软向后兼容 + *
  • 7 保留供以后定义使用 + *
+ * + * @return 此 {@code UUID} 相关联的变体号 + */ + public int variant() { + // This field is composed of a varying number of bits. + // 0 - - Reserved for NCS backward compatibility + // 1 0 - The IETF aka Leach-Salz variant (used by this class) + // 1 1 0 Reserved, Microsoft backward compatibility + // 1 1 1 Reserved for future definition. + return (int) ((leastSigBits >>> (64 - (leastSigBits >>> 62))) & (leastSigBits >> 63)); + } + + /** + * 与此 UUID 相关联的时间戳值。 + * + *

+ * 60 位的时间戳值根据此 {@code UUID} 的 time_low、time_mid 和 time_hi 字段构造。
+ * 所得到的时间戳以 100 毫微秒为单位,从 UTC(通用协调时间) 1582 年 10 月 15 日零时开始。 + * + *

+ * 时间戳值仅在在基于时间的 UUID(其 version 类型为 1)中才有意义。
+ * 如果此 {@code UUID} 不是基于时间的 UUID,则此方法抛出 UnsupportedOperationException。 + * + * @throws UnsupportedOperationException 如果此 {@code UUID} 不是 version 为 1 的 UUID。 + */ + public long timestamp() throws UnsupportedOperationException { + checkTimeBase(); + return (mostSigBits & 0x0FFFL) << 48// + | ((mostSigBits >> 16) & 0x0FFFFL) << 32// + | mostSigBits >>> 32; + } + + /** + * 与此 UUID 相关联的时钟序列值。 + * + *

+ * 14 位的时钟序列值根据此 UUID 的 clock_seq 字段构造。clock_seq 字段用于保证在基于时间的 UUID 中的时间唯一性。 + *

+ * {@code clockSequence} 值仅在基于时间的 UUID(其 version 类型为 1)中才有意义。 如果此 UUID 不是基于时间的 UUID,则此方法抛出 + * UnsupportedOperationException。 + * + * @return 此 {@code UUID} 的时钟序列 + * @throws UnsupportedOperationException 如果此 UUID 的 version 不为 1 + */ + public int clockSequence() throws UnsupportedOperationException { + checkTimeBase(); + return (int) ((leastSigBits & 0x3FFF000000000000L) >>> 48); + } + + /** + * 与此 UUID 相关的节点值。 + * + *

+ * 48 位的节点值根据此 UUID 的 node 字段构造。此字段旨在用于保存机器的 IEEE 802 地址,该地址用于生成此 UUID 以保证空间唯一性。 + *

+ * 节点值仅在基于时间的 UUID(其 version 类型为 1)中才有意义。
+ * 如果此 UUID 不是基于时间的 UUID,则此方法抛出 UnsupportedOperationException。 + * + * @return 此 {@code UUID} 的节点值 + * @throws UnsupportedOperationException 如果此 UUID 的 version 不为 1 + */ + public long node() throws UnsupportedOperationException { + checkTimeBase(); + return leastSigBits & 0x0000FFFFFFFFFFFFL; + } + + /** + * 返回此{@code UUID} 的字符串表现形式。 + * + *

+ * UUID 的字符串表示形式由此 BNF 描述: + * + *

+     * {@code
+     * UUID                   = ----
+     * time_low               = 4*
+     * time_mid               = 2*
+     * time_high_and_version  = 2*
+     * variant_and_sequence   = 2*
+     * node                   = 6*
+     * hexOctet               = 
+     * hexDigit               = [0-9a-fA-F]
+     * }
+     * 
+ * + * + * + * @return 此{@code UUID} 的字符串表现形式 + * @see #toString(boolean) + */ + @Override + public String toString() { + return toString(false); + } + + /** + * 返回此{@code UUID} 的字符串表现形式。 + * + *

+ * UUID 的字符串表示形式由此 BNF 描述: + * + *

+     * {@code
+     * UUID                   = ----
+     * time_low               = 4*
+     * time_mid               = 2*
+     * time_high_and_version  = 2*
+     * variant_and_sequence   = 2*
+     * node                   = 6*
+     * hexOctet               = 
+     * hexDigit               = [0-9a-fA-F]
+     * }
+     * 
+ * + * + * + * @param isSimple 是否简单模式,简单模式为不带'-'的UUID字符串 + * @return 此{@code UUID} 的字符串表现形式 + */ + public String toString(boolean isSimple) { + final StringBuilder builder = new StringBuilder(isSimple ? 32 : 36); + // time_low + builder.append(digits(mostSigBits >> 32, 8)); + if (!isSimple) { + builder.append('-'); + } + // time_mid + builder.append(digits(mostSigBits >> 16, 4)); + if (!isSimple) { + builder.append('-'); + } + // time_high_and_version + builder.append(digits(mostSigBits, 4)); + if (!isSimple) { + builder.append('-'); + } + // variant_and_sequence + builder.append(digits(leastSigBits >> 48, 4)); + if (!isSimple) { + builder.append('-'); + } + // node + builder.append(digits(leastSigBits, 12)); + + return builder.toString(); + } + + // Comparison Operations + + /** + * 返回此 UUID 的哈希码。 + * + * @return UUID 的哈希码值。 + */ + @Override + public int hashCode() { + long hilo = mostSigBits ^ leastSigBits; + return ((int) (hilo >> 32)) ^ (int) hilo; + } + + // ------------------------------------------------------------------------------------------------------------------- + // Private method start + + /** + * 将此对象与指定对象比较。 + *

+ * 当且仅当参数不为 {@code null}、而是一个 UUID 对象、具有与此 UUID 相同的 varriant、包含相同的值(每一位均相同)时,结果才为 {@code true}。 + * + * @param obj 要与之比较的对象 + * @return 如果对象相同,则返回 {@code true};否则返回 {@code false} + */ + @Override + public boolean equals(Object obj) { + if ((null == obj) || (obj.getClass() != UUID.class)) { + return false; + } + UUID id = (UUID) obj; + return (mostSigBits == id.mostSigBits && leastSigBits == id.leastSigBits); + } + + /** + * 将此 UUID 与指定的 UUID 比较。 + * + *

+ * 如果两个 UUID 不同,且第一个 UUID 的最高有效字段大于第二个 UUID 的对应字段,则第一个 UUID 大于第二个 UUID。 + * + * @param val 与此 UUID 比较的 UUID + * @return 在此 UUID 小于、等于或大于 val 时,分别返回 -1、0 或 1。 + */ + @Override + public int compareTo(UUID val) { + // The ordering is intentionally set up so that the UUIDs + // can simply be numerically compared as two numbers + return (this.mostSigBits < val.mostSigBits ? -1 : // + (this.mostSigBits > val.mostSigBits ? 1 : // + (this.leastSigBits < val.leastSigBits ? -1 : // + (this.leastSigBits > val.leastSigBits ? 1 : // + 0)))); + } + + /** + * 检查是否为time-based版本UUID + */ + private void checkTimeBase() { + if (version() != 1) { + throw new UnsupportedOperationException("Not a time-based UUID"); + } + } + + /** + * SecureRandom 的单例 + */ + private static class Holder { + static final SecureRandom numberGenerator = getSecureRandom(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MapMailMergeDataSource.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MapMailMergeDataSource.java new file mode 100644 index 00000000..aef2d8ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MapMailMergeDataSource.java @@ -0,0 +1,91 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.word; + +import com.aspose.words.IMailMergeDataSource; +import com.aspose.words.ref.Ref; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class MapMailMergeDataSource implements IMailMergeDataSource { + + private final List> dataList; + + private int index; + + /** + * word模板中的«TableStart:tableName»«TableEnd:tableName»对应 + */ + private String tableName = null; + + /** + * @param dataList 数据集 + * @param tableName 与模板中的Name对应 + */ + public MapMailMergeDataSource(List> dataList, String tableName) { + this.dataList = dataList; + this.tableName = tableName; + index = -1; + } + + /** + * @param data 单个数据集 + * @param tableName 与模板中的Name对应 + */ + public MapMailMergeDataSource(Map data, String tableName) { + this.dataList = new ArrayList<>(); + this.dataList.add(data); + this.tableName = tableName; + index = -1; + } + + /** + * 获取结果集总数 + * + * @return + */ + private int getCount() { + return this.dataList.size(); + } + + @Override + public IMailMergeDataSource getChildDataSource(String arg0) + throws Exception { + return null; + } + + @Override + public String getTableName() throws Exception { + return this.tableName; + } + + /** + * 实现接口 + * 获取当前index指向数据行的数据 + * 将数据存入args数组中即可 + * + * @return ***返回false则不绑定数据*** + */ + @Override + public boolean getValue(String key, Ref args) throws Exception { + if (index < 0 || index >= this.getCount()) { + return false; + } + if (args != null) { + args.set(this.dataList.get(index).get(key)); + return true; + } else { + return false; + } + } + + /** + * 实现接口 + * 判断是否还有下一条记录 + */ + @Override + public boolean moveNext() throws Exception { + index += 1; + return index < this.getCount(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MergeDataSource.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MergeDataSource.java new file mode 100644 index 00000000..71f5a5cd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MergeDataSource.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.word; + +import com.aspose.words.Document; +import com.aspose.words.MailMerge; + +import java.util.List; +import java.util.Map; + +public class MergeDataSource { + + /** + * word模板普通数据填充 + * @param name + * @param value + * @param modelPath + * @return + * @throws Exception + */ + public Document load(String[] name, Object[] value, String modelPath) throws Exception { + Document doc = new Document(modelPath); + // 这里可以做特殊字段处理(如:图片插入、字符对应的特殊符号[https://wenku.baidu.com/view/81b41244336c1eb91a375dcb.html]) +// DocumentBuilder builder = new DocumentBuilder(doc); +// builder.moveToMergeField(key); +// builder.insertImage((BufferedImage) value); + MailMerge merge = doc.getMailMerge(); + merge.execute(name, value); + return doc; + } + + + /** + * word模板里有集合的表格填充 + * @param name + * @param value + * @param modelPath + * @param dataList + * @return + * @throws Exception + */ + public Document load(String[] name, Object[] value, String modelPath, List> dataList, String tableName) throws Exception { + Document doc = new Document(modelPath); + MailMerge merge = doc.getMailMerge(); + merge.execute(name, value); + merge.executeWithRegions(new MapMailMergeDataSource(dataList, tableName)); + return doc; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/WordUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/WordUtil.java new file mode 100644 index 00000000..245a514b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/WordUtil.java @@ -0,0 +1,300 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.word; + +import com.aspose.words.Shape; +import com.aspose.words.*; +import com.jiuyv.sptcc.agile.dataservice.utils.LogPrintUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.awt.*; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.util.List; +import java.util.Map; + +public final class WordUtil { + + private static final Logger log = LoggerFactory.getLogger(WordUtil.class); + private WordUtil() {} + private static volatile WordUtil instance; + + public static WordUtil getInstance() { + if(instance == null) { + synchronized (WordUtil.class) { + if(instance == null) { + instance = new WordUtil(); + } + } + } + return instance; + } + + /** + * 去除水印 + */ + static { + String license = + "\n" + + " \n" + + " \n" + + " Aspose.Cells for Java\n" + + " Aspose.Words for Java\n" + + " Aspose.Slides for Java\n" + + " \n" + + " Enterprise\n" + + " 20991231\n" + + " 20991231\n" + + " 8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7\n" + + " \n" + + " datax\n" + + ""; + try { + new License().setLicense(new ByteArrayInputStream(license.getBytes(StandardCharsets.UTF_8))); + } catch (Exception e) { + LogPrintUtil.logError(log,"去除水印报错",e); + } + } + + /** + * 获取文档 + * + * @param fileName 模板文件 F:\模板.docx + * @return + * @throws Exception + */ + public Document getDocument(String fileName) throws Exception { + return new Document(fileName); + } + + /** + * 获取文档 + * + * @param inputStream 模板文件输入流 + * @return + * @throws Exception + */ + public Document getDocument(InputStream inputStream) throws Exception { + return new Document(inputStream); + } + + /** + * 普通数据模板 返回缓冲输入流 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @return 缓冲输入流 供controller层下载 + * @throws Exception + */ + public ByteArrayInputStream fillWordData(String[] name, Object[] value, String modelPath) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + doc.save(bos, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + return new ByteArrayInputStream(bos.toByteArray()); + } + + /** + * 普通数据模板 直接保存到指定位置 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @param destPath 保存文件 F:\测试.docx + * @throws Exception + */ + public void fillWordData(String[] name, Object[] value, String modelPath, String destPath) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath); + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } + + /** + * 带集合的数据模板 返回缓冲输入流 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @param dataList 集合数据 + * @param tableName 集合名称 + * @throws Exception + */ + public ByteArrayInputStream fillWordListData(String[] name, Object[] value, String modelPath, List> dataList, String tableName) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath, dataList, tableName); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + doc.save(bos, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + return new ByteArrayInputStream(bos.toByteArray()); + } + + /** + * 带集合的数据模板 直接保存到指定位置 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @param destPath 保存文件 F:\测试.docx + * @param dataList 集合数据 + * @param tableName 集合名称 + * @throws Exception + */ + public void fillWordListData(String[] name, Object[] value, String modelPath, String destPath, List> dataList, String tableName) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath, dataList, tableName); + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } + + /** + * word转pdf + * @param srcPath 文件路径 F:\\test\\审批流提交.docx + * @param destPath 目标路径 F:\\test\\20200420.pdf + * @throws Exception + */ + public void word2pdf(String srcPath, String destPath) throws Exception { + // 转换开始前时间 + long old = System.currentTimeMillis(); + // 要转换的word文档的路径 + Document doc = new Document(srcPath); + // 全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF, EPUB, XPS, SWF 相互转换 + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.PDF)); + // 转换结束后时间 + long now = System.currentTimeMillis(); + log.info("共耗时:{}毫秒",(now-old)); + } + + /** + * 创建空文档 + * + * @param destPath 文件路径 F:\\test\\审批流提交.docx + * @return + */ + public void createWord(String destPath) throws Exception { + Document doc = new Document(); + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } + + /** + * 加水印方法 + * + * @param doc word文件流 + * @param watermarkText 水印内容 + */ + public void insertWatermarkText(Document doc, String watermarkText) throws Exception { + Shape watermark = new Shape(doc, ShapeType.TEXT_PLAIN_TEXT); + watermark.setName("WaterMark"); + watermark.getTextPath().setText(watermarkText); + watermark.getTextPath().setFontFamily("Arial"); + watermark.setWidth(500); + watermark.setHeight(100); + watermark.setRotation(-40); + watermark.getFill().setColor(Color.GRAY); + watermark.setStrokeColor(Color.GRAY); + watermark.setRelativeHorizontalPosition(RelativeHorizontalPosition.PAGE); + watermark.setRelativeVerticalPosition(RelativeVerticalPosition.PAGE); + watermark.setWrapType(WrapType.NONE); + watermark.setVerticalAlignment(VerticalAlignment.CENTER); + watermark.setHorizontalAlignment(HorizontalAlignment.CENTER); + Paragraph watermarkPara = new Paragraph(doc); + watermarkPara.appendChild(watermark); + for (Section sect : doc.getSections()) { + insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_PRIMARY); + insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_FIRST); + insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_EVEN); + } + } + + private void insertWatermarkIntoHeader(Paragraph watermarkPara, Section sect, int headerType) { + HeaderFooter header = sect.getHeadersFooters().getByHeaderFooterType(headerType); + if (header == null) { + header = new HeaderFooter(sect.getDocument(), headerType); + sect.getHeadersFooters().add(header); + } + header.appendChild(watermarkPara.deepClone(true)); + } + + public static void main(String[] args) throws Exception { + /** + * private static volatile WordUtil instance; + * + * public static WordUtil getInstance() { + * if(instance == null) { + * synchronized (WordUtil.class) { + * if(instance == null) { + * instance = new WordUtil(); + * } + * } + * } + * return instance; + * } + */ +// Map map = new HashMap<>(); +// map.put("companyName", "测试"); +// map.put("totalSalary", new BigDecimal("12.34")); +// List> list = new ArrayList<>(); +// Map map1 = new HashMap<>(); +// map1.put("id", "1"); +// map1.put("name", "测试1"); +// map1.put("age", 12); +// map1.put("sex", "男"); +// map1.put("salary", new BigDecimal("5.0")); +// list.add(map1); +// Map map2 = new HashMap<>(); +// map2.put("id", "2"); +// map2.put("name", "测试2"); +// map2.put("age", 14); +// map2.put("sex", "女"); +// map2.put("salary", new BigDecimal("7.34")); +// list.add(map2); +// List objects1 = new ArrayList<>(); +// List objects2 = new ArrayList<>(); +// for(Map.Entry entry : map.entrySet()){ +// objects1.add(entry.getKey()); +// objects2.add(entry.getValue()); +// } +// WordUtil.getInstance().fillWordListData(objects1.toArray(new String[objects1.size()]), objects2.toArray(new Object[objects2.size()]), "F:\\test\\模板.docx", "F:\\test\\123.docx", list, "workerList"); +// WordUtil.getInstance().word2pdf("F:\\test.docx", "F:\\20200420.pdf"); +// +// // 用户表(子表) TableStart:UserList TableEnd:UserList +// DataTable userTable = new DataTable("UserList"); +// userTable.getColumns().add("id"); +// userTable.getColumns().add("name"); +// userTable.getColumns().add("age"); +// userTable.getColumns().add("sex"); +// userTable.getColumns().add("salary"); +// for (int i = 1; i < 3; i++) { +// DataRow row = userTable.newRow(); +// row.set(0, i); +// row.set(1, "name" + i); +// row.set(2, "age" + i); +// row.set(3, "sex" + i); +// row.set(4, "salary" + i); +// userTable.getRows().add(row); +// } +// // 分数表(子表) TableStart:ScoreList TableEnd:ScoreList +// DataTable scoreTable = new DataTable("ScoreList"); +// scoreTable.getColumns().add("id"); +// scoreTable.getColumns().add("uid"); +// scoreTable.getColumns().add("score"); +// for (int i = 1; i < 3; i++) { +// DataRow row = scoreTable.newRow(); +// row.set(0, i); +// row.set(1, i); +// row.set(2, 10*i); +// scoreTable.getRows().add(row); +// } +// // 提供数据源 +// DataSet dataSet = new DataSet(); +// dataSet.getTables().add(userTable); +// dataSet.getTables().add(scoreTable); +// DataRelation dataRelation = new DataRelation("UserScoreRelation", userTable.getColumns().get("id"), scoreTable.getColumns().get("uid")); +// dataSet.getRelations().add(dataRelation); +// // 合并模版 +// Document doc = new Document("F:\\test.docx"); +// //提供数据源 +// String[] fieldNames = new String[] {"name", "address"}; +// Object[] fieldValues = new Object[] {"张三", "陕西咸阳"}; +// //合并模版,相当于页面的渲染 +// MailMerge mailMerge = doc.getMailMerge(); +// mailMerge.execute(fieldNames, fieldValues); +// mailMerge.executeWithRegions(dataSet); +// doc.save("F:\\test_r.docx", SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/application-default.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/application-default.yml new file mode 100644 index 00000000..6fdc0e25 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/application-default.yml @@ -0,0 +1,57 @@ +server: + port: 18090 +spring: + # 服务模块 + devtools: + restart: + # 热部署开关 + enabled: true + datasource: + driver-class-name: org.postgresql.Driver + url: jdbc:postgresql://172.16.12.105:5432/keliubao?useUnicode=true&characterEncoding=utf8&useSSL=false + username: postgres + password: postgres + + mvc: + pathmatch: + matching-strategy: ANT_PATH_MATCHER + + +api: + test: + # 测试次数 + num: 10 + # 毫秒, + avgTime: 3000 + # api接口文档模板 + +agile: + config: + # 默认90%匹配率,如果当天的小于该值,短信告警 + posRatePoint: 0.9 + +org: + expire: + interval: + ## 机构告警时间,‘,’号分隔 + date: 30,15,3 + +sftp: + host: 172.16.12.108 + port: 22 + username: flink + password: flink123 + work-paths: /sftp + session-connect-timeout: 2000 + channel-connect-timeout: 1000 + strict-host-key-checking: no + pool: + max-idle: 8 + min-idle: 0 + max-wait-millis: 10000 + max-total: 10 + sdk: + path: /sftp/sdk/sss.jar +logging: + level: + root: debug diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/application-prd.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/application-prd.yml new file mode 100644 index 00000000..07d07eda --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/application-prd.yml @@ -0,0 +1,55 @@ +server: + port: 18090 +spring: + # 服务模块 + devtools: + restart: + # 热部署开关 + enabled: true + datasource: + driver-class-name: org.postgresql.Driver + url: jdbc:postgresql://10.10.241.226:5432/keliubao?useUnicode=true&characterEncoding=utf8&useSSL=false + username: keliubao + password: keliubao + hikari: + minimum-idle: 5 # 最小空闲连接数量 + idle-timeout: 180000 # 空闲连接存活最大时间,默认600000(10分钟) + maximum-pool-size: 10 # 连接池最大连接数,默认是10 + connection-timeout: 30000 # 数据库连接超时时间,默认30秒,即30000 + max-lifetime: 1800000 # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟 + + +api: + test: + num: 10 + # 毫秒, + avgTime: 3000 + +agile: + config: + # 默认90%匹配率,如果当天的小于该值,短信告警 + posRatePoint: 0.9 + +org: + expire: + interval: + ## 机构告警时间,‘,’号分隔 + date: 30,15,3 + + +sftp: + host: 10.10.241.209 + port: 22 + username: sptcc + password: sptcc123 + work-paths: /home + session-connect-timeout: 2000 + channel-connect-timeout: 1000 + strict-host-key-checking: no + pool: + max-idle: 8 + min-idle: 0 + max-wait-millis: 10000 + max-total: 10 + sdk: + path: /home/sptcc/sysfile/console-2023-07/de70f251cecc44789978edf80aa0c5aa.jar \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/application.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/application.yml new file mode 100644 index 00000000..c20b70ec --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/application.yml @@ -0,0 +1,13 @@ +mybatis: + typeAliasesPackage: com.jiuyv.sptcc.agile.dataservice.dao.entity.** + mapperLocations: classpath*:mapper/**/*.xml + configLocation: classpath:mybatis/mybatis-config.xml + +pagehelper: + helper-dialect: postgresql + reasonable: true + support-methods-arguments: true + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/bootstrap.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/bootstrap.yml new file mode 100644 index 00000000..b1033469 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/bootstrap.yml @@ -0,0 +1,31 @@ +spring: + application: + name: agile-data-service + cloud: + config: + discovery: + service-id: CONFIG-SERVICE #告诉当前客户端 统一配置中心的服务端服务id + enabled: true #开启客户端,根据服务id到注册中心获取配置信息 + label: # 指定分支 + name: ${spring.application.name} # 指定应用名称 + profile: dev # 指定激活环境 + devtools: + restart: + enabled: true +# 配置eureka客户端信息 +eureka: + instance: + appname: ${spring.application.name} + lease-expiration-duration-in-seconds: 90 + lease-renewal-interval-in-seconds: 10 + prefer-ip-address: true + instance-id: ${spring.cloud.client.ip-address}:${server.port} + metadata-map: + user.name: ${spring.security.user.name} + user.password: ${spring.security.user.password} + client: + enabled: true + register-with-eureka: true + fetch-registry: true + service-url: + defaultZone: http://172.16.12.109:8761/eureka/ diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/logback-boot.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/logback-boot.xml new file mode 100644 index 00000000..6f78d025 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/logback-boot.xml @@ -0,0 +1,96 @@ + + + + + + + + + + System.out + + %d{HH:mm:ss.SSS} %X{spanId:-} %X{traceId:-} [%thread] %-5level %logger{36} - %msg%n + UTF-8 + + + + + ${LOG_HOME}/${APP_NAME}.log + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log.zip + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %X{traceId:-} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %X{traceId:-} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + 日志文件输出的文件名 + ${JSON_LOG_HOME}/${APP_NAME}.json.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + + + + { + "timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}", + "severity": "%level", + "service": "${APP_NAME:-}", + "trace": "%X{traceId:-}", + "span": "%X{spanId:-}", + "parent": "%X{X-B3-ParentSpanId:-}", + "exportable": "%X{X-Span-Export:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + + System.err + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/api/ApiLogMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/api/ApiLogMapper.xml new file mode 100644 index 00000000..a3dba855 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/api/ApiLogMapper.xml @@ -0,0 +1,146 @@ + + + + + + + + + + + + + + + + + + + + + + + api_log_id + , + status, + api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg + + + + ${alias} + . + api_log_id + , + ${alias} + . + status, + ${alias} + . + api_id, + ${alias} + . + caller_id, + ${alias} + . + caller_ip, + ${alias} + . + caller_url, + ${alias} + . + caller_params, + ${alias} + . + caller_date, + ${alias} + . + caller_size, + ${alias} + . + time, + ${alias} + . + msg + + + + insert into tbl_data_api_log + + api_log_id, + api_id, + caller_id, + caller_ip, + caller_url, + caller_params, + caller_date, + caller_size, + time, + status, + msg, + + + #{id}, + #{apiId}, + #{callerId}, + #{callerIp}, + #{callerUrl}, + #{callerParams}, + #{callerDate}, + #{callerSize}, + #{time}, + #{status}, + #{msg}, + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/api/ApiMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/api/ApiMapper.xml new file mode 100644 index 00000000..4266763f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/api/ApiMapper.xml @@ -0,0 +1,268 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + api_id + , + status, + create_by, + create_time, + create_dept, + update_by, + update_time, + api_name, api_version, api_url, remark, req_method, res_type, deny, + limit_json, config_json, req_json, res_json, + version_num, rec_token,api_code,api_type,source_id + + + + + + + + + insert into tbl_data_api + + api_id, + api_name, + api_version, + api_url, + req_method, + res_type, + deny, + limit_json, + config_json, + req_json, + res_json, + create_dept, + create_by, + status, + remark, + api_code, + api_type, + source_id, + rec_token, + create_time, + update_time + + + #{apiId}, + #{apiName}, + #{apiVersion}, + #{apiUrl}, + #{reqMethod}, + #{resType}, + #{deny}, + #{rateLimit}, + #{executeConfig}, + #{reqParams}, + #{resParams}, + #{createDept}, + #{createBy}, + #{status}, + #{remark}, + #{apiCode}, + #{apiType}, + #{sourceId}, + #{recToken}, + now(), + now() + + + + + update tbl_data_api + + version_num = version_num+1, + rec_token = #{recToken}, + api_name = #{apiName}, + api_version = #{apiVersion}, + api_url = #{apiUrl}, + req_method = #{reqMethod}, + res_type = #{resType}, + deny = #{deny}, + limit_json = #{rateLimit}, + config_json = #{executeConfig}, + req_json = #{reqParams}, + res_json = #{resParams}, + create_dept = #{createDept}, + update_by = #{updateBy}, + status = #{status}, + remark = #{remark}, + api_code = #{apiCode}, + api_type = #{apiType}, + source_id = #{sourceId}, + update_time = now() + + where api_id = #{apiId} + AND rec_token = #{params.recToken} + + + + update tbl_data_api + set version_num = version_num+1, + del_flag = '1', + update_by = #{updateBy}, + update_time = now(), + rec_token = #{recToken} + where api_id = #{apiId} + AND del_flag = '0' + AND rec_token = #{params.recToken} + + + + api_id,status, create_by,create_time,create_dept,update_by,update_time, + api_name, api_version, api_url, remark, req_method, res_type, deny, limit_json, config_json, req_json, res_json, + version_num, rec_token,api_type,api_code,source_id + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/api/MetadataSourceMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/api/MetadataSourceMapper.xml new file mode 100644 index 00000000..262a7763 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/api/MetadataSourceMapper.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + source_id, + status, + create_by, + create_time, + create_dept, + update_by, + update_time, + remark, + db_type, source_name, is_sync,db_schema, + version_num, rec_token + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/base/SysBaseMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/base/SysBaseMapper.xml new file mode 100644 index 00000000..76733304 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/base/SysBaseMapper.xml @@ -0,0 +1,11 @@ + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgApiAuthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgApiAuthMapper.xml new file mode 100644 index 00000000..adb8c50e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgApiAuthMapper.xml @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + insert into tbl_org_api_auth(org_no, api_id) + values (#{orgNo}, #{apiId}) + + + + insert into tbl_org_api_auth(org_no, api_id) + values + + (#{entity.orgNo}, #{entity.apiId}) + + + + + insert into tbl_org_api_auth(org_no, api_id) + values + + (#{entity.orgNo}, #{entity.apiId}) + + on duplicate key update + org_no = values(org_no), + api_id = values(api_id) + + + + + + delete from tbl_org_api_auth + where org_no = #{value} + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgConfigMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgConfigMapper.xml new file mode 100644 index 00000000..f6ccfe4d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgConfigMapper.xml @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + config_id,org_no,config_key,config_desc,config_value,version_num,rec_token,create_by,create_time, + update_by,update_time,del_flag,status + + + + insert into tbl_org_config + + config_id, + org_no, + config_key, + config_desc, + config_value, + del_flag, + create_by, + status, + create_time, + update_time + + + #{configId}, + #{orgNo}, + #{configKey}, + #{configDesc}, + #{configValue}, + #{delFlag}, + #{createBy}, + #{status}, + now(), + now() + + + + + update tbl_org_config + + version_num = version_num+1, + rec_token = #{recToken}, + org_no = #{orgNo}, + config_key = #{configKey}, + config_desc = #{configDesc}, + config_value = #{configValue}, + del_flag = #{delFlag}, + create_by = #{createBy}, + status = #{status}, + update_by = #{updateBy}, + update_time = now() + + where config_id = #{configId} + AND rec_token = #{params.recToken} + + + + update tbl_org_config set del_flag = '1' where config_id = #{configId} + + + + delete from tbl_org_config where org_no =#{orgNo} and config_key = #{configKey} + + + + delete from tbl_org_config where org_no =#{orgNo} + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgGatewayLogMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgGatewayLogMapper.xml new file mode 100644 index 00000000..7154314a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgGatewayLogMapper.xml @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + select log_id, req_no, api_id, api_name, api_code, status, req_time, req_ip, req_json, res_json, consuming_time, create_by_name, create_time, update_by_name, update_time, version_num, rec_token from tbl_org_gateway_log + + + + + + + + insert into tbl_org_gateway_log + + log_id, + req_no, + api_id, + api_name, + api_code, + status, + req_time, + req_ip, + req_json, + res_json, + consuming_time, + create_by_name, + create_time, + update_by_name, + update_time, + version_num, + rec_token, + + + #{logId}, + #{reqNo}, + #{apiId}, + #{apiName}, + #{apiCode}, + #{status}, + #{reqTime}, + #{reqIp}, + #{reqJson}, + #{resJson}, + #{consumingTime}, + #{createByName}, + #{createTime}, + #{updateByName}, + #{updateTime}, + #{versionNum}, + #{recToken}, + + + + + update tbl_org_gateway_log + + req_no = #{reqNo}, + api_id = #{apiId}, + api_name = #{apiName}, + api_code = #{apiCode}, + status = #{status}, + req_time = #{reqTime}, + req_ip = #{reqIp}, + req_json = #{reqJson}, + res_json = #{resJson}, + consuming_time = #{consumingTime}, + create_by_name = #{createByName}, + create_time = #{createTime}, + update_by_name = #{updateByName}, + update_time = #{updateTime}, + version_num = #{versionNum}, + rec_token = #{recToken}, + + where log_id = #{logId} + + + + delete from tbl_org_gateway_log where log_id = #{logId} + + + + delete from tbl_org_gateway_log where log_id in + + #{logId} + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgInfoMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgInfoMapper.xml new file mode 100644 index 00000000..c452f5ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgInfoMapper.xml @@ -0,0 +1,157 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag,ip,contract_tel,data_begin,data_end,member_id from tbl_org_info + + + + + + + + + + + + + + insert into tbl_org_info + + org_no, + org_name, + org_type, + org_desc, + salt, + encrypt, + start_time, + end_time, + status, + create_by, + del_flag, + ip, + member_id, + create_by_name, + rec_token, + contract_tel, + update_by_name, + create_time, + + + #{orgNo}, + #{orgName}, + #{orgType}, + #{orgDesc}, + #{salt}, + #{encrypt}, + #{startTime}, + #{endTime}, + #{status}, + #{createBy}, + #{delFlag}, + #{ip}, + #{memberId}, + #{updateByName}, + #{recToken}, + #{contractTel}, + #{createByName}, + now(), + + + + + update tbl_org_info + + version_num = version_num+1, + rec_token = #{recToken}, + org_name = #{orgName}, + org_type = #{orgType}, + org_desc = #{orgDesc}, + salt = #{salt}, + encrypt = #{encrypt}, + start_time = #{startTime}, + end_time = #{endTime}, + status = #{status}, + update_by = #{updateBy}, + update_by_name = #{updateByName}, + del_flag = #{delFlag}, + ip = #{ip}, + member_id = #{memberId}, + contract_tel = #{contractTel}, + update_time = now(), + + where org_no = #{orgNo} + AND rec_token = #{params.recToken} + + + + update tbl_org_info + set version_num = version_num+1, + del_flag = '1', + update_by = #{updateBy}, + update_by_name = #{updateByName}, + rec_token = #{recToken}, + update_time = now() + where org_no = #{orgNo} + AND del_flag ='0' + AND rec_token = #{params.recToken} + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgStatisticsMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgStatisticsMapper.xml new file mode 100644 index 00000000..cf72cca0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/org/OrgStatisticsMapper.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + + + + + + select id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag from tbl_org_statistics + + + + update tbl_org_statistics + set success_total = success_total+#{successTotal,jdbcType=INTEGER}, + fail_total = fail_total+#{failTotal,jdbcType=INTEGER}, + version_num =version_num+1 + where id = #{id} + + + + + + + + insert into tbl_org_statistics + + id, + org_no, + org_name, + api_id, + success_total, + fail_total, + api_name, + create_by, + del_flag, + create_time, + update_time + + + #{id}, + #{orgNo}, + #{orgName}, + #{apiId}, + #{successTotal}, + #{failTotal}, + #{apiName}, + #{createBy}, + #{delFlag}, + now(), + now() + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineInfoMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineInfoMapper.xml new file mode 100644 index 00000000..07eed233 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineInfoMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + select line_name, line_code, line_no from tbl_prd_base_line + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineMetricDayMapper.xml new file mode 100644 index 00000000..fae2dd11 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineMetricDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineMetricHourMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineMetricHourMapper.xml new file mode 100644 index 00000000..596e3099 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineMetricHourMapper.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + select line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_metric_hour + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineMetricMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineMetricMonthMapper.xml new file mode 100644 index 00000000..139c3898 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineMetricMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id from tbl_prd_line_metric_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationInfoMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationInfoMapper.xml new file mode 100644 index 00000000..b96dc191 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationInfoMapper.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + select line_code, line_name, up, levels, level_name, line_no from tbl_prd_base_line_station + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationMetricDayMapper.xml new file mode 100644 index 00000000..dd55c1fd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationMetricDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_station_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationMetricHourMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationMetricHourMapper.xml new file mode 100644 index 00000000..73918149 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationMetricHourMapper.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_station_metric_hour + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationMetricMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationMetricMonthMapper.xml new file mode 100644 index 00000000..ce962b05 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationMetricMonthMapper.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id from tbl_prd_line_station_metric_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationTransDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationTransDayMapper.xml new file mode 100644 index 00000000..a336a631 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationTransDayMapper.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_line_station_trans_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationTransHourMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationTransHourMapper.xml new file mode 100644 index 00000000..37a3d8f5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationTransHourMapper.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_line_station_trans_hour + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationTransMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationTransMonthMapper.xml new file mode 100644 index 00000000..be59c5bf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/LineStationTransMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id from tbl_prd_line_station_trans_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/RouteMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/RouteMetricDayMapper.xml new file mode 100644 index 00000000..b9003ed9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/RouteMetricDayMapper.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, license_plate, driver_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id from tbl_prd_route_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricDayMapper.xml new file mode 100644 index 00000000..1339abcf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricMonthMapper.xml new file mode 100644 index 00000000..67402e57 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_metric_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqTransDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqTransDayMapper.xml new file mode 100644 index 00000000..2a558c46 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqTransDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_trans_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqTransMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqTransMonthMapper.xml new file mode 100644 index 00000000..e329c857 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/prd/StationFreqTransMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_trans_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/CentimeDelayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/CentimeDelayMapper.xml new file mode 100644 index 00000000..323f9012 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/CentimeDelayMapper.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + select id, time_range, delay_count, txn_date, create_time from tbl_qa_centime_delay + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/PosMatchRateMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/PosMatchRateMapper.xml new file mode 100644 index 00000000..8e5d9bec --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/PosMatchRateMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + select id, tran_num, match_num, match_rate, txn_date, create_time from tbl_qa_pos_match_rate + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/RouteDailyCountMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/RouteDailyCountMapper.xml new file mode 100644 index 00000000..53eb9946 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/RouteDailyCountMapper.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + select id, company_name, route_count, txn_date, company_code, create_time from tbl_qa_route_daily_count + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/RouteMissMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/RouteMissMapper.xml new file mode 100644 index 00000000..0e35fa88 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/RouteMissMapper.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + select id, miss_rate, txn_date, route_count, bus_stop_count, create_time from tbl_qa_route_miss + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/RouteTurnoverTimeMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/RouteTurnoverTimeMapper.xml new file mode 100644 index 00000000..23ab638b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/RouteTurnoverTimeMapper.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + select id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time from tbl_qa_route_turnover_time + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/StationMissMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/StationMissMapper.xml new file mode 100644 index 00000000..6ec4ce83 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/StationMissMapper.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, miss_rate,create_time from tbl_qa_station_miss + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/VehicleDailyCountMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/VehicleDailyCountMapper.xml new file mode 100644 index 00000000..e71bb790 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/quality/VehicleDailyCountMapper.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + select id, company_code, company_name, vehicle_count, txn_date, create_time from tbl_qa_vehicle_daily_count + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/sftp/SyncRecordMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/sftp/SyncRecordMapper.xml new file mode 100644 index 00000000..4a95016c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mapper/sftp/SyncRecordMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + select id, path, table_name, count, txn_date, create_time, data_status from tbl_prd_sync_record + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mybatis/mybatis-config.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mybatis/mybatis-config.xml new file mode 100644 index 00000000..21aa61ea --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/mybatis/mybatis-config.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/templates/api_1.0.0.docx b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/templates/api_1.0.0.docx new file mode 100644 index 00000000..8acba393 Binary files /dev/null and b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/templates/api_1.0.0.docx differ diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/templates/api_1.0.1.docx b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/templates/api_1.0.1.docx new file mode 100644 index 00000000..51e247a5 Binary files /dev/null and b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/main/resources/templates/api_1.0.1.docx differ diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/BaseApplicationTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/BaseApplicationTest.java new file mode 100644 index 00000000..415668e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/BaseApplicationTest.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.test; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.AgileDataApplication; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnitRunner; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.ActiveProfiles; +import org.springframework.test.context.junit.jupiter.SpringExtension; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.web.servlet.MockMvc; + +import javax.annotation.Resource; + +/** + * Controller接口测试继承该接口(需要验证的) + * 通用登录的实现以及header处理 + * @author zhouliang + * + */ +@SpringBootTest(classes = AgileDataApplication.class) +@AutoConfigureMockMvc +@ActiveProfiles("test")//测试配置 +@ExtendWith(SpringExtension.class) +public abstract class BaseApplicationTest { + @Resource + protected MockMvc mockMvc; + + @Resource + protected ObjectMapper objectMapper; + + @BeforeEach + public void initMocks() throws Exception { + MockitoAnnotations.openMocks(this); + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiControllerTest.java new file mode 100644 index 00000000..34c570a5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiControllerTest.java @@ -0,0 +1,839 @@ +package com.jiuyv.sptcc.agile.test.controller.api; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class ApiControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(ApiControllerTest.class); + + @Test + public void getApiPrefixPath() throws Exception { + + //GET http://localhost/public/agile-data/agileApi/getPrefixPath + + String url="/public/agile-data/agileApi/getPrefixPath"; + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content("")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andReturn(); + + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R res= JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() {}); + assert res != null; + assertEquals("success",res.getCode()); + // log.info(mvcResult.getResponse().getContentAsString()); + + + url = "/public/agile-data/agileApi/getDate"; + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("id",""+100)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R result= JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() {}); + assert result != null; + assertEquals("success",result.getCode()); + // log.info(mvcResult.getResponse().getContentAsString()); + + + url = "/public/agile-data/agileApi/sourceList?sourceId =35"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("sourceId",35+"")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R> list = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert list != null; + assertEquals("success",list.getCode()); + + url = "/public/agile-data/agileApi/page"; + log.info("分页查询,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + ApiPageRequest pageRequest = new ApiPageRequest(); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(pageRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R> page = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert page != null; + assertEquals("success",page.getCode()); + + + url = "/public/agile-data/agileApi/page"; + log.info("分页查询,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + + + } + + + + @Test + void add() throws Exception { + + String url = "/public/agile-data/agileApi/page"; + log.info("新增api,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + String json = "{\n" + + " \"apiName\": \"ceode\",\n" + + " \"apiVersion\": \"1\",\n" + + " \"apiUrl\": \"s/d/e/f\",\n" + + " \"reqMethod\": \"POST\",\n" + + " \"resType\": \"JSON\",\n" + + " \"rateLimit\": {\n" + + " \"enable\": \"1\",\n" + + " \"times\": 5,\n" + + " \"seconds\": 60\n" + + " },\n" + + " \"status\": \"1\",\n" + + " \"remark\": \"测试数据\",\n" + + " \"executeConfig\": {\n" + + " \"configType\": \"1\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"fieldParams\": [\n" + + " {\n" + + " \"columnId\": \"267981\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_code\",\n" + + " \"columnComment\": \"API code\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"23\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267982\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_id\",\n" + + " \"columnComment\": \"主键ID\",\n" + + " \"columnKey\": \"1\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"1\",\n" + + " \"dataType\": \"int8\",\n" + + " \"dataPrecision\": \"64\",\n" + + " \"dataScale\": \"0\",\n" + + " \"dataDefault\": \"nextval('seq_data_market_api'::regclass)\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\",\n" + + " \"reqable\": \"1\",\n" + + " \"resable\": \"1\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267983\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_name\",\n" + + " \"columnComment\": \"API名称\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"9\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"255\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267984\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_type\",\n" + + " \"columnComment\": \"类型:1敏捷API 2系统API\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"24\",\n" + + " \"dataType\": \"bpchar\",\n" + + " \"dataLength\": \"1\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267985\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_url\",\n" + + " \"columnComment\": \"API路径\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"11\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"255\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267986\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_version\",\n" + + " \"columnComment\": \"API版本\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"10\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"60\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267987\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"config_json\",\n" + + " \"columnComment\": \"执行配置\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"16\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267988\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"create_by\",\n" + + " \"columnComment\": \"创建人\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"3\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267989\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"create_dept\",\n" + + " \"columnComment\": \"创建人所属部门\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"5\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267990\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"create_time\",\n" + + " \"columnComment\": \"创建日期\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"4\",\n" + + " \"dataType\": \"timestamp\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267991\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"del_flag\",\n" + + " \"columnComment\": \"【删除标志】0代表存在 2代表删除\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"21\",\n" + + " \"dataType\": \"bpchar\",\n" + + " \"dataLength\": \"1\",\n" + + " \"dataDefault\": \"'0'::bpchar\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267992\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"deny\",\n" + + " \"columnComment\": \"IP黑名单多个,隔开\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"14\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"2000\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267993\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"limit_json\",\n" + + " \"columnComment\": \"限流配置\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"15\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267994\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"rec_token\",\n" + + " \"columnComment\": \"随机码\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"20\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"100\",\n" + + " \"dataDefault\": \"'1'::character varying\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267995\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"remark\",\n" + + " \"columnComment\": \"备注\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"8\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"1000\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267996\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"req_json\",\n" + + " \"columnComment\": \"请求参数\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"17\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267997\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"req_method\",\n" + + " \"columnComment\": \"请求方式\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"12\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"10\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267998\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"res_json\",\n" + + " \"columnComment\": \"返回参数\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"18\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267999\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"res_type\",\n" + + " \"columnComment\": \"返回格式\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"13\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"10\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268000\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"source_id\",\n" + + " \"columnComment\": \"数据源id\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"25\",\n" + + " \"dataType\": \"int8\",\n" + + " \"dataPrecision\": \"64\",\n" + + " \"dataScale\": \"0\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268001\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"status\",\n" + + " \"columnComment\": \"状态(1待注册,2已注册,3已发布)\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"2\",\n" + + " \"dataType\": \"bpchar\",\n" + + " \"dataLength\": \"1\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268002\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"update_by\",\n" + + " \"columnComment\": \"更新人\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"6\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268003\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"update_time\",\n" + + " \"columnComment\": \"更新日期\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"7\",\n" + + " \"dataType\": \"timestamp\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268004\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"version_num\",\n" + + " \"columnComment\": \"版本号\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"19\",\n" + + " \"dataType\": \"int4\",\n" + + " \"dataPrecision\": \"32\",\n" + + " \"dataScale\": \"0\",\n" + + " \"dataDefault\": \"0\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " }\n" + + " ],\n" + + " \"table\": {\n" + + " \"tableId\": \"10188\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"api信息表\",\n" + + " \"sourceName\": \"public\"\n" + + " }\n" + + " },\n" + + " \"reqParams\": [\n" + + " {\n" + + " \"paramName\": \"api_id\",\n" + + " \"paramComment\": \"主键ID\",\n" + + " \"nullable\": \"0\",\n" + + " \"paramType\": \"Number\",\n" + + " \"whereType\": \"=\",\n" + + " \"exampleValue\": \"95\",\n" + + " \"defaultValue\": \"95\"\n" + + " }\n" + + " ],\n" + + " \"resParams\": [\n" + + " {\n" + + " \"fieldName\": \"api_id\",\n" + + " \"fieldComment\": \"主键ID\",\n" + + " \"dataType\": \"int8\",\n" + + " \"exampleValue\": \"95\",\n" + + " \"cipherType\": \"2\",\n" + + " \"cryptType\": \"1\"\n" + + " }\n" + + " ],\n" + + " \"apiCode\": \"eweq\"\n" + + "}"; + ApiAddRequest apiAddRequest = JacksonUtil.string2Obj(json, ApiAddRequest.class); + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiAddRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R add = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert add != null; + assertEquals("success",add.getCode()); + + + url = "/public/agile-data/agileApi/update"; + log.info("更新失败,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiUpdateRequest apiUpdateRequest = JacksonUtil.string2Obj(json, ApiUpdateRequest.class); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiUpdateRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R update = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert update != null; + assertEquals("input_not_valid",update.getCode()); + + + url = "/public/agile-data/agileApi/page"; + log.info("分页查询,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + ApiPageRequest pageRequest = new ApiPageRequest(); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(pageRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R> page = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert page != null; + assertEquals("success",page.getCode()); + + + + url = "/public/agile-data/agileApi/update"; + log.info("更新成功,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiResponse apiResponse = page.getData().getRows().get(0); + ApiUpdateRequest updateRequest = new ApiUpdateRequest(); + BeanUtils.copyProperties(apiResponse,updateRequest); + updateRequest.setUserId(1L); + updateRequest.setUserName("admin"); + updateRequest.setVersionNum(apiResponse.getVersionNum()); + updateRequest.setRecToken(apiResponse.getRecToken()); + updateRequest.setReqParams(apiAddRequest.getReqParams()); + updateRequest.setResParams(apiAddRequest.getResParams()); + updateRequest.setExecuteConfig(apiAddRequest.getExecuteConfig()); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(updateRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R update2 = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert update2 != null; + assertEquals("success",update2.getCode()); + + + + + url = "/public/agile-data/agileApi/delete"; + log.info("删除,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiDelRequest del = new ApiDelRequest(); + del.setApiId(149L); + del.setRecToken("93d8933353"); + del.setUserName("admin"); + del.setUserId(1L); + del.setDeptId("1"); + del.setNickName("操作人"); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(del))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R delRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert delRes != null; + assertEquals("success",delRes.getCode()); + + + + + url = "/public/agile-data/agileApi/copy"; + log.info("复制,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiCopyRequest copyRequest = new ApiCopyRequest(); + apiResponse = page.getData().getRows().get(1); + copyRequest.setApiId(apiResponse.getApiId()); + copyRequest.setUserName(apiResponse.getCreateBy()); + copyRequest.setUserId(1L); + copyRequest.setDeptId("1"); + copyRequest.setNickName("操作人"); + BeanUtils.copyProperties(apiResponse,del); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(copyRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R copyRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert copyRes != null; + assertEquals("success",copyRes.getCode()); + + + + + } + + + @Test + void register() throws Exception { + String url = "/public/agile-data/agileApi/register"; + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiStatusRequest statusRequest = new ApiStatusRequest(); + statusRequest.setApiId(150L); + statusRequest.setUserName("admin"); + statusRequest.setUserId(1L); + statusRequest.setDeptId("1"); + statusRequest.setNickName("操作人"); + statusRequest.setRecToken("6d44618b77"); + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(statusRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + + // 138 + url = "/public/agile-data/agileApi/release"; + log.info("发布,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + ApiStatusRequest request = new ApiStatusRequest(); + request.setApiId(138L); + request.setRecToken("9499ca728a"); + request.setUserName("admin"); + request.setUserId(1L); + request.setDeptId("1"); + request.setNickName("操作人"); + + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(request))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + + + url = "/public/agile-data/agileApi/cancel"; + log.info("注销,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + request.setApiId(137L); + request.setRecToken("2dec96f64e"); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(request))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + // + url = "/public/agile-data/agileApi/down"; + log.info("下架,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + request.setApiId(128L); + request.setRecToken("a1e7a3654e"); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(request))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + } + + @Test + void file() throws Exception { + //下载文档 + String url ="/public/agile-data/agileApi/down"; + + url = "/public/agile-data/agileApi/tree"; + log.info("注销,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content("")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R> tree = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert tree != null; + assertEquals("success",tree.getCode()); + + //下载文档 + url = "/public/agile-data/agileApi/word/down?id=150"; + log.info("下载文档,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content("")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andReturn(); + int status = mvcResult.getResponse().getStatus(); + log.info("返回对象string{}",status); + assertEquals(200,status); + + } + + + + + + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiLogControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiLogControllerTest.java new file mode 100644 index 00000000..698e7dd0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiLogControllerTest.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.test.controller.api; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiLogRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiLogResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class ApiLogControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(ApiControllerTest.class); + + + + @Test + void test() throws Exception { + + String url = "/public/agile-data/apilog/page"; + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiLogRequest apiLogRequest = new ApiLogRequest(); + apiLogRequest.setPageSize(0); + apiLogRequest.setPageNum(100); + apiLogRequest.setOrderBy("update_time"); + apiLogRequest.setDesc(false); + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiLogRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + + url = "/public/agile-data/apilog/detail"; + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("id","10001")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + + R response = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() {}); + assert response != null; + assertEquals("success",response.getCode()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/RequestTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/RequestTest.java new file mode 100644 index 00000000..022c1c8d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/RequestTest.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.test.controller.dto; + +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.platform.commons.util.ReflectionUtils; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +public class RequestTest extends BaseApplicationTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.request"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/ResponseTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/ResponseTest.java new file mode 100644 index 00000000..c57bb626 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/ResponseTest.java @@ -0,0 +1,54 @@ +package com.jiuyv.sptcc.agile.test.controller.dto; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.platform.commons.util.ReflectionUtils; +import org.springframework.test.context.junit.jupiter.SpringExtension; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +@ExtendWith(SpringExtension.class) +public class ResponseTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.response"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/BatchControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/BatchControllerTest.java new file mode 100644 index 00000000..2552b52c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/BatchControllerTest.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.batch.DateVo; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class BatchControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(BatchControllerTest.class); + + @Test + void test() throws Exception { + + + String url = "/public/agile-data/orgInfo/expire"; + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("date", "2023-12-22")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + + url = "/public/agile-data/orgInfo/down"; + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("date", "2023-12-25")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R res = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert res != null; + assertEquals("success", res.getCode()); + + + url = "/public/agile-data/pos/posRate"; + + DateVo dt = new DateVo(); + dt.setDate("2023-05-15"); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(dt))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R result = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert result != null; + assertEquals("success", result.getCode()); + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgAuthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgAuthControllerTest.java new file mode 100644 index 00000000..c3c5aec1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgAuthControllerTest.java @@ -0,0 +1,124 @@ +package com.jiuyv.sptcc.agile.test.controller.org; +import java.util.Date; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgAuthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgAuthControllerTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/auth/info"; + OrgAuthReq orgAuthReq = new OrgAuthReq(); + orgAuthReq.setKeyVersion("001"); + orgAuthReq.setOrgCode("JGH000000000000134"); + orgAuthReq.setSubOrgCode(""); + orgAuthReq.setRequsetTime(new Date()); + orgAuthReq.setApiCode("stationFreqTransDay"); + + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgAuthReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert statusRes != null; + assertEquals("api_not_right", statusRes.getCode()); + + + orgAuthReq.setOrgCode("JGH000000000000084"); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgAuthReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void auth() throws Exception { + String url = "/public/agile-data/auth/auth"; + OrgAuthRequest orgAuthRequest = new OrgAuthRequest(); + orgAuthRequest.setOrgCode("JGH000000000000084"); + orgAuthRequest.setApiCode("download"); + orgAuthRequest.setIp("130.252.102.154"); + orgAuthRequest.setRequsetTime(new Date()); + orgAuthRequest.setDataDate(new Date()); + + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgAuthRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + url = "/public/agile-data/auth/getKey"; + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgCode","JGH000000000000084")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R result = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert result != null; + assertEquals("success", result.getCode()); + + } + + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgConfigControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgConfigControllerTest.java new file mode 100644 index 00000000..13afe164 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgConfigControllerTest.java @@ -0,0 +1,196 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgConfigControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgConfigControllerTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/orgConfig/list"; + OrgConfigQueryRequest orgConfigQueryRequest = new OrgConfigQueryRequest(); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgConfigQueryRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> response = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + url = "/public/agile-data/orgConfig/detail"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("configId", response.getData().getRows().get(0).getConfigId() + "")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void edit() throws Exception { + + String url = "/public/agile-data/orgConfig/add"; + String json = "{\"configId\":\"161\",\"orgNo\":\"JGH000000000000084\",\"configKey\":\"downLoadRigth\",\"configDesc\":\"站点常乘客日指标\",\"configValue\":\"stationFreqMonth\",\"versionNum\":\"0\",\"recToken\":\"1\",\"delFlag\":\"0\",\"status\":\"0\",\"orgName\":\"机构一\"}"; + OrgConfigAddRequest add = JacksonUtil.string2Obj(json, OrgConfigAddRequest.class); + if (add == null) { + add = new OrgConfigAddRequest(); + } + add.setUserId(1L); + add.setUserName("admin"); + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(add))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R response = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + url = "/public/agile-data/orgConfig/list"; + OrgConfigQueryRequest orgConfigQueryRequest = new OrgConfigQueryRequest(); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgConfigQueryRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> page = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert page != null; + assertEquals("success", page.getCode()); + + List rows = page.getData().getRows(); + + OrgConfigResponse edit = rows.get(0); + url = "/public/agile-data/orgConfig/edit"; + OrgConfigEditRequest orgConfigEditRequest = new OrgConfigEditRequest(); + orgConfigEditRequest.setConfigId(edit.getConfigId()); + orgConfigEditRequest.setRecToken(edit.getRecToken()); + orgConfigEditRequest.setStatus(edit.getStatus()); + orgConfigEditRequest.setOrgNo(edit.getOrgNo()); + orgConfigEditRequest.setConfigKey(edit.getConfigKey()); + orgConfigEditRequest.setConfigDesc(edit.getConfigDesc()); + orgConfigEditRequest.setConfigValue(edit.getConfigValue()); + orgConfigEditRequest.setDelFlag(edit.getDelFlag()); + orgConfigEditRequest.setStatus(edit.getStatus()); + orgConfigEditRequest.setUserName("admin"); + orgConfigEditRequest.setUserId(1L); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgConfigEditRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R editRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert editRes != null; + assertEquals("success", editRes.getCode()); + + + url = "/public/agile-data/orgConfig/delete"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("configId",""+edit.getConfigId())) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R delete = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert delete != null; + assertEquals("success", delete.getCode()); + + + + url = "/public/agile-data/orgConfig/getOrgCfg"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgCode","JGH000000000000084")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> getOrgCfg = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert getOrgCfg != null; + assertEquals("success", getOrgCfg.getCode()); + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgInfoControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgInfoControllerTest.java new file mode 100644 index 00000000..7a38814c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgInfoControllerTest.java @@ -0,0 +1,284 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.List; +import java.util.stream.Collectors; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgInfoControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgInfoControllerTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/orgInfo/list"; + OrgInfoQueryReq orgInfoQueryReq = new OrgInfoQueryReq(); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoQueryReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> response = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + url = "/public/agile-data/orgInfo/detail"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgNo", "JGH000000000000156")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + + List rows = response.getData().getRows(); + OrgInfoResp orgInfoResp = rows.get(0); + + url = "/public/agile-data/orgInfo/add"; + OrgInfoAddReq orgInfoAddReq = new OrgInfoAddReq(); + orgInfoAddReq.setMemberId(orgInfoResp.getMemberId()); + orgInfoAddReq.setOrgName(orgInfoResp.getOrgName()); + orgInfoAddReq.setOrgType(orgInfoResp.getOrgType()); + orgInfoAddReq.setOrgDesc(orgInfoResp.getOrgDesc()); + orgInfoAddReq.setSalt(orgInfoResp.getSalt()); + orgInfoAddReq.setEncrypt(orgInfoResp.getEncrypt()); + orgInfoAddReq.setStartTime(orgInfoResp.getStartTime()); + orgInfoAddReq.setEndTime(orgInfoResp.getEndTime()); + orgInfoAddReq.setIp(orgInfoResp.getIp()); + orgInfoAddReq.setContractTel(orgInfoResp.getContractTel()); + orgInfoAddReq.setRemark("备注"); + orgInfoAddReq.setStatus(orgInfoResp.getStatus()); + orgInfoAddReq.setUserName("admin"); + orgInfoAddReq.setUserId(1L); + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoAddReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R add = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert add != null; + assertEquals("success", add.getCode()); + + + log.info("==============={}=============", "停用服务"); + url = "/public/agile-data/orgInfo/stop"; + OrgInfoResp orgInfoResp1 = rows.stream().filter(x -> "JGH000000000000158".equals(x.getOrgNo())).collect(Collectors.toList()).get(0); + OrgInfoStatusReq orgInfoStatusReq = new OrgInfoStatusReq(); + orgInfoStatusReq.setOrgNo(orgInfoResp1.getOrgNo()); + orgInfoStatusReq.setRecToken(orgInfoResp1.getRecToken()); + orgInfoStatusReq.setUserName("system"); + orgInfoStatusReq.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoStatusReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R stop = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert stop != null; + assertEquals("success", stop.getCode()); + + + log.info("==============={}=============", "修改服务"); + url = "/public/agile-data/orgInfo/edit"; + OrgInfoEditReq editReq = new OrgInfoEditReq(); + orgInfoResp = rows.get(1); + editReq.setOrgNo(orgInfoResp.getOrgNo()); + editReq.setRecToken(orgInfoResp.getRecToken()); + editReq.setMemberId(orgInfoResp.getMemberId()); + editReq.setOrgName(orgInfoResp.getOrgName()); + editReq.setOrgType(orgInfoResp.getOrgType()); + editReq.setOrgDesc(orgInfoResp.getOrgDesc()); + editReq.setSalt(orgInfoResp.getSalt()); + editReq.setEncrypt(orgInfoResp.getEncrypt()); + editReq.setStartTime(orgInfoResp.getStartTime()); + editReq.setEndTime(orgInfoResp.getEndTime()); + editReq.setIp(orgInfoResp.getIp()); + editReq.setContractTel(orgInfoResp.getContractTel()); + editReq.setRemark("修改"); + editReq.setStatus(orgInfoResp.getStatus()); + editReq.setUserName("system"); + editReq.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(editReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R edit = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert edit != null; + assertEquals("update_failed", edit.getCode()); + + + log.info("==============={}=============", "启用服务"); + orgInfoStatusReq.setOrgNo("JGH000000000000155"); + orgInfoStatusReq.setRecToken("d0ef53603f"); + url = "/public/agile-data/orgInfo/run"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoStatusReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R run = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert run != null; + assertEquals("success", run.getCode()); + + log.info("==============={}=============", "删除服务"); + url = "/public/agile-data/orgInfo/remove"; + OrgDelReq orgDelReq = new OrgDelReq(); + orgDelReq.setOrgNo("JGH000000000000157"); + orgDelReq.setRecToken("12c6936f71"); + orgDelReq.setUserName("system"); + orgDelReq.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgDelReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R del = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert del != null; + assertEquals("success", del.getCode()); + + + log.info("==============={}=============", "授权服务"); + url = "/public/agile-data/orgInfo/auth"; + OrgApiAuthRequest orgApiAuthRequest = new OrgApiAuthRequest(); + orgApiAuthRequest.setOrgNo("JGH000000000000134"); + orgApiAuthRequest.setApiIds(new Long[]{116L,119L}); + orgApiAuthRequest.setUserName("admin"); + orgApiAuthRequest.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgApiAuthRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R auth = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert auth != null; + assertEquals("success", auth.getCode()); + + + + } + + + @Test + void other() throws Exception{ + String url = "/public/agile-data/orgInfo/key"; + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + ) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R response = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + log.info("==============={}=============", "授权列表"); + url = "/public/agile-data/orgInfo/auth/list"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgNo","JGH000000000000084")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R auth = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert auth != null; + assertEquals("success", auth.getCode()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgStcsConsoleApiTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgStcsConsoleApiTest.java new file mode 100644 index 00000000..69675b83 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgStcsConsoleApiTest.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiStatisticsResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgStcsConsoleApiTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgStcsConsoleApiTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/orgStcs/list"; + OrgStatisticsQueryReq orgStatisticsQueryReq = new OrgStatisticsQueryReq(); + log.info(">>>>>>>>>>>>>>>>>> {} <<<<<<<<<<<<<<<<<<<<", "接口统计列表"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgStatisticsQueryReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> response = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + log.info(">>>>>>>>>>>>>>>>>> {} <<<<<<<<<<<<<<<<<<<<", "会员接口统计列表"); + url = "/public/agile-data/orgStcs/userApiStatistics"; + ApiUserRequest apiUserRequest = new ApiUserRequest(); + apiUserRequest.setMemberId("1"); + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiUserRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/portal/PortalControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/portal/PortalControllerTest.java new file mode 100644 index 00000000..2e936f89 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/portal/PortalControllerTest.java @@ -0,0 +1,74 @@ +package com.jiuyv.sptcc.agile.test.controller.portal; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class PortalControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(PortalControllerTest.class); + + @Test + void test() throws Exception { + + + String url = "/public/agile-data/agileApi/userApiList"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + ApiUserRequest apiUserRequest = new ApiUserRequest(); + apiUserRequest.setMemberId("1"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiUserRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + + + + // url = "/public/agile-data/pos/posRate"; + // + // DateVo dt = new DateVo(); + // dt.setDate("2023-05-15"); + // mvcResult = mockMvc.perform(MockMvcRequestBuilders + // .post(url) + // .contentType(MediaType.APPLICATION_JSON) + // .accept(MediaType.APPLICATION_JSON_UTF8) + // .content(objectMapper.writeValueAsBytes(dt))) + // .andExpect(MockMvcResultMatchers.status().isOk()) + // .andDo(MockMvcResultHandlers.print()) + // .andReturn(); + // contentAsString = mvcResult.getResponse().getContentAsString(); + // log.info("返回对象string{}", contentAsString); + // // 如果不是JSON的自行修改 + // R result = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + // }); + // assert result != null; + // assertEquals("success", result.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricDayControllerTest.java new file mode 100644 index 00000000..3d7ada5d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricDayControllerTest.java @@ -0,0 +1,84 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineMetricDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/lineDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineDayPageReq lineDayPageReq = new LineDayPageReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(lineDayPageReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/lineDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineDayReqRequest lineDayReqRequest = new LineDayReqRequest(); + lineDayReqRequest.setMetricDate(new Date()); + lineDayReqRequest.setOrgNo("001"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(lineDayReqRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricHourControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricHourControllerTest.java new file mode 100644 index 00000000..28f626c9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricHourControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineMetricHourControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineMetricHourControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/linHour/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineHourPageReq req = new LineHourPageReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/linHour/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineHourRequest req = new LineHourRequest(); + req.setMetricDate(new Date()); + req.setOrgNo("001"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricMonthControllerTest.java new file mode 100644 index 00000000..bbf007d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineMetricMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineMetricMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/linMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineMetricMonthReq req = new LineMetricMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/linMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineMonthRequest req = new LineMonthRequest(); + req.setMetricMonth(new Date()); + req.setOrgNo("001"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricDayControllerTest.java new file mode 100644 index 00000000..b219ad93 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricDayControllerTest.java @@ -0,0 +1,89 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationMetricDayControllerTest extends BaseApplicationTest { + + + private static final Logger log = LoggerFactory.getLogger(LineStationMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationMetricDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricDayReq req = new StationMetricDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationMetricDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationDayRequest req = new StationDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricHourControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricHourControllerTest.java new file mode 100644 index 00000000..cb86fe59 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricHourControllerTest.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationMetricHourControllerTest extends BaseApplicationTest { + + + private static final Logger log = LoggerFactory.getLogger(LineStationMetricHourControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationMetricHour/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricHourReq req = new StationMetricHourReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationMetricHour/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationHourRequest req = new StationHourRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricMonthControllerTest.java new file mode 100644 index 00000000..e042101f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricMonthControllerTest.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationMetricMonthControllerTest extends BaseApplicationTest { + + + private static final Logger log = LoggerFactory.getLogger(LineStationMetricMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationMetricMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricMonthReq req = new StationMetricMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationMetricMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMonthRequest req = new StationMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransDayControllerTest.java new file mode 100644 index 00000000..8eb684b3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationTransDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineStationTransDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationTransDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransDayReq req = new StationTransDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationTransDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransDayRequest req = new StationTransDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransHourControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransHourControllerTest.java new file mode 100644 index 00000000..e641aa3a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransHourControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationTransHourControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineStationTransHourControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationTransHour/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricHourReq req = new StationMetricHourReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationTransHour/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransHourRequest req = new StationTransHourRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransMonthControllerTest.java new file mode 100644 index 00000000..361e11d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationTransMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineStationTransMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationTransMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransMonthReq req = new StationTransMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationTransMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransMonthRequest req = new StationTransMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/RouteMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/RouteMetricDayControllerTest.java new file mode 100644 index 00000000..3f4d4178 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/RouteMetricDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteMetricDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/routeMetricDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteMetricDayReq req = new RouteMetricDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/routeMetricDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteDayRequest req = new RouteDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricDayControllerTest.java new file mode 100644 index 00000000..fd7557b8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqMetricDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqMetricDayReq req = new StationFreqMetricDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqDayRequest req = new StationFreqDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricMonthControllerTest.java new file mode 100644 index 00000000..b7c44e01 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqMetricMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqMetricMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqMetricMonthReq req = new StationFreqMetricMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqMonthRequest req = new StationFreqMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransDayControllerTest.java new file mode 100644 index 00000000..7569fe7c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqTransDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqTransDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqTransDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransDayReq req = new StationFreqTransDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqTransDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransDayRequest req = new StationFreqTransDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransMonthControllerTest.java new file mode 100644 index 00000000..fa95f203 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqTransMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqTransMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqTransMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransMonthReq req = new StationFreqTransMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqTransMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransMonthRequest req = new StationFreqTransMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/CentimeDelayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/CentimeDelayControllerTest.java new file mode 100644 index 00000000..64cacb1f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/CentimeDelayControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class CentimeDelayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(CentimeDelayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/centimeDelay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + CentimeDelayReq req = new CentimeDelayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/PosMatchRateControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/PosMatchRateControllerTest.java new file mode 100644 index 00000000..63596013 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/PosMatchRateControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class PosMatchRateControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(PosMatchRateControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/posMatchRate/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + PosMatchRateReq req = new PosMatchRateReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteDailyCountControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteDailyCountControllerTest.java new file mode 100644 index 00000000..99dad232 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteDailyCountControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteDailyCountControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteDailyCountControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/routeDailyCount/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteDailyReq req = new RouteDailyReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteMissControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteMissControllerTest.java new file mode 100644 index 00000000..e4f169c7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteMissControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteMissControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteMissControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/routeMiss/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteMissReq req = new RouteMissReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteTurnoverTimeControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteTurnoverTimeControllerTest.java new file mode 100644 index 00000000..9ecb0033 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteTurnoverTimeControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteTurnoverTimeControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteTurnoverTimeControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/routeTurnover/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteTurnoverReq req = new RouteTurnoverReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/StationMissControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/StationMissControllerTest.java new file mode 100644 index 00000000..1639a941 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/StationMissControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationMissControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationMissControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/stationMiss/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMissReq req = new StationMissReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/VehicleDailyCountControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/VehicleDailyCountControllerTest.java new file mode 100644 index 00000000..9440a2c5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/VehicleDailyCountControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class VehicleDailyCountControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(VehicleDailyCountControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/vehicleDaily/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + VehicleDailyReq req = new VehicleDailyReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java new file mode 100644 index 00000000..2a7bd111 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java @@ -0,0 +1,98 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.util.Date; + +/** + * @author yulei + **/ +public class DateUtilsTest extends BaseApplicationTest { + + @Test + public void getDate(){ + String s = DateUtils.getDate(); + Assertions.assertNotNull(s); + } + + @Test + public void getTime(){ + String s = DateUtils.getTime(); + Assertions.assertNotNull(s); + } + + @Test + public void dateTimeNow(){ + String s = DateUtils.dateTimeNow(); + Assertions.assertNotNull(s); + } + + @Test + public void dateTimeNow2(){ + String s = DateUtils.dateTimeNow("YYYY_MM_DD"); + Assertions.assertNotNull(s); + } + + @Test + public void dateTime2(){ + String s = DateUtils.dateTime(new Date()); + Assertions.assertNotNull(s); + } + + @Test + public void parseDateToStr(){ + String s = DateUtils.parseDateToStr("YYYY",new Date()); + Assertions.assertNotNull(s); + } + + @Test + public void dateTime3(){ + Date date = DateUtils.dateTime("YYYY","2023"); + Assertions.assertNotNull(date); + } + + @Test + public void dateTime4(){ + Date date = DateUtils.dateTime(); + Assertions.assertNotNull(date); + } + + @Test + public void date(){ + Date s = DateUtils.date(); + Assertions.assertNotNull(s); + } + + @Test + public void parseDate(){ + Date s = DateUtils.parseDate("20240111"); + Assertions.assertNotNull(s); + } + + @Test + public void addDays(){ + Date s = DateUtils.addDays(new Date(),1); + Assertions.assertNotNull(s); + } + + @Test + public void getServerStartDate(){ + Date s = DateUtils.getServerStartDate(); + Assertions.assertNotNull(s); + } + + @Test + public void differentDaysByMillisecond(){ + int s = DateUtils.differentDaysByMillisecond(new Date(),new Date()); + Assertions.assertEquals(s,0); + } + + @Test + public void getDatePoor(){ + String s = DateUtils.getDatePoor(new Date(),new Date()); + Assertions.assertNotNull(s); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IPUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IPUtilTest.java new file mode 100644 index 00000000..49797de0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IPUtilTest.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.IPUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.mockito.Mockito; + +import javax.servlet.http.HttpServletRequest; +import java.net.SocketException; + +/** + * @author yulei + **/ +public class IPUtilTest extends BaseApplicationTest { + + @Test + public void getLocalIP() throws SocketException { + String localIP = IPUtil.getLocalIP(); + Assertions.assertNotNull(localIP); + } + + @Test + public void getIpAddr() { + HttpServletRequest request = Mockito.mock(HttpServletRequest.class); + + Mockito.when(request.getHeader("x-forwarded-for")).thenReturn("192.168.1.1"); + Mockito.when(request.getHeader("Proxy-Client-IP")).thenReturn(null); + Mockito.when(request.getHeader("WL-Proxy-Client-IP")).thenReturn("192.168.1.2"); + Mockito.when(request.getRemoteAddr()).thenReturn("127.0.0.1"); + String ipAddress = IPUtil.getIpAddr(request); + Assertions.assertNotNull(ipAddress); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IpWhiteCheckUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IpWhiteCheckUtilTest.java new file mode 100644 index 00000000..303eb9bd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IpWhiteCheckUtilTest.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.IpWhiteCheckUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +/** + * @author yulei + **/ +public class IpWhiteCheckUtilTest extends BaseApplicationTest { + + @Test + public void getAvaliIpList(){ + boolean permited = IpWhiteCheckUtil.isPermited("172.16.12.14", "172.16.12.14;172.18.23.*"); + Assertions.assertEquals(true,permited); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/JacksonUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/JacksonUtilTest.java new file mode 100644 index 00000000..74bf5fdd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/JacksonUtilTest.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectWriter; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.mockito.Mock; +import org.mockito.Mockito; + +import java.io.File; +import java.io.IOException; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +public class JacksonUtilTest extends BaseApplicationTest { + + @Mock + private static ObjectMapper OBJECT_MAPPER; + + @Mock + private static ObjectMapper OBJECT_MAPPER_SNAKE_CASE; + + @Mock + private static ObjectWriter OBJECT_WRITER; + + @Test + public void obj2String() throws JsonProcessingException { + Mockito.when(OBJECT_MAPPER.writeValueAsString("test")).thenReturn("\"test\""); + String result = JacksonUtil.obj2String("test"); + Assertions.assertEquals("test", result); + } + + @Test + public void obj2StringFieldSnakeCase() throws JsonProcessingException { + Object obj = new Object(); // Replace with your actual object + Mockito.when(OBJECT_MAPPER_SNAKE_CASE.writeValueAsString(obj)).thenReturn("{\"field_name\":\"value\"}"); + + String result = JacksonUtil.obj2StringFieldSnakeCase(obj); + + Assertions.assertEquals("{}", result); + } + + @Test + public void string2ObjFieldLowerCamelCase() throws JsonProcessingException { + String str = "{\"field_name\":\"value\"}"; + Object expectedResult = new Object(); // Replace with your actual expected object + Mockito.when(OBJECT_MAPPER_SNAKE_CASE.readValue(str, Object.class)).thenReturn(expectedResult); + + // 调用string2ObjFieldLowerCamelCase方法 + Object result = JacksonUtil.string2ObjFieldLowerCamelCase(str, Object.class); + + // 验证返回的对象是否符合预期 + Assertions.assertNotNull(result); + } + + @Test + public void string2ListFieldLowerCamelCase() throws JsonProcessingException { + String str = "[{\"field_name\":\"value1\"},{\"field_name\":\"value2\"}]"; + TypeReference> typeReference = new TypeReference>() {}; + List expectedResult = Arrays.asList(new Object(), new Object()); // Replace with your actual expected list + Mockito.when(OBJECT_MAPPER_SNAKE_CASE.readValue(str, typeReference)).thenReturn(expectedResult); + + // 调用string2ListFieldLowerCamelCase方法 + List result = JacksonUtil.string2ListFieldLowerCamelCase(str, typeReference); + + // 验证返回的列表是否符合预期 + Assertions.assertNotNull(result); + } + + @Test + public void obj2StringPretty() throws JsonProcessingException { + Object obj = new Object(); // Replace with your actual object + Mockito.when(OBJECT_MAPPER.writerWithDefaultPrettyPrinter()).thenReturn(OBJECT_WRITER); + Mockito.when(OBJECT_WRITER.writeValueAsString(obj)).thenReturn("\"pretty-printed-json\""); + + // 调用obj2StringPretty方法 + String result = JacksonUtil.obj2StringPretty(obj); + + // 验证返回的字符串是否符合预期 + Assertions.assertEquals("{ }", result); + } + + @Test + public void parseArray() throws JsonProcessingException { + Object[] arguments = new Object[]{"value1", "value2"}; + Mockito.when(OBJECT_MAPPER.writeValueAsString(arguments)).thenReturn("[\"value1\",\"value2\"]"); + + // 调用parseArray方法 + String result = JacksonUtil.parseArray(arguments); + + // 验证返回的字符串是否符合预期 + Assertions.assertEquals("[\"value1\",\"value2\"]", result); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/NamedParameterUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/NamedParameterUtilTest.java new file mode 100644 index 00000000..923ed037 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/NamedParameterUtilTest.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.NamedParameterUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParsedSql; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.util.HashMap; +import java.util.LinkedHashMap; + +/** + * @author yulei + **/ +public class NamedParameterUtilTest extends BaseApplicationTest { + + @Test + public void parseSqlStatement(){ + ParsedSql parsedSql = NamedParameterUtil.parseSqlStatement("select name,age from stu"); + Assertions.assertNotNull(parsedSql); + } + + @Test + public void substituteNamedParams(){ + String s = NamedParameterUtil.substituteNamedParams(NamedParameterUtil.parseSqlStatement("select name,age from stu"),new HashMap<>()); + Assertions.assertNotNull(s); + } + + @Test + public void buildValueArray(){ + LinkedHashMap stringObjectLinkedHashMap = NamedParameterUtil.buildValueArray(NamedParameterUtil.parseSqlStatement("select name,age from stu"), new HashMap<>()); + Assertions.assertNotNull(stringObjectLinkedHashMap); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/UUIDTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/UUIDTest.java new file mode 100644 index 00000000..fc655975 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/UUIDTest.java @@ -0,0 +1,60 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.UUID; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.security.SecureRandom; +import java.util.concurrent.ThreadLocalRandom; + + +/** + * @author yulei + **/ +public class UUIDTest extends BaseApplicationTest { + + @Test + public void fastUUID(){ + UUID uuid = UUID.fastUUID(); + Assertions.assertNotNull(uuid); + } + + @Test + public void randomUUID(){ + UUID uuid = UUID.randomUUID(); + Assertions.assertNotNull(uuid); + } + + @Test + public void randomUUID2(){ + UUID uuid = UUID.randomUUID(true); + Assertions.assertNotNull(uuid); + } + + @Test + public void nameUUIDFromBytes(){ + byte[] b = new byte[2]; + b[1] = 'c'; + UUID uuid = UUID.nameUUIDFromBytes(b); + Assertions.assertNotNull(uuid); + } + + @Test + public void fromString(){ + UUID uuid = UUID.fromString("a-a-a-a-a"); + Assertions.assertNotNull(uuid); + } + + @Test + public void getSecureRandom(){ + SecureRandom secureRandom = UUID.getSecureRandom(); + Assertions.assertNotNull(secureRandom); + } + + @Test + public void getRandom(){ + ThreadLocalRandom random = UUID.getRandom(); + Assertions.assertNotNull(random); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/application-test.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/application-test.yml new file mode 100644 index 00000000..b9c57dbf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/application-test.yml @@ -0,0 +1,109 @@ +###### +##### svn自己的配置信息,都需要拿到本地来 +spring: + # 使用H2数据库 + datasource: + url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=FALSE;MODE=PostgreSQL + driver-class-name: org.h2.Driver + username: + password: + + config: + use-legacy-processing: true + cloud: + config: + # 不从远程拿配置文件 + enabled: false + sql: + init: + schema-locations: classpath:sql/schema.sql + data-locations: classpath:sql/data.sql + username: root + password: + mode: always + separator: ; + platform: h2 + encoding: utf-8 + +server: + shutdown: immediate +eureka: + client: + # 不注册 + enabled: false + +#### +#### svn的application配置 +ribbon: + eager-load: + enabled: true + OkToRetryOnAllOperation: false + ReadTimeout: 20000 + ConnectTimeout: 10000 + MaxAutoRetriesNextServer: 0 + MaxAutoRetries: 0 + +feign: + httpclient: + enabled: false + okhttp: + enabled: true + compression: + request: + enabled: true + response: + enabled: true + +management: + security: + enabled: false + metrics: + export: + prometheus: + enabled: true + endpoint: + health: + show-details: always + metrics: + enabled: true + prometheus: + enabled: true + pause: + enabled: true + restart: + enabled: true + shutdown: + enabled: true + endpoints: + web: + exposure: + include: '*' + +api: + test: + # 测试次数 + num: 10 + # 毫秒, + avgTime: 3000 + # api接口文档模板 + + +sftp: + host: 172.16.12.108 + port: 22 + username: flink + password: flink123 + work-paths: /sftp + session-connect-timeout: 2000 + channel-connect-timeout: 1000 + strict-host-key-checking: no + pool: + max-idle: 8 + min-idle: 0 + max-wait-millis: 10000 + max-total: 10 + sdk: + path: /sftp/sdk/sss.jar +logging: + level: + root: debug \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/bootstrap-test.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/bootstrap-test.yml new file mode 100644 index 00000000..0bda69c7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/bootstrap-test.yml @@ -0,0 +1,11 @@ +spring: + cloud: + config: + discovery: + enabled: false + enabled: false + +# 配置eureka客户端信息 +eureka: + client: + enabled: false diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/sql/data.sql b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/sql/data.sql new file mode 100644 index 00000000..587ea18e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/sql/data.sql @@ -0,0 +1,2304 @@ +INSERT INTO seqno (nextval) VALUES (3045); + +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_waybill_js', 0, '1', 'SELECT * FROM pf_waybill_js where workdate=''{currDate} 00:00:00''', 'jsyHiveDs', 1, 'ods_route_schedule_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_up_down_site', 0, '1', 'SELECT * FROM pf_line_up_down_site where workdate=''{currDate}''', 'jsyHiveDs', 1, 'ods_route_station_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_info', 0, '1', 'SELECT * FROM pf_line_info where workdate=''{currDate}''', 'jsyHiveDs', 1, 'ods_route_path_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_gateway', 0, '1', 'SELECT * FROM pf_gateway where workdate=''{currDateSimple}''', 'jsyHiveDs', 1, 'ods_bus_stop_time_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user2', 0, '1', 'tbl_sys_user LIMIT 2000', 'klbPgDs', 1, 'tbl_sys_user_zltest', 'klbPgDs', 'delete from tbl_sys_user_zltest', '{user_id:user_id,version_num:version_num,rec_token:rec_token,dept_id:dept_id,user_name:user_name,nick_name:nick_name,user_type:user_type,email:email,phonenumber:phonenumber,sex:sex,avatar:avatar,password:password,status:status,del_flag:del_flag,login_ip:login_ip,login_date:login_date,is_locked:is_locked,login_error_count:login_error_count,last_login_error_time:last_login_error_time,create_by:create_by,create_time:create_time,update_by:update_by,update_time:update_time,remark:remark}', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_license_plate_pos', 0, '1', 'SELECT * FROM ods_monitor.license_plate_pos where txn_date=''{currDate}'' ', 'sjztHiveDs', 1, 'ods_license_plate_pos_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dws_product_consum_month', 0, '1', 'SELECT * FROM sptcc.dws_product_consum_month where month_name=''{currMonthSimple}'' ', 'sjztHiveDs', 1, 'ods_product_consum_month_{currMonthSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dwd_consum_trans', 0, '1', 'SELECT * FROM sptcc.dwd_consum_trans where txn_date=''{currDateSimple}'' ', 'sjztHiveDs', 1, 'ods_consum_trans_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user3', 0, '1', 'SELECT * FROM dwd_consum_trans limit 100', 'klbHiveDs', 1, 'dwd_consum_trans_zltest.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_line_day_count', 0, '1', 'SELECT * FROM agile.bus_line_day_count where txn_date=''{currDateSimple}'' ', 'sjztHiveDs', 1, 'tbl_index_bus_line_day_count', 'klbPgSjztDs', 'delete from tbl_index_bus_line_day_count where txn_date=''{currDateSimple}''', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_trans_day_count', 0, '1', 'SELECT * FROM agile.bus_trans_day_count where txn_date=''{currDateSimple}'' ', 'sjztHiveDs', 1, 'tbl_index_bus_trans_day_count', 'klbPgSjztDs', 'delete from tbl_index_bus_trans_day_count where txn_date=''{currDateSimple}''', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user', 0, '1', 'SELECT * FROM tbl_sys_user LIMIT 20000', 'klbPgDs', 1, 'tbl_sys_user-{datetime}.csv', 'csv', 'true', '{user_name:user_name,user_id:user_id,version_num:version_num,rec_token:rec_token,dept_id:dept_id}', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user4', 0, '1', 'SELECT * FROM dwd_consum_trans limit 10', 'klbHiveDs', 1, 'tbl_zltest', 'klbPgDs', '', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); + +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user3', 166, 'c94abdf6', '测试写入数据库', '2023-10-08 17:48:27.821', '2023-10-08 17:48:38.645', '10.82秒', '2023-10-08 17:48:27.821', '2023-08-30', 'finish', '00', '2023-10-08 17:48:38.645', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user', 70, 'db92a760', '测试写入文件', '2023-10-09 14:47:05.256', '2023-10-09 14:47:07.238', '1.98秒', '2023-10-09 14:47:05.256', '2023-07-24', 'finish', '00', '2023-10-09 14:47:07.238', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_line_day_count', 0, '1', '同步数据中台表(agile)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_trans_day_count', 0, '1', '同步数据中台表(agile)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_gateway', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_info', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_waybill_js', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_up_down_site', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_own4', 0, '1', '同步数据中台表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dws_product_consum_month', 0, '1', '同步数据中台表(sptcc)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dwd_consum_trans', 0, '1', '同步数据中台表(sptcc)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_license_plate_pos', 0, '1', '同步数据中台表(ods_monitor)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user2', 104, 'c3c02f41', '测试写入数据库', '2023-11-17 15:15:08.474', '2023-11-17 15:15:08.604', '0.13秒', '2023-11-17 15:15:08.474', '2023-08-28', 'finish', '00', '2023-11-17 15:15:08.604', NULL, NULL, NULL); + + +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (116, '3', 'admin', '2023-10-10 11:16:53', NULL, 'admin', '2023-10-10 11:16:53', '', '文件下载', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:date,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:fileType,nullable:0,paramComment:文件类型:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:文件流,dataType:String,exampleValue:xxxx,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'download', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (94, '1', 'yts', '2023-10-09 15:25:53', NULL, 'admin', '2023-10-10 15:37:55', '', '11111', '11', '/public/agile-data/api/v1.0.0/11111', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id FROM tbl_data_api}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '1a83932f41', '1', '11', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (95, '1', 'yts', '2023-10-09 16:10:09', NULL, 'admin', '2023-10-10 15:38:01', '', '11', '11111', '/public/agile-data/api/v1.0.0/111111', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:1,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:null},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code FROM tbl_data_api}', '[{paramName:api_code,nullable:0,paramComment:API code,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '6125bfd318', '1', '111111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (98, '3', 'admin', '2023-10-09 17:46:07', NULL, 'admin', '2023-10-09 17:46:07', '', '线路客流量-小时', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:14,exampleValue:2023-10-01,defaultValue:1},{paramName:companyCode,nullable:1,paramComment:运营公司编码,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fildName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'lineHour', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (100, '3', 'admin', '2023-10-09 17:51:33', NULL, 'admin', '2023-10-09 17:51:33', '', '站点客流量-小时', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:Long,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationHour', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (102, '3', 'admin', '2023-10-09 17:59:54', NULL, 'admin', '2023-10-09 17:59:54', '', '站点客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:4,exampleValue:2023-10,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricMonth,fieldComment:指标月份,dataType:Date,exampleValue:2023-10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (105, '3', 'admin', '2023-10-10 10:03:52', NULL, 'admin', '2023-10-10 10:03:52', '', '站点换乘客流量-小时', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:hour,nullable:0,paramComment:小时,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:metricHour,nullable:0,paramComment:指标小时,whereType:1,paramType:2,exampleValue:21,defaultValue:1},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationTransHour', '2', NULL); +-- INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (114, '3', 'admin', '2023-10-10 11:14:24', NULL, 'admin', '2023-10-10 11:14:24', '', '班次客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:licensePlate,fieldComment:车辆牌照,dataType:String,exampleValue:沪A 8888,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:driverCode,fieldComment:司机工号,dataType:String,exampleValue:10086,fieldAliasName:,cipherType:null,cryptType:null},{paramName:startStation,fieldComment:起点,dataType:String,exampleValue:xx,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:startTime,fieldComment:发车时间,dataType:Date,exampleValue:2023-10-01:12:00:00,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:endStation,fieldComment:终点,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{paramName:arrivalTime,fieldComment:到达时间,dataType:Date,exampleValue:2023-10-01:12:00:00,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:waybillType,fieldComment:路单类型,dataType:String,exampleValue:2,fieldAliasName:,cipherType:null,cryptType:null},{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0 '1', '0', 'routeDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (111, '3', 'admin', '2023-10-10 10:46:07', NULL, 'admin', '2023-10-10 10:46:07', '', '站点常乘客换乘客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqTransDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (90, '1', 'yts', '2023-10-09 14:22:49', NULL, 'admin', '2023-10-10 15:37:50', '', '11111', '11', '/public/agile-data/api/v1.0.0/11', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:1},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name, api_type FROM tbl_data_api}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_type,fieldComment:类型:1敏捷API 2系统API,dataType:bpchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 5, '36b14fb142', '1', '1111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (91, '1', 'yts', '2023-10-09 14:43:19', NULL, 'admin', '2023-10-10 15:38:05', '', '222', '22', '/public/agile-data/api/v1.0.0/v1.0.0/', 'GET', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id FROM tbl_data_api}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:1,paramType:1,exampleValue:22,defaultValue:22}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:22,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:22,fieldAliasName:null,cipherType:null,cryptType:null}]', 4, '5beaeb1a6c', '1', '22', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (118, '1', 'admin', '2023-10-10 16:23:35', NULL, 'admin', '2023-10-11 14:03:03', 'ss', 'wewq', 'qe', '/public/agile-data/api/v1.0.0/weq', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_name, api_id, api_code FROM tbl_data_api}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:3,paramType:1,exampleValue:sds,defaultValue:sds}]', '[{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:sad,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:sdsd,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:sds,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '3425f78264', '1', 'eqwe', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (120, '1', 'admin', '2023-10-10 18:07:24', NULL, 'admin', '2023-10-11 14:03:06', 'scsaa', 'dsds', 'ss', '/public/agile-data/api/ss/sds', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3470,tableName:tbl_data_api_log,fieldParams:[{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:调用api,reqable:1,resable:1},{columnName:api_log_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api_log''::regclass),columnComment:主键ID,reqable:null,resable:null},{columnName:caller_date,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:调用时间,reqable:null,resable:null},{columnName:caller_id,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:调用者id,reqable:null,resable:null},{columnName:caller_ip,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:调用者ip,reqable:null,resable:null},{columnName:caller_params,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:调用参数,reqable:null,resable:null},{columnName:caller_size,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:调用数据量,reqable:null,resable:null},{columnName:caller_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:调用url,reqable:null,resable:null},{columnName:msg,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:信息记录,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:状态(0成功,1失败),reqable:null,resable:null},{columnName:time,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:调用耗时,reqable:null,resable:null}],sqlText:SELECT api_id FROM tbl_data_api_log}', '[{paramName:api_id,nullable:0,paramComment:调用api,whereType:=,paramType:Long,exampleValue:1,defaultValue:1}]', '[{fieldName:api_id,fieldComment:调用api,dataType:int8,exampleValue:sds,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, 'f5b8080260', '1', 'dssa', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (121, '1', 'admin', '2023-10-10 20:26:31', NULL, 'admin', '2023-10-10 20:32:44', '', '11', '11', '/public/agile-data/api/11/11', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '06bc016332', '1', '11111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (117, '1', 'admin', '2023-10-10 15:41:27', NULL, 'admin', '2023-10-11 14:03:00', '', '测试API', 'v1.2', '/public/agile-data/api/v1.0.0/test', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 3, '28c2dec899', '1', '23232', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (119, '3', 'admin', '2023-10-10 17:45:28', NULL, 'admin', '2023-10-13 20:12:28', '', 'sds', 'v13', '/public/agile-data/api/v13/ds/aw/d', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:52,defaultValue:23}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:sds,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:52,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:测试,fieldAliasName:null,cipherType:null,cryptType:null}]', 5, 'c0dcccefea', '0', 'dsds', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (122, '4', 'admin', '2023-10-11 14:04:10', NULL, 'admin', '2023-10-13 19:06:59', '', '测试API', 'v1.0', '/public/agile-data/api/v1.0/test', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:0,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name = :api_name}}', '[{paramName:api_name,nullable:1,paramComment:API名称,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 14, '8a1b49a367', '0', '222333', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (123, '1', 'admin', '2023-10-11 15:24:34', NULL, 'yts', '2023-10-12 17:17:06', '', '11', '11', '/public/agile-data/api/11/22', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:0,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name = :api_name}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 6, 'e6bb740804', '1', '111111111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (124, '1', 'admin', '2023-10-11 16:02:12', NULL, 'yts', '2023-10-12 17:17:09', '', 'cecvec', 'v1.0', '/public/agile-data/api/v1.0/cdcd', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:2,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name = :api_name}}', '[{paramName:api_name,nullable:0,paramComment:dd,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null}]', 4, 'a8e83108e7', '1', 'dfasdf', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (128, '3', 'admin1', '2023-10-17 10:26:50', NULL, 'admin1', '2023-10-17 15:35:58', '', 'sds-副本20231017102612', 'v13', '/public/agile-data/api/v13/ds/aw/d/copy20231017102612', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:0,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:1,defaultValue:116}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:12,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:23,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:231,fieldAliasName:null,cipherType:null,cryptType:null}]', 8, 'a1e7a3654e', '0', 'API0000127', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (129, '2', 'admin1', '2023-10-17 16:12:57', NULL, 'admin1', '2023-10-17 16:40:33', '', '演示001', 'v.1', '/public/agile-data/api/v.1/a/b/c/s', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 6, '4023ff57a1', '0', 'code001', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (131, '1', 'admin2', '2023-10-17 16:46:55', NULL, NULL, '2023-10-17 16:46:55', '', '演示001-副本20231017164617', 'v.1', '/public/agile-data/api/v.1/a/b/c/s/copy20231017164617', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '2938d32d65', '0', 'API0000130', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (133, '1', 'admin1', '2023-10-31 14:07:28', NULL, 'admin', '2023-11-15 19:03:35', '', '演示001-副本20231017164617-副本20231031140644', 'v.1', '/public/agile-data/api/v.1/a/b/c/s/copy23', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 4, '5f4a3fd693', '1', 'API0000132', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (135, '4', 'admin1', '2023-11-01 16:24:04', NULL, 'admin1', '2023-11-01 17:15:51', '', '测试003', 'v1.2', '/public/agile-data/api/v1.2/ds/ds', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4806,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_id, api_code, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:119,defaultValue:119}]', '[{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:119,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:test003,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:测试003,fieldAliasName:null,cipherType:null,cryptType:null}]', 3, 'a749240dbe', '0', 'test003', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (137, '2', 'admin1', '2023-11-01 17:16:53', NULL, 'admin1', '2023-11-01 17:19:12', '', '测试003-copy', 'v1.2', '/public/agile-data/api/v1.2/ds/ds/sd', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4806,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_id, api_code, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:119,defaultValue:119}]', '[{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:119,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:test003,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:测试003,fieldAliasName:null,cipherType:null,cryptType:null}]', 6, '2dec96f64e', '0', 'API0000136', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (138, '2', 'admin1', '2023-11-02 15:16:40', NULL, 'admin1', '2023-11-02 15:19:28', '', 'test4', 'v1', '/public/agile-data/api/v1/test/004', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4888,tableName:tbl_sys_user,fieldParams:[{columnName:avatar,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:【头像地址】,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:【创建者】,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:null,columnComment:【创建时间】,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:dept_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:【部门ID】,reqable:null,resable:null},{columnName:email,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:【用户邮箱】,reqable:null,resable:null},{columnName:is_locked,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:【锁定状态】,reqable:null,resable:null},{columnName:last_login_error_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:【登陆错误时间】,reqable:null,resable:null},{columnName:login_date,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:【最后登录时间】,reqable:null,resable:null},{columnName:login_error_count,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:【登陆错误次数】,reqable:null,resable:null},{columnName:login_ip,dataType:varchar,dataLength:128,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:【最后登录IP】,reqable:null,resable:null},{columnName:nick_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:6,dataDefault:null,columnComment:【用户昵称】,reqable:null,resable:null},{columnName:password,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:【密码】,reqable:null,resable:null},{columnName:phonenumber,dataType:varchar,dataLength:11,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:【手机号码】,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:3,dataDefault:''1''::character varying,columnComment:【随机码】,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:【备注】,reqable:null,resable:null},{columnName:sex,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:【用户性别】0男 1女 2未知,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:【帐号状态】0正常 1停用,reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:22,dataDefault:null,columnComment:【更新者】,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:【更新时间】,reqable:null,resable:null},{columnName:user_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_sys_user''::regclass),columnComment:【用户ID】,reqable:1,resable:1},{columnName:user_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:5,dataDefault:null,columnComment:【用户账号】,reqable:null,resable:1},{columnName:user_type,dataType:varchar,dataLength:2,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:''00''::character varying,columnComment:【用户类型】00系统用户,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:0,columnComment:【版本号】,reqable:null,resable:null}],sqlText:SELECT user_id, user_name FROM tbl_sys_user WHERE 1 = 1 ${AND user_id = :user_id}}', '[{paramName:user_id,nullable:0,paramComment:【用户ID】,whereType:=,paramType:Long,exampleValue:1,defaultValue:1}]', '[{fieldName:user_id,fieldComment:【用户ID】,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:user_name,fieldComment:【用户账号】,dataType:varchar,exampleValue:admin,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '9499ca728a', '0', 'test004', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (139, '1', 'admin', '2023-11-06 16:17:02', NULL, NULL, '2023-11-06 16:17:02', '', '测试表下拉框', 'v1.0', '/public/agile-data/api/v1.0/testcc', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4806,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id} ${AND api_name = :api_name}}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:1,defaultValue:1},{paramName:api_name,nullable:1,paramComment:API名称,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '84c19ff9ce', '0', 'testcc', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (110, '3', 'admin', '2023-10-10 10:43:42', NULL, 'admin', '2023-10-10 10:43:42', '', '站点常乘客客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:date,exampleValue:2023-10,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:lineStatus,fieldComment:换乘方式,dataType:String,exampleValue:线路状态,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricMonth,fieldComment:指标月份,dataType:String,exampleValue:2023-10,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (101, '3', 'admin', '2023-10-09 17:56:20', NULL, 'admin', '2023-10-09 17:56:20', '', '站点客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:2023-10-01,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:2023-10-01,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:Long,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (97, '3', 'admin', '2023-10-09 17:46:07', NULL, 'admin', '2023-10-09 17:46:07', '', '线路客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', 'paramName:companyCode,nullable:1,paramComment:运营公司编码,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null}{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:主键,dataType:Long,exampleValue:2131,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'lineDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (113, '3', 'admin', '2023-10-10 11:02:17', NULL, 'admin', '2023-10-10 11:02:17', '', '站点常乘客换乘客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:exchangeType,nullable:0,paramComment:换乘方式,whereType:1,paramType:String,exampleValue:公交换乘,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqTransMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (106, '3', 'admin', '2023-10-10 10:11:14', NULL, 'admin', '2023-10-10 10:11:14', '', '站点换乘客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:exchangeType,nullable:0,paramComment:换乘方式,whereType:1,paramType:1,exampleValue:换乘公交,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationTransDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (107, '3', 'admin', '2023-10-10 10:14:14', NULL, 'admin', '2023-10-10 10:14:14', '', '站点换乘客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:date,exampleValue:2023-10,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:exchangeType,nullable:0,paramComment:换乘方式,whereType:1,paramType:1,exampleValue:换乘公交,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricMonth,fieldComment:指标月份,dataType:String,exampleValue:2023-10,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationTransMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (99, '3', 'admin', '2023-10-09 17:46:07', NULL, 'admin', '2023-10-09 17:46:07', '', '线路客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:companyCode,nullable:1,paramComment:运营公司编码,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'lineMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (109, '3', 'admin', '2023-10-10 10:18:05', NULL, 'admin', '2023-10-10 10:18:05', '', '站点常乘客客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:lineStatus,fieldComment:换乘方式,dataType:String,exampleValue:线路状态,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (141, '1', 'admin1', '2023-11-14 10:07:24', NULL, 'admin1', '2023-11-14 13:40:20', '', 'wew', 'v2', '/public/agile-data/api/v2/s/d/fff', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4802,tableName:gen_table,fieldParams:[{columnName:business_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:生成业务名,reqable:1,resable:1},{columnName:class_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:实体类名称,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:创建者,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:创建时间,reqable:null,resable:null},{columnName:function_author,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:生成功能作者,reqable:null,resable:null},{columnName:function_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:生成功能名,reqable:null,resable:null},{columnName:gen_path,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:生成路径(不填默认项目路径),reqable:null,resable:null},{columnName:gen_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:生成代码方式(0zip压缩包 1自定义路径),reqable:null,resable:null},{columnName:module_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:生成模块名,reqable:null,resable:null},{columnName:options,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:其它生成选项,reqable:null,resable:null},{columnName:package_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:生成包路径,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:sub_table_fk_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:子表关联的外键名,reqable:null,resable:null},{columnName:sub_table_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:关联子表的表名,reqable:null,resable:null},{columnName:table_comment,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:表描述,reqable:null,resable:null},{columnName:table_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_gen_table''::regclass),columnComment:编号,reqable:null,resable:null},{columnName:table_name,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:2,dataDefault:null,columnComment:表名称,reqable:null,resable:null},{columnName:tpl_category,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:使用的模板(crud单表操作 tree树表操作),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:更新者,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:更新时间,reqable:null,resable:null}],sqlText:SELECT business_name FROM gen_table WHERE 1 = 1 ${AND business_name = :business_name}}', '[{paramName:business_name,nullable:0,paramComment:生成业务名,whereType:=,paramType:String,exampleValue:s,defaultValue:w}]', '[{fieldName:business_name,fieldComment:生成业务名,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 4, '5e6daadccb', '0', '1232', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (143, '1', 'admin', '2023-11-15 18:58:10', NULL, NULL, '2023-11-15 18:58:10', '', '演示001-副本20231017164617-副本20231031140644-副本', 'v.1', '/public/agile-data/api/v.1/a/b/c/s/copy23', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, 'dcda9a28e9', '0', 'API0000142', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (145, '1', 'admin', '2023-11-15 19:03:39', NULL, NULL, '2023-11-15 19:03:39', '', 'wew-副本', 'v2', '/public/agile-data/api/v2/s/d/fff', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4802,tableName:gen_table,fieldParams:[{columnName:business_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:生成业务名,reqable:1,resable:1},{columnName:class_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:实体类名称,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:创建者,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:创建时间,reqable:null,resable:null},{columnName:function_author,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:生成功能作者,reqable:null,resable:null},{columnName:function_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:生成功能名,reqable:null,resable:null},{columnName:gen_path,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:生成路径(不填默认项目路径),reqable:null,resable:null},{columnName:gen_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:生成代码方式(0zip压缩包 1自定义路径),reqable:null,resable:null},{columnName:module_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:生成模块名,reqable:null,resable:null},{columnName:options,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:其它生成选项,reqable:null,resable:null},{columnName:package_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:生成包路径,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:sub_table_fk_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:子表关联的外键名,reqable:null,resable:null},{columnName:sub_table_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:关联子表的表名,reqable:null,resable:null},{columnName:table_comment,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:表描述,reqable:null,resable:null},{columnName:table_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_gen_table''::regclass),columnComment:编号,reqable:null,resable:null},{columnName:table_name,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:2,dataDefault:null,columnComment:表名称,reqable:null,resable:null},{columnName:tpl_category,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:使用的模板(crud单表操作 tree树表操作),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:更新者,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:更新时间,reqable:null,resable:null}],sqlText:SELECT business_name FROM gen_table WHERE 1 = 1 ${AND business_name = :business_name}}', '[{paramName:business_name,nullable:0,paramComment:生成业务名,whereType:=,paramType:String,exampleValue:s,defaultValue:w}]', '[{fieldName:business_name,fieldComment:生成业务名,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '86875f8e7d', '0', 'API0000144', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (148, '1', 'admin', '2023-11-15 19:06:36', NULL, 'admin', '2023-11-17 14:19:48', '', 'wew-副本', 'v3', '/public/agile-data/api/v3/s/d/fff', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4802,tableName:gen_table,fieldParams:[{columnName:business_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:生成业务名,reqable:1,resable:1},{columnName:class_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:实体类名称,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:创建者,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:创建时间,reqable:null,resable:null},{columnName:function_author,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:生成功能作者,reqable:null,resable:null},{columnName:function_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:生成功能名,reqable:null,resable:null},{columnName:gen_path,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:生成路径(不填默认项目路径),reqable:null,resable:null},{columnName:gen_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:生成代码方式(0zip压缩包 1自定义路径),reqable:null,resable:null},{columnName:module_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:生成模块名,reqable:null,resable:null},{columnName:options,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:其它生成选项,reqable:null,resable:null},{columnName:package_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:生成包路径,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:sub_table_fk_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:子表关联的外键名,reqable:null,resable:null},{columnName:sub_table_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:关联子表的表名,reqable:null,resable:null},{columnName:table_comment,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:表描述,reqable:null,resable:null},{columnName:table_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_gen_table''::regclass),columnComment:编号,reqable:null,resable:null},{columnName:table_name,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:2,dataDefault:null,columnComment:表名称,reqable:null,resable:null},{columnName:tpl_category,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:使用的模板(crud单表操作 tree树表操作),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:更新者,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:更新时间,reqable:null,resable:null}],sqlText:SELECT business_name FROM gen_table WHERE 1 = 1 ${AND business_name = :business_name}}', '[{paramName:business_name,nullable:0,paramComment:生成业务名,whereType:=,paramType:String,exampleValue:s,defaultValue:w}]', '[{fieldName:business_name,fieldComment:生成业务名,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:1,cryptType:1}]', 2, '8b29317c9d', '0', 'API0000147', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (149, '1', 'test88', '2023-12-04 13:32:09', NULL, NULL, '2023-12-04 13:32:09', '', '展示测试', 'v1.0', '/public/agile-data/api/v1.0/show', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:10194,tableName:tbl_data_metadata_source,fieldParams:[{columnName:conn_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:连接id,reqable:1,resable:1},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:0},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:db_schema,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:数据源连接信息,reqable:null,resable:null},{columnName:db_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:数据源类型,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:is_sync,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:元数据同步(0已同步 1同步中 2未同步),reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:14,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_metadata_source''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:source_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:数据源名称,reqable:null,resable:1},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(0正常,1停用),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT conn_id, source_id, source_name FROM tbl_data_metadata_source WHERE 1 = 1 ${AND conn_id = :conn_id}}', '[{paramName:conn_id,nullable:1,paramComment:连接id,whereType:=,paramType:Long,exampleValue:1,defaultValue:1}]', '[{fieldName:conn_id,fieldComment:连接id,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:source_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:source_name,fieldComment:数据源名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '93d8933353', '0', 'testshow', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (150, '1', 'admin1', '2023-12-08 14:47:55', NULL, NULL, '2023-12-08 14:47:55', '测试数据', 'ceode', '1', '/public/agile-data/api/1/s/d/e/f', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:10188,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:null},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:60,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_id FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Number,exampleValue:95,defaultValue:95}]', '[{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:95,fieldAliasName:null,cipherType:2,cryptType:1}]', 0, '6d44618b77', '0', 'eweq', '1', 47); + + +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (459, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:48', NULL, 20, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (460, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:51', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (461, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:20:47', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (462, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:42:55', NULL, 66, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (463, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:43:15', NULL, 18, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (471, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:30', NULL, 55, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (472, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:33', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (473, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:34', NULL, 11, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (474, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:39', NULL, 10, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (475, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:41', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (476, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:43', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (477, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 17:49:29', NULL, 9, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (478, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-15 16:25:19', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (479, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-17 17:02:52', NULL, 52, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (480, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-21 09:33:02', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); + +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (480, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-21 09:33:02', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (479, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-17 17:02:52', NULL, 52, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (478, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-15 16:25:19', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (477, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 17:49:29', NULL, 9, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (476, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:43', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (475, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:41', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (474, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:39', NULL, 10, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (473, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:34', NULL, 11, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (472, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:33', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (471, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:30', NULL, 55, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (470, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:23:39', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (469, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:22:21', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (468, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:21:14', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (467, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:13:14', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (466, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:06:41', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (465, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 15:55:12', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (464, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 15:45:18', NULL, 10, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (463, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:43:15', NULL, 18, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (462, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:42:55', NULL, 66, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (461, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:20:47', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (460, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:51', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (459, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:48', NULL, 20, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (458, 137, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 17:18:36', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (457, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:25', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (456, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:24', NULL, 2, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (455, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:23', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (454, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:22', NULL, 2, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (453, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:20', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (452, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:19', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (451, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:18', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (450, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:17', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (449, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:15', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (448, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:14', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (447, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:12', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (446, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:07', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (445, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:06', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (444, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:05', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (443, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:04', NULL, 12, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (442, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:02', NULL, 12, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (441, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:00', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (440, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:58', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (439, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:57', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (438, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:54', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (437, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:53', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); + +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31938, 'business_name', '生成业务名', 'varchar', NULL, '30', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31939, 'class_name', '实体类名称', 'varchar', NULL, '100', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31940, 'create_by', '创建者', 'varchar', NULL, '64', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31941, 'create_time', '创建时间', 'timestamp', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31942, 'function_author', '生成功能作者', 'varchar', NULL, '50', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31943, 'function_name', '生成功能名', 'varchar', NULL, '50', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31944, 'gen_path', '生成路径(不填默认项目路径)', 'varchar', NULL, '200', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31945, 'gen_type', '生成代码方式(0zip压缩包 1自定义路径)', 'bpchar', NULL, '1', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31946, 'module_name', '生成模块名', 'varchar', NULL, '30', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31947, 'options', '其它生成选项', 'varchar', NULL, '1000', NULL, NULL, NULL, NULL); + + +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4219, 47, 'gen_table', '代码生成业务表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4220, 47, 'gen_table_column', '代码生成业务表字段', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4221, 47, 'tbl_batch_table_mapping', '【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4222, 47, 'tbl_batch_task', '【批处理任务表】记录任务处理情况,方便实现增量重跑', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4223, 47, 'tbl_data_api', '【API信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4224, 47, 'tbl_data_api_log', '【API调用日志信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4225, 47, 'tbl_data_asset_column', '数据资产基础元数据', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4226, 47, 'tbl_data_asset_table', '数据资产基础表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4227, 47, 'tbl_data_asset_table_column', '数据资产基础表与元数据关联表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4228, 47, 'tbl_data_metadata_column', '【元数据信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4229, 47, 'tbl_data_metadata_source', '【数据源信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4230, 47, 'tbl_data_metadata_source_conn', '数据源连接信息表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4231, 47, 'tbl_data_metadata_table', '【数据库表信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4232, 47, 'tbl_data_sql_console_conn_num', '数据源连接数', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4233, 47, 'tbl_data_sql_console_export', 'SQL查询导出记录', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4234, 47, 'tbl_data_sql_console_file', '【SQL工作台文件】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4235, 47, 'tbl_data_sql_data_apply', '【SQL元数据权限申请表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4236, 47, 'tbl_data_sql_data_auth', '【元数据授权信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4237, 47, 'tbl_data_sql_log', 'SQL执行日志', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4238, 47, 'tbl_docker_apply_info', '【 容器申请】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4239, 47, 'tbl_docker_apply_lib', '【容器使用自传组件】包含组件和数据', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4240, 47, 'tbl_docker_apply_review', '【 数据注入申请审核表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4241, 47, 'tbl_docker_apply_review_dtl', '【数据注入申请明细】包含组件和数据', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4242, 47, 'tbl_docker_client_info', '【 服务器清单】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4243, 47, 'tbl_docker_config_hardware', '【实验室硬件配置信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4244, 47, 'tbl_docker_download_apply', '【 下载文件申请】容器内的文件下载', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4245, 47, 'tbl_docker_images', '【 容器可用镜像】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4246, 47, 'tbl_docker_port_list', '【 服务器端口】把可用端口配置在这里,端口是固定的几个', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4247, 47, 'tbl_docker_portainer_user', '【portainer管理账户信息】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4248, 47, 'tbl_docker_vpn', '【VPN用户表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4249, 47, 'tbl_docker_with_user', '【 用户与容器信息】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4250, 47, 'tbl_docker_with_user_account', '【 容器用户账户信息】设计成允许多个服务', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4251, 47, 'tbl_org_api_auth', '【机构接口权限表】', NULL, NULL, NULL, NULL); + + + +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54140, 4219, 'business_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54141, 4219, 'class_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54142, 4219, 'create_by', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54143, 4219, 'create_time', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54144, 4219, 'function_author', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54145, 4219, 'function_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54146, 4219, 'gen_path', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54147, 4219, 'gen_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54148, 4219, 'module_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54149, 4219, 'options', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54150, 4219, 'package_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54151, 4219, 'remark', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54152, 4219, 'sub_table_fk_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54153, 4219, 'sub_table_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54154, 4219, 'table_comment', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54155, 4219, 'table_id', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54156, 4219, 'table_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54157, 4219, 'tpl_category', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54158, 4219, 'update_by', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54159, 4219, 'update_time', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54160, 4220, 'column_comment', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54161, 4220, 'column_id', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54162, 4220, 'column_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54163, 4220, 'column_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54164, 4220, 'create_by', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54165, 4220, 'create_time', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54166, 4220, 'dict_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54167, 4220, 'html_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54168, 4220, 'is_edit', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54169, 4220, 'is_increment', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54170, 4220, 'is_insert', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54171, 4220, 'is_list', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54172, 4220, 'is_pk', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54173, 4220, 'is_query', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54174, 4220, 'is_required', NULL); + +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267908, 47, 10184, 'business_name', '生成业务名', '0', '1', '10', 'varchar', '30', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267909, 47, 10184, 'class_name', '实体类名称', '0', '1', '6', 'varchar', '100', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267910, 47, 10184, 'create_by', '创建者', '0', '1', '16', 'varchar', '64', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267911, 47, 10184, 'create_time', '创建时间', '0', '1', '17', 'timestamp', NULL, NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267912, 47, 10184, 'function_author', '生成功能作者', '0', '1', '12', 'varchar', '50', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267913, 47, 10184, 'function_name', '生成功能名', '0', '1', '11', 'varchar', '50', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267914, 47, 10184, 'gen_path', '生成路径(不填默认项目路径)', '0', '1', '14', 'varchar', '200', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267915, 47, 10184, 'gen_type', '生成代码方式(0zip压缩包 1自定义路径)', '0', '1', '13', 'bpchar', '1', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267916, 47, 10184, 'module_name', '生成模块名', '0', '1', '9', 'varchar', '30', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267917, 47, 10184, 'options', '其它生成选项', '0', '1', '15', 'varchar', '1000', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267918, 47, 10184, 'package_name', '生成包路径', '0', '1', '8', 'varchar', '100', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267919, 47, 10184, 'remark', '备注', '0', '1', '20', 'varchar', '500', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267920, 47, 10184, 'sub_table_fk_name', '子表关联的外键名', '0', '1', '5', 'varchar', '64', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267921, 47, 10184, 'sub_table_name', '关联子表的表名', '0', '1', '4', 'varchar', '64', NULL, NULL, NULL, 9); + + + +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (53, '0', 'admin', '2023-11-07 15:57:53.952788', NULL, 'admin', '2023-11-07 15:58:03.220062', '', '9', 'sptcc_agile_test', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_test,sid:null}', 2, 'a2c5013833', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (40, '0', 'admin', '2023-10-17 20:13:36.85609', NULL, 'admin', '2023-10-17 20:25:02.563665', '', '9', '11', '2', '{host:11,port:11,username:11,password:11,dbName:11,sid:null}', 9, '835177cb69', '1', 15); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (46, '0', 'admin', '2023-10-30 16:01:24.765605', NULL, NULL, '2023-10-30 16:01:24.765605', '', '9', '读点', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:读点,sid:null}', 0, '1', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (44, '0', 'admin', '2023-10-30 15:30:28.540324', NULL, 'admin', '2023-10-30 15:30:51.175224', '', '5', 'public', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 2, 'a1f79d0324', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (45, '0', 'admin', '2023-10-30 15:55:57.832079', NULL, 'yts', '2023-11-10 17:37:55.732552', '', '5', 'test', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 26, 'b59392b659', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (39, '0', 'admin', '2023-10-17 13:59:20.31012', NULL, 'admin', '2023-10-19 16:20:21.915351', '', '9', 'db_hive1', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:db_hive1,sid:null}', 4, '71255cc102', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (41, '0', 'admin', '2023-10-19 19:10:59.589874', NULL, 'admin', '2023-10-31 14:45:06.80921', '', '9', 'db_hive1', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:db_hive1,sid:null}', 8, '312740b5f7', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (37, '0', 'admin', '2023-10-16 10:12:04.878404', NULL, 'admin', '2023-10-31 13:27:32.047503', '', '9', 'hive', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:hive,sid:null}', 20, '7df5debad8', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (38, '0', 'admin', '2023-10-16 10:18:39.726136', NULL, 'admin', '2023-11-02 17:44:01.416304', '', '9', 'default', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:default,sid:null}', 36, 'd969238d3b', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (55, '0', 'admin', '2023-11-07 16:10:31.865915', NULL, 'admin', '2023-11-07 16:17:37.302569', '', '9', 'sptcc_agile_test', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_test,sid:null}', 6, '28c1b7482d', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (52, '0', 'admin', '2023-11-07 15:57:29.88465', NULL, 'admin', '2023-11-07 16:17:39.703999', '', '9', 'sptcc_agile_dev', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_dev,sid:null}', 6, '911a6d614a', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (49, '0', 'admin', '2023-10-31 13:50:59.247177', NULL, 'admin', '2023-10-31 14:20:03.742601', '', '9', 'sptcc_agile_dev', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_dev,sid:null}', 6, '774a0bd819', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (47, '0', 'admin', '2023-10-30 16:39:13.81384', NULL, 'admin', '2023-11-30 15:09:52.81723', '', '5', 'public', '0', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 31, '17f8c0935e', '0', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (57, '0', 'yts', '2023-11-14 15:59:35.819045', NULL, 'yts', '2023-11-14 17:22:47.841832', '', '9', 'db_test', '2', '{host:127.0.0.1,port:10000,username:root,password:three,dbName:db_test,sid:null}', 7, 'd429a6bfb4', '0', 20); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (36, '0', 'admin', '2023-10-13 18:39:52.700626', NULL, 'admin', '2023-10-13 18:42:01.942339', '', '5', 'sjzt', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:sjzt,sid:null}', 5, 'ffd92ece74', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (58, '0', 'test88', '2023-12-04 18:09:46.947707', NULL, 'test88', '2023-12-04 18:09:50.7656', '', '5', 'public', '0', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:tanpuhui,sid:null}', 2, 'a339aae711', '0', 21); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (50, '0', 'admin', '2023-10-31 14:00:55.89506', NULL, 'admin', '2023-10-31 14:45:10.057417', '', '9', 'import_data', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:import_data,sid:null}', 7, '43a63151e8', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (48, '0', 'admin', '2023-10-31 13:37:38.282948', NULL, 'admin', '2023-11-01 14:11:35.222813', '', '9', 'hive', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:hive,sid:null}', 33, '8b00caf0c1', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (56, '0', 'admin', '2023-11-13 11:12:56.38509', NULL, 'admin', '2023-11-30 15:09:43.605813', '', '5', 'test', '0', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 23, 'db08d85d3a', '0', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (42, '0', 'admin', '2023-10-26 10:40:19.633998', NULL, 'admin', '2023-10-27 16:22:40.152695', '', '5', 'tanpuhui', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:tanpuhui,sid:null}', 4, 'fb6b4223b6', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (35, '0', 'admin', '2023-10-13 18:37:48.282999', NULL, 'admin', '2023-10-19 14:48:47.245103', '', '5', 'keliubao', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 4, '4bef9a2a17', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (43, '0', 'admin', '2023-10-30 09:49:22.124128', NULL, NULL, '2023-10-30 09:49:22.124128', '', '5', 'tanpuhui', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:tanpuhui,sid:null}', 0, '1', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (54, '0', 'admin', '2023-11-07 16:02:35.710417', NULL, 'admin', '2023-11-07 16:07:18.018815', '', '9', 'sptcc_agile_test', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_test,sid:null}', 3, '65fde0cf6c', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (51, '0', 'admin', '2023-10-31 20:42:20.807932', NULL, 'admin', '2023-10-31 20:42:25.549616', '', '9', 'import_data', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:import_data,sid:null}', 2, '9d0a2fb49e', '1', 6); + +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (7, '9', '11', 11, '11', '11', 'admin', '2023-09-22 09:49:22.018149', NULL, '2023-09-22 09:49:22.018149', 0, '1', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (8, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'admin', '2023-09-28 11:07:49.794011', NULL, '2023-09-28 11:07:49.794011', 0, '1', '1', '', NULL, 'keliubao', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (10, '5', '172.16.12.105', 54321, 'postgres', 'postgres', 'admin', '2023-10-08 11:32:38.995238', NULL, '2023-10-08 11:32:38.995238', 0, '1', '1', '', NULL, 'keliubao', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (11, '5', '11', 11, '11', '11', 'admin', '2023-10-08 13:18:48.542113', NULL, '2023-10-08 13:18:48.542113', 0, '1', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (12, '5', '11', 11, '11', '11', 'admin', '2023-10-08 13:21:08.891896', NULL, '2023-10-08 13:21:08.891896', 0, '1', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (13, '5', '11', 11, '11', '11', 'admin', '2023-10-08 13:21:25.256004', 'admin', '2023-10-08 13:21:35.27108', 1, 'd1ac38fa1d', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (6, '9', '172.16.12.101', 10000, 'flink', 'admin123', 'admin', '2023-09-21 15:24:03.985487', 'admin', '2023-09-21 15:24:15.656391', 1, '84b6d704ef', '0', '', NULL, 'default', 'hive测试环境'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (9, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'admin', '2023-09-28 11:16:34.039148', NULL, '2023-09-28 11:16:34.039148', 0, '1', '0', '', NULL, 'keliubao', 'pg测试环境'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (14, '5', '11', 11, '11', '11', 'admin', '2023-10-10 15:02:02.627797', NULL, '2023-10-10 15:02:02.627797', 0, '1', '1', '', NULL, '11', '11'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (15, '9', '11', 11, '11', '11', 'admin', '2023-10-17 20:13:25.056619', NULL, '2023-10-17 20:13:25.056619', 0, '1', '1', '', NULL, '11', '11'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (16, '5', '10.10.241.234', 5432, 'sptcc', 'sptcc123', 'admin', '2023-10-26 10:24:19.491282', NULL, '2023-10-26 10:24:19.491282', 0, '1', '1', '', NULL, 'default', '测试'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (17, '5', '10.10.241.234', 5432, 'root', '123456', 'admin', '2023-10-30 09:43:57.128823', NULL, '2023-10-30 09:43:57.128823', 0, '1', '1', '', NULL, 'default', '测试'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (18, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'admin', '2023-10-30 15:28:13.927447', NULL, '2023-10-30 15:28:13.927447', 0, '1', '1', '', NULL, 'tanpuhui', '碳普惠'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (19, '9', '172.16.12.102', 10000, 'flink', 'flink', 'admin', '2023-10-31 10:36:29.015041', NULL, '2023-10-31 10:36:29.015041', 0, '1', '0', '', NULL, 'default', '172.16.12.102'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (20, '9', '127.0.0.1', 10000, 'root', 'three', 'yts', '2023-11-14 15:59:23.832141', NULL, '2023-11-14 15:59:23.832141', 0, '1', '0', '', NULL, 'db_test', '本地hive'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (21, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'test88', '2023-12-04 18:09:36.76594', NULL, '2023-12-04 18:09:36.76594', 0, '1', '0', '', NULL, 'tanpuhui', 'tanpuhui'); + +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10184, 47, 'gen_table', '代码生成业务表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10185, 47, 'gen_table_column', '代码生成业务表字段', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10186, 47, 'tbl_batch_table_mapping', '【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10187, 47, 'tbl_batch_task', '【批处理任务表】记录任务处理情况,方便实现增量重跑', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10188, 47, 'tbl_data_api', '【API信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10189, 47, 'tbl_data_api_log', '【API调用日志信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10190, 47, 'tbl_data_asset_column', '数据资产基础元数据', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10191, 47, 'tbl_data_asset_table', '数据资产基础表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10192, 47, 'tbl_data_asset_table_column', '数据资产基础表与元数据关联表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10193, 47, 'tbl_data_metadata_column', '【元数据信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10194, 47, 'tbl_data_metadata_source', '【数据源信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10195, 47, 'tbl_data_metadata_source_conn', '数据源连接信息表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10196, 47, 'tbl_data_metadata_table', '【数据库表信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10197, 47, 'tbl_data_sql_console_conn_num', '数据源连接数', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10198, 47, 'tbl_data_sql_console_export', 'SQL查询导出记录', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10199, 47, 'tbl_data_sql_console_file', '【SQL工作台文件】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10200, 47, 'tbl_data_sql_data_apply', '【SQL元数据权限申请表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10201, 47, 'tbl_data_sql_data_auth', '【元数据授权信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10202, 47, 'tbl_data_sql_log', 'SQL执行日志', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10203, 47, 'tbl_docker_apply_info', '【 容器申请】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10204, 47, 'tbl_docker_apply_lib', '【容器使用自传组件】包含组件和数据', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10205, 47, 'tbl_docker_apply_review', '【 数据注入申请审核表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10206, 47, 'tbl_docker_apply_review_dtl', '【数据注入申请明细】包含组件和数据', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10207, 47, 'tbl_docker_client_info', '【 服务器清单】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10208, 47, 'tbl_docker_config_hardware', '【实验室硬件配置信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10209, 47, 'tbl_docker_download_apply', '【 下载文件申请】容器内的文件下载', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10210, 47, 'tbl_docker_images', '【 容器可用镜像】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10211, 47, 'tbl_docker_port_list', '【 服务器端口】把可用端口配置在这里,端口是固定的几个', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10212, 47, 'tbl_docker_portainer_user', '【portainer管理账户信息】', NULL, 9); + +INSERT INTO tbl_data_sql_console_conn_num (conn_num, max_conn_num, alarm_conn_num) VALUES (0, 10, 5); + + +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (41, 'SqlResult20231102143353.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:33:52', 'admin1', '2023-11-02 14:33:52', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (39, 'SqlResult20231102114325.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 11:43:24', 'admin1', '2023-11-02 11:43:24', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (11, 'SqlResult20231101094957.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-11-01 09:49:55', NULL, '2023-11-01 09:49:55', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (8, 'SqlResult20231101094052.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-11-01 09:40:50', NULL, '2023-11-01 09:40:50', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (6, 'SqlResult20231031201502.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:15:01', NULL, '2023-10-31 20:15:01', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (5, 'SqlResult20231031201104.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:11:04', NULL, '2023-10-31 20:11:04', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (4, 'SqlResult20231031200917.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:09:16', NULL, '2023-10-31 20:09:16', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (3, 'SqlResult20231031200514.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:05:14', NULL, '2023-10-31 20:05:14', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (2, 'SqlResult20231031195902.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 19:59:02', NULL, '2023-10-31 19:59:02', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (42, 'SqlResult20231102143354.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:33:54', 'admin1', '2023-11-02 14:33:54', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (43, 'SqlResult20231102143355.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:33:54', 'admin1', '2023-11-02 14:33:54', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (40, 'SqlResult20231102133131.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 13:31:31', 'admin1', '2023-11-02 13:31:31', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (22, 'SqlResult20231101153511.csv', 'SELECT * FROM tbl_data_metadata_source', '3', NULL, 100015, 'admin2', '2023-11-01 15:35:11', 'admin2', '2023-11-01 15:35:11', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (44, 'SqlResult20231102145348.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:53:47', 'admin1', '2023-11-02 14:53:47', 0, '1', '1'); + + +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (102, 'cc', 47, 'SELECT * FROM public.tbl_data_metadata_source_conn c +LEFT JOIN public.tbl_data_metadata_source s on c.conn_id = s.conn_id +WHERE ', 0, '1', 'admin', '2023-11-20 13:26:59.541963', NULL, '2023-11-20 13:26:59.541963', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (105, 'cc', 47, 'select * from public.tbl_data_metadata_column', 0, '1', 'yts', '2023-11-30 16:23:01.432052', NULL, '2023-11-30 16:23:01.432052', '0', 100018, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (80, '1111', 31, '', 1, '830435c9ad', 'admin', '2023-10-12 17:37:12.12105', 'admin', '2023-10-12 17:37:16.773115', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (74, 'create', 26, 'CREATE TABLE hive.a1 AS +SELECT + dtrmi.card_no, + dtrmi.txn_amt, + dtrmi.station_code +FROM + sptcc_agile_dev.dim_trade_route_match_info dtrmi + left join sptcc_agile_etl_prod.dim_bus_in_out_time_info dbioti on dtrmi.card_no = dbioti.bus_code +where + dtrmi.txn_date = ''2023-05-15'' +limit + 5', 1, '38819eb29c', 'admin', '2023-09-22 16:47:06.998802', 'admin', '2023-09-22 16:47:18.74358', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (81, 'dd', 31, 'SELECT * FROM tbl_data_api', 1, 'a11e225dbc', 'yts', '2023-10-12 18:15:46.917957', 'yts', '2023-10-12 18:16:07.996606', '0', 100007, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (75, 'zz', 34, 'SELECT * FROM dim_bus_in_out_time_info WHERE bus_stop_date = ''2023-08-25'' ', 15, '3000abc2d3', 'yts', '2023-10-08 14:13:30.000406', 'yts', '2023-10-12 19:26:03.433576', '0', 100007, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (94, 'test2', 38, 'SELECT *from teacher;', 1, '73fdaa9603', 'admin1', '2023-11-02 14:20:32.459908', 'admin1', '2023-11-02 14:20:46.578664', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (82, 'ccc', 34, 'SELECT + * + FROM + dim_bus_in_out_time_info + WHERE + bus_stop_date = ''2023-08-25''', 0, '1', 'jiuyv', '2023-10-12 20:34:49.08329', NULL, '2023-10-12 20:34:49.08329', '0', 100004, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (90, 'test4', 38, 'SELECT *from teacher;', 2, 'ce0c581aee', 'admin1', '2023-11-02 11:42:54.006819', 'admin1', '2023-11-02 11:44:40.502131', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (91, 'test4', 38, 'SELECT *from teacher;', 0, '1', 'admin1', '2023-11-02 13:34:11.199025', NULL, '2023-11-02 13:34:11.199025', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (92, 'test5', 38, NULL, 0, '1', 'admin1', '2023-11-02 13:34:39.069415', NULL, '2023-11-02 13:34:39.069415', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (83, 'test', 38, 'create table hive.test10 as select * from hive.stu', 1, 'c3d502b197', 'admin1', '2023-10-18 14:10:19.983275', 'admin1', '2023-11-02 14:19:53.821504', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (93, 'test1', 38, 'select t1.* from test1 t1 left join teacher t on t1.name = t.name;', 1, '56c680f79e', 'admin1', '2023-11-02 14:20:08.552399', 'admin1', '2023-11-02 14:20:26.168755', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (87, 'cc', 47, 'SELECT * FROM public.tbl_sys_user u +LEFT JOIN test.tbl_sys_user_role r ON u.user_id = r.user_id', 0, '1', 'admin', '2023-10-30 16:45:57.625688', NULL, '2023-10-30 16:45:57.625688', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (78, '测试', 34, 'SELECT * FROM dws_line_metric_day WHERE metric_date = ''2023-08-25''', 0, '1', 'admin1', '2023-10-12 15:32:26.121081', NULL, '2023-10-12 15:32:26.121081', '0', 100013, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (79, 'jj', 34, NULL, 0, '1', 'admin1', '2023-10-12 15:34:07.301649', NULL, '2023-10-12 15:34:07.301649', '0', 100013, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (85, 'test', 41, 'SELECT * FROM db_hive1.test7', 2, '81c96a3eac', 'admin', '2023-10-19 16:21:31.922766', 'admin', '2023-10-19 19:11:17.015751', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (89, 'cc', 47, 'SELECT * FROM tbl_data_metadata_source', 0, '1', 'admin2', '2023-11-01 14:54:25.996942', NULL, '2023-11-01 14:54:25.996942', '0', 100015, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (84, 'ggg', 37, NULL, 0, '1', 'admin', '2023-10-19 14:31:46.851857', NULL, '2023-10-19 14:31:46.851857', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (76, '测试', 35, 'SELECT * FROM tbl_data_api', 2, '5bdab2b436', 'admin', '2023-10-11 15:45:12.772076', 'admin', '2023-10-30 09:57:52.527044', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (77, '测试2', 37, 'SELECT * FROM stu', 17, '43e0299bfa', 'admin', '2023-10-11 15:45:28.621678', 'admin', '2023-10-17 17:41:40.194213', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (86, 'dc', 42, 'DROP TABLE test', 0, '1', 'admin', '2023-10-27 17:31:14.687651', NULL, '2023-10-27 17:31:14.687651', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (95, 'ccc', 47, 'SELECT * FROM tbl_data_metadata_source', 4, '99cf7fce31', 'yts', '2023-11-06 14:24:54.337601', 'yts', '2023-11-20 17:43:24.131415', '0', 100018, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (103, 'cc', 56, '', 0, '1', 'yts', '2023-11-23 17:42:36.510525', NULL, '2023-11-23 17:42:36.510525', '0', 100018, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (104, 'cc', 47, 'select * from public.tbl_data_metadata_column', 0, '1', 'test02', '2023-11-29 20:22:34.678061', NULL, '2023-11-29 20:22:34.678061', '0', 100023, 0, '1', 9); + + +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (71, 100013, '1', '2023-10-15', NULL, '1', 'yts', 1, '813ead4853', '0', 'admin1', '2023-10-12 15:24:11', 'yts', '2023-10-12 16:54:44', '', NULL, 'admin1', '2023-10-12 16:54:44', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (79, 100004, '1', '2023-10-26', NULL, '1', 'jiuyv', 1, '5c34c51b4b', '0', 'jiuyv', '2023-10-12 19:18:57', 'jiuyv', '2023-10-12 19:19:27', '', NULL, 'jiuyv', '2023-10-12 19:19:27', 'SAN000000000000078'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (81, 100015, '1', '2023-10-20', NULL, '1', 'admin2', 1, '6f7e9226f3', '0', 'admin2', '2023-10-16 13:28:36', 'admin2', '2023-10-16 13:28:41', '', NULL, 'admin2', '2023-10-16 13:28:41', 'SAN000000000000080'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (83, 100014, '1', '2023-10-31', 'qqq', '1', 'admin1', 1, '7bfd99082b', '0', 'admin1', '2023-10-16 16:41:40', 'admin1', '2023-10-16 16:41:45', '', NULL, 'admin1', '2023-10-16 16:41:45', 'SAN000000000000082'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (85, 100015, '1', '2023-10-31', NULL, '1', 'admin2', 1, '1087e238f4', '0', 'admin2', '2023-10-17 20:46:31', 'admin2', '2023-10-17 20:46:39', '', NULL, 'admin2', '2023-10-17 20:46:39', 'SAN000000000000084'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (87, 100014, '1', '2023-10-20', NULL, '1', 'admin1', 1, '216aba0601', '0', 'admin1', '2023-10-18 14:10:40', 'admin1', '2023-10-18 14:10:46', '', NULL, 'admin1', '2023-10-18 14:10:46', 'SAN000000000000086'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (91, 2, '1', '2025-10-31', 't', '1', 'zhoul', 1, 'cb9076d296', '0', 'zhoul', '2023-10-30 14:54:37', 'zhoul', '2023-10-30 14:54:54', '', NULL, 'zhoul', '2023-10-30 14:54:54', 'SAN000000000000090'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (77, 100007, '1', '2024-10-10', NULL, '2', 'admin1', 1, 'fb94e80210', '0', 'yts', '2023-10-12 16:54:57', 'admin1', '2023-11-01 14:52:53', '', 'ceshi ', 'yts', '2023-11-01 14:52:53', 'SAN000000000000076'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (93, 100015, '1', '2024-11-14', NULL, '1', 'admin1', 1, '83b4a70fbc', '0', 'admin2', '2023-11-01 14:48:46', 'admin1', '2023-11-01 14:52:56', '', NULL, 'admin2', '2023-11-01 14:52:56', 'SAN000000000000092'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (89, 100014, '1', '2023-11-01', NULL, '1', 'admin1', 1, '592ac1d40e', '0', 'admin1', '2023-10-30 10:03:52', 'admin1', '2023-11-01 14:52:58', '', NULL, 'admin1', '2023-11-01 14:52:58', 'SAN000000000000088'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (95, 100014, '1', '2023-11-17', NULL, '2', 'admin1', 1, 'cf075c055b', '0', 'admin1', '2023-11-01 14:53:13', 'admin1', '2023-11-01 14:53:31', '', 'ds ', 'admin1', '2023-11-01 14:53:31', 'SAN000000000000094'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (67, 100007, '1', '2024-10-23', NULL, '1', 'admin', 1, '9627b56093', '0', 'yts', '2023-10-08 14:03:43', 'admin', '2023-10-08 14:04:38', '', NULL, 'yts', '2023-10-08 14:04:38', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (68, 100007, '1', '2024-10-24', NULL, '1', 'yts', 1, '8a383799e9', '0', 'yts', '2023-10-11 16:44:11', 'yts', '2023-10-11 16:44:22', '', NULL, 'yts', '2023-10-11 16:44:22', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (69, 100013, '1', '2023-10-15', NULL, '1', 'admin1', 1, '04fadafe5e', '0', 'admin1', '2023-10-12 15:14:09', 'admin1', '2023-10-12 15:14:19', '', NULL, 'admin1', '2023-10-12 15:14:19', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (70, 100013, '1', '2023-10-15', NULL, '1', 'admin1', 1, '7aa63e6dcb', '0', 'admin1', '2023-10-12 15:19:50', 'admin1', '2023-10-12 15:20:56', '', NULL, 'admin1', '2023-10-12 15:20:56', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (97, 100014, '1', '2023-11-30', NULL, '1', 'admin1', 1, 'c08a95154d', '0', 'admin1', '2023-11-01 14:53:39', 'admin1', '2023-11-01 14:53:50', '', NULL, 'admin1', '2023-11-01 14:53:50', 'SAN000000000000096'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (73, 100007, '1', '2023-10-06', NULL, '2', 'admin', 1, '3537d64e36', '0', 'yts', '2023-10-12 15:49:06', 'admin', '2023-10-12 15:59:44', '', NULL, 'yts', '2023-10-12 15:59:44', 'SAN000000000000072'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (75, 100007, '1', '2024-10-10', NULL, '1', 'yts', 1, '89653e61e2', '0', 'yts', '2023-10-12 16:00:10', 'yts', '2023-10-12 16:00:38', '', NULL, 'yts', '2023-10-12 16:00:38', 'SAN000000000000074'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (99, 100014, '1', '2023-11-30', NULL, '1', 'admin1', 1, '93ab52d433', '0', 'admin1', '2023-11-02 11:38:27', 'admin1', '2023-11-02 11:38:31', '', NULL, 'admin1', '2023-11-02 11:38:31', 'SAN000000000000098'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (103, 100018, '1', '2023-11-04', NULL, '2', 'yts', 1, '5f193314c1', '0', 'yts', '2023-11-03 17:16:01', 'yts', '2023-11-03 17:16:46', '', '不允许', 'yts', '2023-11-03 17:16:46', 'SAN000000000000102'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (105, 100018, '1', '2023-11-10', '这里是申请说明,怎么就没有了', '1', 'yts', 1, '980f40c408', '0', 'yts', '2023-11-03 17:19:08', 'yts', '2023-11-06 14:24:14', '', NULL, 'yts', '2023-11-06 14:24:14', 'SAN000000000000104'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (101, 100014, '1', '2023-11-30', NULL, '2', 'admin', 1, 'f99c7a6cfb', '0', 'admin1', '2023-11-02 14:28:07', 'admin', '2023-11-07 15:55:53', '', '不允许申请', 'admin1', '2023-11-07 15:55:53', 'SAN000000000000100'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (107, 100018, '1', '2024-11-14', NULL, '1', 'yts', 1, 'a068dd0cb2', '0', 'yts', '2023-11-10 10:24:16', 'yts', '2023-11-10 10:24:22', '', NULL, 'yts', '2023-11-10 10:24:22', 'SAN000000000000106'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (109, 100018, '1', '2023-11-11', NULL, '1', 'yts', 1, '15ae580f58', '0', 'yts', '2023-11-10 17:39:26', 'yts', '2023-11-10 17:39:31', '', NULL, 'yts', '2023-11-10 17:39:31', 'SAN000000000000108'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (111, 100018, '1', '2024-11-07', NULL, '1', 'yts', 1, '335fb951d4', '0', 'yts', '2023-11-14 16:23:15', 'yts', '2023-11-14 16:23:21', '', NULL, 'yts', '2023-11-14 16:23:21', 'SAN000000000000110'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (113, 100018, '1', '2024-11-13', NULL, '1', 'yts', 1, 'e0fb91968c', '0', 'yts', '2023-11-14 17:22:58', 'yts', '2023-11-14 17:23:05', '', NULL, 'yts', '2023-11-14 17:23:05', 'SAN000000000000112'); + + +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (9, 100015, 'conn', 81, 0, 'pg测试环境'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (35, 100015, 'database', 81, 9, 'keliubao'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3697, 100015, 'table', 81, 35, 'gen_table(代码生成业务表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3698, 100015, 'table', 81, 35, 'gen_table_column(代码生成业务表字段)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3699, 100015, 'table', 81, 35, 'tbl_batch_table_mapping(【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3700, 100015, 'table', 81, 35, 'tbl_batch_task(【批处理任务表】记录任务处理情况,方便实现增量重跑)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3701, 100015, 'table', 81, 35, 'tbl_data_api(【API信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3702, 100015, 'table', 81, 35, 'tbl_data_api_log(【API调用日志信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3703, 100015, 'table', 81, 35, 'tbl_data_asset_column(数据资产基础元数据)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3704, 100015, 'table', 81, 35, 'tbl_data_asset_table(数据资产基础表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3705, 100015, 'table', 81, 35, 'tbl_data_asset_table_column(数据资产基础表与元数据关联表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3706, 100015, 'table', 81, 35, 'tbl_data_config(【api参数配置表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3707, 100015, 'table', 81, 35, 'tbl_data_metadata_column(【元数据信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3708, 100015, 'table', 81, 35, 'tbl_data_metadata_source(【数据源信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3709, 100015, 'table', 81, 35, 'tbl_data_metadata_source_conn(数据源连接信息表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3710, 100015, 'table', 81, 35, 'tbl_data_metadata_table(【数据库表信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3711, 100015, 'table', 81, 35, 'tbl_data_quality_report(数据质量报表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3712, 100015, 'table', 81, 35, 'tbl_data_sql_console_conn_num(数据源连接数)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3713, 100015, 'table', 81, 35, 'tbl_data_sql_console_file(【SQL工作台文件】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3714, 100015, 'table', 81, 35, 'tbl_data_sql_data_apply(【SQL元数据权限申请表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3715, 100015, 'table', 81, 35, 'tbl_data_sql_data_auth(【元数据授权信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3716, 100015, 'table', 81, 35, 'tbl_data_sql_log(SQL执行日志)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3717, 100015, 'table', 81, 35, 'tbl_docker_apply_info(【 容器申请】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3718, 100015, 'table', 81, 35, 'tbl_docker_apply_lib(【容器使用自传组件】包含组件和数据)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3719, 100015, 'table', 81, 35, 'tbl_docker_client_info(【 服务器清单】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3720, 100015, 'table', 81, 35, 'tbl_docker_config_hardware(【实验室硬件配置信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3721, 100015, 'table', 81, 35, 'tbl_docker_download_apply(【 下载文件申请】容器内的文件下载)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3722, 100015, 'table', 81, 35, 'tbl_docker_images(【 容器可用镜像】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3724, 100015, 'table', 81, 35, 'tbl_docker_portainer_user(【portainer管理账户信息】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3723, 100015, 'table', 81, 35, 'tbl_docker_port_list(【 服务器端口】把可用端口配置在这里,端口是固定的几个)'); + + +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14680, '9 ', 'default', 'CREATE table IF NOT EXISTS default.linl_tj_20230627 as select card_no, txn_counter, replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') as station_code, txn_time, card_product_code, txn_amt, inout_flag, hour_code, txn_nature from sptcc.dwd_consum_trans dct where txn_date = ''20230627'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code = 21', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:308 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:09.049', '2023-09-11 13:52:09.185', 136); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14681, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_metrochain as select distinct a.card_no, a.in_code, case when MINUTE (in_time)<30 then in_hour||'':00-''||in_hour||'':30'' else in_hour||'':30-''||int(in_hour)+1||'':00'' end as in_time_interval, a.in_time,a.in_amt,a.in_nature, a.out_code, case when MINUTE(out_time)<30 then out_hour||'':00-''||out_hour||'':30'' else out_hour||'':30-''||int(out_hour)+1||'':00'' end as out_time_interval, a.out_time, a.out_amt ,a.out_nature from ( select card_no, txn_counter as in_count, station_code as in_code, txn_time as in_time, txn_amt as in_amt, hour_code as in_hour, txn_nature as in_nature, lead(txn_counter,1,null) over (partition by card_no order by txn_time) as out_count, lead(station_code,1,null) over (partition by card_no order by txn_time) as out_code, lead(txn_time,1,null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt,1,null) over (partition by card_no order by txn_time) as out_amt, lead(hour_code,1,null) over (partition by card_no order by txn_time) as out_hour, lead(txn_nature,1,null) over (partition by card_no order by txn_time) as out_nature from default.linl_tj_20230627 )a where a.in_amt = 0 and a.out_amt is not null and (out_amt <> 0 or (out_code = in_code + 1 and in_code <> out_code)) ', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1147 Table not found ''linl_tj_20230627''', '2023-09-11 13:52:10.056', '2023-09-11 13:52:10.088', 32); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14682, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdchain as select distinct a.card_no, a.yh_nature, b.stattion_name as in_station_name, a.in_time, a.in_time_interval, c.stattion_name as out_station_name, a.out_time, a.out_time_interval from (select card_no, out_nature as yh_nature, in_code, in_time, in_time_interval, out_code, out_time, out_time_interval from default.linl_tj_metrochain where in_code = ''263'' or out_code = ''263'') a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:568 Table not found ''linl_tj_metrochain''', '2023-09-11 13:52:11.066', '2023-09-11 13:52:11.082', 16); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14683, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdage as select distinct a.card_no, a.yh_nature, b.age, a.in_station_name, a.in_time_interval, a.out_station_name, a.out_time_interval from default.linl_tj_pdchain a left join sptcc.dwd_userport_realcardproduct b', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:282 Table not found ''linl_tj_pdchain''', '2023-09-11 13:52:12.074', '2023-09-11 13:52:12.099', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14684, '9 ', 'default', ' create table IF NOT EXISTS linl_tj_incorrect as select card_no, exchange_mark, in_station_name, in_time_interval, out_station_name, out_time_interval, count(distinct age) as mark from default.linl_tj_airline group by card_no, exchange_mark, in_station_name, in_time_interval, out_station_name, out_time_interval having count(distinct age) > 1', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:228 Table not found ''linl_tj_airline''', '2023-09-11 13:52:13.089', '2023-09-11 13:52:13.116', 27); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14685, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_result as select distinct card_no, case when mark is not null then '' '' else age end as agerange, exchange_mark, in_station_name, in_time_interval, out_station_name, out_time_interval from (select a.*, b.mark from default.linl_tj_airline a left join default.linl_tj_incorrect b on a.card_no = b.card_no and a.in_station_name = b.in_station_name and a.in_time_interval = b.in_time_interval and a.out_time_interval = b.out_time_interval) c', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:361 Table not found ''linl_tj_airline''', '2023-09-11 13:52:14.093', '2023-09-11 13:52:14.109', 16); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14686, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515 as select card_no, txn_counter, settle_center_code as hy, device_code, txn_time, txn_code, settle_date, card_product_code, txn_amt, inout_flag, station_code as station_code_ys, case when settle_center_code = 21 then replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') else station_code end as station_code_tz, txn_nature, txn_date from sptcc.dwd_consum_trans dct where txn_date = ''20230515'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code in (77, 21)', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:550 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:15.106', '2023-09-11 13:52:15.127', 21); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14687, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515_metrochain as select distinct a.card_no, a.card_product_code, a.txn_date, a.in_counter, a.in_time, a.in_amt, a.in_station_code, a.out_counter, a.out_station_code, a.out_time, a.out_amt from (select distinct card_no, card_product_code, txn_date, txn_counter as in_counter, txn_time as in_time, txn_amt as in_amt, station_code_tz as in_station_code, lead(txn_counter, 1, null) over (partition by card_no order by txn_time) as out_counter, lead(station_code_tz, 1, null) over (partition by card_no order by txn_time) as out_station_code, lead(txn_time, 1, null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt, 1, null) over (partition by card_no order by txn_time) as out_amt from default.linl_consum_20230515 where hy = 21) a where a.in_amt = 0 and a.out_amt is not null and a.out_amt != 0', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1132 Table not found ''linl_consum_20230515''', '2023-09-11 13:52:16.109', '2023-09-11 13:52:16.135', 26); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14696, '9 ', 'default', ' ', '2', '查询失败:Error while compiling statement: FAILED: ParseException line 1:1 cannot recognize input near '''' '''' ''''', '2023-09-11 13:52:25.187', '2023-09-11 13:52:25.212', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14688, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515_od as select a.in_station_code, a.out_station_code, count(*) as num from (select distinct * from default.linl_consum_20230515_metrochain where in_station_code <> out_station_code) a group by a.in_station_code, a.out_station_code', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:155 Table not found ''linl_consum_20230515_metrochain''', '2023-09-11 13:52:17.117', '2023-09-11 13:52:17.142', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14689, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515_od_distance as select d.*, e.metro_distance from (select a.in_station_code, a.out_station_code, a.num, b.stattion_name as in_station_name, c.stattion_name as out_station_name from default.linl_consum_20230515_od a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_station_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_station_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')) d left join dim.od e on d.in_station_name = e.in_station and d.out_station_name = e.out_station', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:751 Table not found ''od''', '2023-09-11 13:52:18.129', '2023-09-11 13:52:18.154', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14690, '9 ', 'default', ' select card_no, txn_counter, replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') as station_code, txn_time, card_product_code, txn_amt, inout_flag, hour_code, txn_nature from sptcc.dwd_consum_trans dct where txn_date = ''20230627'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code = 21', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:256 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:19.14', '2023-09-11 13:52:19.162', 22); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14691, '9 ', 'default', ' select distinct a.card_no, a.in_code, case when MINUTE (in_time)<30 then in_hour||'':00-''||in_hour||'':30'' else in_hour||'':30-''||int(in_hour)+1||'':00'' end as in_time_interval, a.in_time,a.in_amt,a.in_nature, a.out_code, case when MINUTE(out_time)<30 then out_hour||'':00-''||out_hour||'':30'' else out_hour||'':30-''||int(out_hour)+1||'':00'' end as out_time_interval, a.out_time, a.out_amt ,a.out_nature from ( select card_no, txn_counter as in_count, station_code as in_code, txn_time as in_time, txn_amt as in_amt, hour_code as in_hour, txn_nature as in_nature, lead(txn_counter,1,null) over (partition by card_no order by txn_time) as out_count, lead(station_code,1,null) over (partition by card_no order by txn_time) as out_code, lead(txn_time,1,null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt,1,null) over (partition by card_no order by txn_time) as out_amt, lead(hour_code,1,null) over (partition by card_no order by txn_time) as out_hour, lead(txn_nature,1,null) over (partition by card_no order by txn_time) as out_nature from default.linl_tj_20230627 )a where a.in_amt = 0 and a.out_amt is not null and (out_amt <> 0 or (out_code = in_code + 1 and in_code <> out_code)) ', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1090 Table not found ''linl_tj_20230627''', '2023-09-11 13:52:20.142', '2023-09-11 13:52:20.166', 24); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14692, '9 ', 'default', ' select distinct a.card_no, a.yh_nature, b.stattion_name as in_station_name, a.in_time, a.in_time_interval, c.stattion_name as out_station_name, a.out_time, a.out_time_interval from (select card_no, out_nature as yh_nature, in_code, in_time, in_time_interval, out_code, out_time, out_time_interval from default.linl_tj_metrochain where in_code = ''263'' or out_code = ''263'') a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:514 Table not found ''linl_tj_metrochain''', '2023-09-11 13:52:21.147', '2023-09-11 13:52:21.172', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14693, '9 ', 'default', ' select card_no, txn_counter, settle_center_code as hy, device_code, txn_time, txn_code, settle_date, card_product_code, txn_amt, inout_flag, station_code as station_code_ys, case when settle_center_code = 21 then replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') else station_code end as station_code_tz, txn_nature, txn_date from sptcc.dwd_consum_trans dct where txn_date = ''20230515'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code in (77, 21)', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:490 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:22.154', '2023-09-11 13:52:22.176', 22); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14694, '9 ', 'default', ' select distinct a.card_no, a.card_product_code, a.txn_date, a.in_counter, a.in_time, a.in_amt, a.in_station_code, a.out_counter, a.out_station_code, a.out_time, a.out_amt from (select distinct card_no, card_product_code, txn_date, txn_counter as in_counter, txn_time as in_time, txn_amt as in_amt, station_code_tz as in_station_code, lead(txn_counter, 1, null) over (partition by card_no order by txn_time) as out_counter, lead(station_code_tz, 1, null) over (partition by card_no order by txn_time) as out_station_code, lead(txn_time, 1, null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt, 1, null) over (partition by card_no order by txn_time) as out_amt from default.linl_consum_20230515 where hy = 21) a where a.in_amt = 0 and a.out_amt is not null and a.out_amt != 0', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1062 Table not found ''linl_consum_20230515''', '2023-09-11 13:52:23.165', '2023-09-11 13:52:23.19', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14695, '9 ', 'default', ' select d.*, e.metro_distance from (select a.in_station_code, a.out_station_code, a.num, b.stattion_name as in_station_name, c.stattion_name as out_station_name from default.linl_consum_20230515_od a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_station_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_station_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')) d left join dim.od e on d.in_station_name = e.in_station and d.out_station_name = e.out_station', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:680 Table not found ''od''', '2023-09-11 13:52:24.169', '2023-09-11 13:52:24.218', 49); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14697, '9 ', 'default', 'CREATE table IF NOT EXISTS default.linl_tj_20230627 as select card_no, txn_counter, replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') as station_code, txn_time, card_product_code, txn_amt, inout_flag, hour_code, txn_nature from sptcc.dwd_consum_trans dct where txn_date = ''20230627'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code = 21', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:308 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:26.198', '2023-09-11 13:52:26.224', 26); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14698, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_metrochain as select distinct a.card_no, a.in_code, case when MINUTE (in_time)<30 then in_hour||'':00-''||in_hour||'':30'' else in_hour||'':30-''||int(in_hour)+1||'':00'' end as in_time_interval, a.in_time,a.in_amt,a.in_nature, a.out_code, case when MINUTE(out_time)<30 then out_hour||'':00-''||out_hour||'':30'' else out_hour||'':30-''||int(out_hour)+1||'':00'' end as out_time_interval, a.out_time, a.out_amt ,a.out_nature from ( select card_no, txn_counter as in_count, station_code as in_code, txn_time as in_time, txn_amt as in_amt, hour_code as in_hour, txn_nature as in_nature, lead(txn_counter,1,null) over (partition by card_no order by txn_time) as out_count, lead(station_code,1,null) over (partition by card_no order by txn_time) as out_code, lead(txn_time,1,null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt,1,null) over (partition by card_no order by txn_time) as out_amt, lead(hour_code,1,null) over (partition by card_no order by txn_time) as out_hour, lead(txn_nature,1,null) over (partition by card_no order by txn_time) as out_nature from default.linl_tj_20230627 )a where a.in_amt = 0 and a.out_amt is not null and (out_amt <> 0 or (out_code = in_code + 1 and in_code <> out_code)) ', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1147 Table not found ''linl_tj_20230627''', '2023-09-11 13:52:27.212', '2023-09-11 13:52:27.238', 26); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14699, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdchain as select distinct a.card_no, a.yh_nature, b.stattion_name as in_station_name, a.in_time, a.in_time_interval, c.stattion_name as out_station_name, a.out_time, a.out_time_interval from (select card_no, out_nature as yh_nature, in_code, in_time, in_time_interval, out_code, out_time, out_time_interval from default.linl_tj_metrochain where in_code = ''263'' or out_code = ''263'') a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:568 Table not found ''linl_tj_metrochain''', '2023-09-11 13:52:28.219', '2023-09-11 13:52:28.246', 27); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14700, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdage as select distinct a.card_no, a.yh_nature, b.age, a.in_station_name, a.in_time_interval, a.out_station_name, a.out_time_interval from default.linl_tj_pdchain a left join sptcc.dwd_userport_realcardproduct b', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:282 Table not found ''linl_tj_pdchain''', '2023-09-11 13:52:29.228', '2023-09-11 13:52:29.25', 22); + +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000035, 1, '688f82be8d', 2, '2023100000000005', '测试1', '测试演示实验室功能', '测试002', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', NULL, NULL, NULL, '1', NULL, '1', '15', '是的是的', 0, '02', NULL, '0', '00', '99', '100014', 'admin1', '2023-10-30 15:50:00', '100014', 'admin1', '2023-10-30 15:53:39', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000036, 3, '7069e783ed', 2, '2023100000000005', '测试1', 'SSD', '演示002', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-10-30 15:54:28', '2023-11-29 15:54:28', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-10-30 15:52:46', '100014', 'admin1', '2023-10-30 15:54:30', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000034, 3, '5c7cd0582c', 2, '2023060000000002', '张三丰', '演示', '演示001', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-10-26 19:32:28', '2023-11-25 19:32:28', NULL, '1', NULL, '1', '15', NULL, 0, '01', NULL, '1', '07', '00', '2', '管理员', '2023-10-26 09:41:04', '2', '管理员', '2023-10-26 19:32:31', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000037, 3, '97e3c3fc0d', 2, '2023060000000002', '张三丰', '颠三倒四', '测试', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-11-02 16:28:35', '2023-12-03 16:28:35', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-10-31 15:13:36', '100014', 'admin1', '2023-11-02 16:28:37', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000040, 2, '817b66e2f1', 2, '2023110000000009', '刘总', '演示', '客户演示', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-11-07 16:06:58', '2023-12-08 16:06:58', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '02', '00', '1', '管理员', '2023-11-07 16:06:54', '1', '管理员', '2023-11-07 16:07:04', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000038, 3, '0bc9605c8f', 2, '2023060000000002', '张三丰', '是的是的', '测试004', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-11-02 16:43:38', '2023-12-03 16:43:38', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-11-02 16:43:31', '100014', 'admin1', '2023-11-02 16:43:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000041, 2, '450443d1dd', 2, '2023060000000002', '张三丰', 'z', 'zeppelin(测试)', 'zeppelin', 'zeppelin-py39:0.0.1', '30', 'day', '2023-11-13 16:32:28', '2023-12-14 16:32:28', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '02', '00', '2', '管理员', '2023-11-13 16:31:53', '2', '管理员', '2023-11-13 16:32:29', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000042, 3, '1d88445b5d', 2, '1', '门户管理员', 'aabb', '测试', 'jupyter', 'jupyterlab-py310:0.0.1', '10', 'day', '2023-11-14 13:27:41', '2023-11-25 13:27:41', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100016', 'admin55', '2023-11-14 13:27:33', '100016', 'admin55', '2023-11-14 13:27:42', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000043, 2, 'd91ff197eb', 2, '1', '门户管理员', 'aabbcc', '测试03', 'jupyter', 'jupyterlab-py310:0.0.1', '6', 'day', '2023-11-16 13:47:54', '2023-11-23 13:47:54', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '02', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000039, 3, 'f61d2a0c24', 2, '2023060000000002', '张三丰', '是的是的', '测试005', 'jupyter', 'jupyterlab-py310:0.0.1', '12', 'day', '2023-11-02 16:47:17', '2023-11-15 16:47:17', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-11-02 16:47:14', '100014', 'admin1', '2023-11-02 16:47:19', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023070000000016, 99, '01b959f150', 2, '1', '门户管理员', '测试(别用)', '测试(别用)', 'jupyter', 'jupyterlab-py310:0.0.1', '11', 'day', '2023-10-19 17:35:11', '2023-11-21 17:35:11', NULL, '1', NULL, '1', '15', NULL, 0, '02', '', '0', '00', '00', '100004', '测试1', '2023-07-06 13:44:33', '2', '管理员', '2023-10-19 17:35:13', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (76, 4, '7d848f5da3', 2023070000000016, 'python', '222', 182, '1', 1, '02', NULL, NULL, NULL, '00', '99', '1', 'admin', '2023-10-18 13:36:13', '2', '管理员', '2023-10-19 14:17:57', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (81, 0, '89bbf1d6ea', 2023070000000016, 'data', '222', 183, '1', 0, '01', NULL, NULL, NULL, '00', '00', '1', 'admin', '2023-10-25 13:36:24', '1', 'admin', '2023-10-25 13:36:24', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (77, 26, 'a81ad3dce0', 2023070000000016, 'data', '222', 183, '1', 2, '02', NULL, 'ccic.zip', '同名文件已覆盖', '05', '99', '1', 'admin', '2023-10-18 13:36:13', '2', '管理员', '2023-11-01 12:20:23', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (88, 1, '8296c8c122', 2023100000000037, 'data', '需要切换组件类型', 248, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '100014', 'admin1', '2023-11-02 16:31:28', '100014', 'admin1', '2023-11-02 16:31:32', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (99, 1, 'fbb47507e7', 2023110000000040, 'data', '1', 279, '1', 4, '02', NULL, 'member - 副本.csv', NULL, '02', '00', '2', '管理员', '2023-11-22 09:41:51', '2', '管理员', '2023-11-22 09:41:52', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (89, 3, '5e3e2ed2ef', 2023110000000038, 'data', '打算', 250, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '100014', 'admin1', '2023-11-02 16:43:31', '2', '管理员', '2023-11-13 16:21:47', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (90, 7, '07e275f2ab', 2023110000000039, 'data', '大萨达', 251, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '100014', 'admin1', '2023-11-02 16:47:14', '2', '管理员', '2023-11-13 17:06:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (92, 1, '4a3a41495f', 2023110000000043, 'data', 'aa', 272, '1', 1, '02', NULL, NULL, NULL, '01', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:54', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (93, 1, '4a3a41495f', 2023110000000043, 'data', 'cc', 273, '1', 2, '02', NULL, NULL, NULL, '01', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:54', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (94, 1, '4a3a41495f', 2023110000000043, 'data', 'ddd', 274, '1', 3, '02', NULL, NULL, NULL, '01', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:54', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (87, 3, '2b28228dc0', 2023070000000016, 'data', '1', 245, '1', 7, '02', NULL, 'ruoyi生成代码.zip', NULL, '00', '00', '2', '管理员', '2023-11-01 10:30:07', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (85, 3, '758f9a69ce', 2023070000000016, 'python', '222', 182, '1', 6, '02', NULL, NULL, '同名文件已覆盖', '00', '00', '1', '管理员', '2023-10-31 16:03:07', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (84, 3, 'db807d6f55', 2023070000000016, 'data', '222', 183, '1', 5, '02', NULL, 'ccic.zip', '同名文件已覆盖', '00', '00', '1', '管理员', '2023-10-31 16:03:07', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (78, 24, '74bd16eb14', 2023070000000016, 'python', 'py', 234, '1', 3, '02', NULL, 'anyio-4.0.0-py3-none-any.whl,certifi-2023.7.22-py3-none-any.whl,exceptiongroup-1.1.3-py3-none-any.whl,h11-0.14.0-py3-none-any.whl,httpcore-0.18.0-py3-none-any.whl,httpx-0.25.0-py3-none-any.whl,idna-3.4-py3-none-any.whl,sniffio-1.3.0-py3-none-any.whl', '', '00', '00', '2', '管理员', '2023-10-19 09:36:38', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (91, 8, '916eae61c1', 2023110000000040, 'data', '演示csv', 252, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '1', '管理员', '2023-11-07 16:06:54', '2', '管理员', '2023-11-22 09:41:52', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (98, 3, '4eb4db2927', 2023110000000040, 'data', '1', 278, '1', 3, '02', NULL, '测试4 - 测试.txt', NULL, '02', '00', '2', '管理员', '2023-11-22 09:36:38', '2', '管理员', '2023-11-23 11:05:08', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (95, 5, '9aeeaab70c', 2023110000000040, 'data', '1', 275, '1', 2, '02', NULL, '测试3.txt', NULL, '02', '00', '2', '管理员', '2023-11-22 09:31:20', '2', '管理员', '2023-11-23 11:12:08', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (96, 6, 'db18305d9f', 2023110000000041, 'data', '1', 276, '1', 1, '02', NULL, '测试3 - 副本.txt', '同名文件已覆盖', '05', '99', '2', '管理员', '2023-11-22 09:34:52', '2', '管理员', '2023-11-23 11:50:41', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (97, 3, '837830b82a', 2023110000000041, 'data', '1', 277, '1', 2, '02', NULL, '测试3 - 副本.txt', NULL, '02', '00', '2', '管理员', '2023-11-22 09:35:16', '2', '管理员', '2023-11-28 17:37:23', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2, 1, 'bb447f868e', '测试', 2023070000000016, '测试', '1', '门户管理员', 'aacc', 0, '01', '11', '00', '1', '门户管理员', '2023-10-24 16:07:19', '2', '管理员', '2023-10-27 14:18:10', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (5, 1, 'b4295014fd', '', 2023070000000016, '测试(别用)', '1', '门户管理员', NULL, 0, '02', NULL, '00', '1', '门户管理员', '2023-10-30 10:39:16', '1', '管理员', '2023-10-31 16:03:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (6, 0, '60dcd4848c', '测试aaabbcc', 2023070000000016, '测试(别用)', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-10-30 13:15:00', '1', '管理员', '2023-10-30 13:15:00', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (7, 0, 'a171a105b2', '', 2023070000000016, '测试(别用)', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-10-31 10:39:53', '1', '管理员', '2023-10-31 10:39:53', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023111600000026, 0, '3f9e65548a', '', 2023110000000043, '测试03', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 14:11:17', '1', '门户管理员', '2023-11-16 14:11:17', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023111600000030, 0, 'afdc912db6', '', 2023110000000043, '测试03', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 20:11:40', '1', '门户管理员', '2023-11-16 20:11:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112800000031, 0, 'd78dd63e5b', 'eeeqqq', 2023110000000043, '测试03', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-11-28 16:47:18', '1', '门户管理员', '2023-11-28 16:47:18', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (1, 1, '7176180c46', 2, 'data', '测试', 104, '2', 0, '01', 'cc', '00', '1', '门户管理员', '2023-10-25 09:41:42', '2', '管理员', '2023-10-27 14:18:10', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2, 1, '7176180c46', 2, 'data', '测试', 226, '2', 0, '01', 'cc', '00', '1', '门户管理员', '2023-10-25 09:41:42', '2', '管理员', '2023-10-27 14:18:10', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (3, 1, 'ce1ec37765', 5, 'data', '222', 183, '1', 0, '02', NULL, '00', '1', '门户管理员', '2023-10-30 10:39:26', '1', '管理员', '2023-10-31 16:03:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (4, 1, 'ce1ec37765', 5, 'python', '222', 182, '1', 0, '02', NULL, '00', '1', '门户管理员', '2023-10-30 10:39:32', '1', '管理员', '2023-10-31 16:03:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (5, 0, 'f976f8f4e8', 6, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-10-30 13:15:01', '1', '管理员', '2023-10-30 13:15:01', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (6, 0, '0f8329a1de', 7, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-10-31 10:39:53', '1', '门户管理员', '2023-10-31 10:39:53', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (7, 0, '92813fe41e', 8, 'python', 'bbzz22', 262, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 13:45:59', '1', '门户管理员', '2023-11-14 13:45:59', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (8, 0, 'dda7c4fa11', 9, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 14:41:17', '1', '门户管理员', '2023-11-14 14:41:17', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (9, 0, 'ea74033cca', 10, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 16:31:45', '1', '门户管理员', '2023-11-14 16:31:45', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (10, 0, '56c96251c2', 11, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 16:36:57', '1', '门户管理员', '2023-11-14 16:36:57', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (11, 0, '1360ecfdaa', 15, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-15 17:59:36', '1', '门户管理员', '2023-11-15 17:59:36', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (12, 0, 'ef78a2c3ac', 2023111500000016, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-15 18:03:21', '1', '门户管理员', '2023-11-15 18:03:21', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (13, 0, '923f6f8a10', 2023111600000025, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 13:20:00', '1', '门户管理员', '2023-11-16 13:20:00', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (14, 0, 'de4da85c41', 2023111600000026, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 14:11:17', '1', '门户管理员', '2023-11-16 14:11:17', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (15, 0, '2e08d7ee4c', 2023111600000030, 'data', '222', 183, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 20:11:40', '1', '门户管理员', '2023-11-16 20:11:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (16, 0, '9cc134eda2', 2023112800000031, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-28 16:47:18', '1', '门户管理员', '2023-11-28 16:47:18', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_client_info (docker_server_id, version_num, rec_token, docker_server_name, docker_server_ip, docker_server_port, docker_server_username, docker_server_password, cpu_limits, memory_limits, disc_limits, used_cpu_limits, used_memory_limits, used_disc_limits, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 1, 'ceb0ad0f08', '实验室主机2', '172.16.12.108', '22', 'flink', 'mIVYkELj5T+4MnD5+V542A==', '4', '7', '200', '0', '0', '0', '测试多机器', 1, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-29 19:53:19'); +INSERT INTO tbl_docker_client_info (docker_server_id, version_num, rec_token, docker_server_name, docker_server_ip, docker_server_port, docker_server_username, docker_server_password, cpu_limits, memory_limits, disc_limits, used_cpu_limits, used_memory_limits, used_disc_limits, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 47, '3726078177', '实验室主机', '172.16.12.108', '22', 'flink', 'mIVYkELj5T+4MnD5+V542A==', '4', '7', '200', '3', '3', '45', NULL, 2, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-11-16 20:55:47'); + + + +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 1, 1, 15, 1, '42ee9609b0', 1, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-07-04 20:03:46'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 2, 2, 20, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 1, 2, 15, 1, '42ee9609b0', 2, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-07-04 20:03:46'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (4, 2, 2, 50, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (5, 2, 2, 100, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (6, 2, 2, 150, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (7, 2, 2, 200, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (8, 2, 2, 250, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (9, 2, 2, 300, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (10, 4, 4, 250, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (11, 4, 4, 300, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (12, 4, 4, 300, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (13, 4, 4, 400, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (14, 4, 4, 500, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (15, 4, 4, 600, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (16, 8, 4, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (17, 8, 4, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (18, 8, 4, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (19, 8, 4, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (20, 8, 8, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (21, 8, 8, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (22, 8, 8, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (23, 8, 8, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (24, 8, 8, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (25, 8, 8, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (26, 8, 8, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (27, 8, 8, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (28, 8, 16, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (29, 8, 16, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (30, 8, 16, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (31, 8, 16, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); + + +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (23, 0, 'cace8a7cd8', 2023070000000016, '测试(别用)', '1', '门户管理员', 'aakk', 'bbb.zip', '23143', '1698717133', NULL, 0, '01', NULL, '01', '00', '1', '门户管理员', '2023-10-31 17:17:36', '1', '门户管理员', '2023-10-31 17:17:36', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (24, 1, '195e7d6e3a', 2023070000000016, '测试(别用)', '1', '门户管理员', 'cc', 'test.txt', '9', '1698633393', NULL, 0, '03', 's', '01', '00', '1', '门户管理员', '2023-11-02 09:53:05', '100014', 'admin1', '2023-11-02 17:03:09', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (20, 0, 'f2b7dfceb0', 2023100000000036, '演示002', '2023100000000005', '测试1', '加工数据', '20220810-jioayi.csv', '55574528', '1698655667', NULL, 0, '01', NULL, '01', '00', '2023100000000005', '测试1', '2023-10-30 16:50:48', '2023100000000005', '测试1', '2023-10-30 16:50:48', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112100000028, 1, 'a079dd0a0e', 2023110000000043, '测试03', '1', '门户管理员', 'cc', 'kk.zip', '238166227', '1700570716', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-11-21 20:45:27', '100016', 'admin55', '2023-11-21 20:46:01', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (15, 2, 'bdab732139', 2023070000000016, '测试(别用)', '1', '门户管理员', '测试', 'test.txt', '7', '1700725395', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-10-18 14:53:49', '100016', 'admin55', '2023-10-31 09:35:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (22, 1, '6bd3fc7924', 2023070000000016, '测试(别用)', '1', '门户管理员', 'ttrr', '测试.txt', '28', '1700790885', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-10-31 10:37:45', '100016', 'admin55', '2023-10-31 10:39:05', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112400000029, 0, '8642b15503', 2023110000000043, '测试03', '1', '门户管理员', 'cc', 'kk.zip', '238166227', '1700570716', NULL, 0, '01', NULL, '01', '00', '1', '门户管理员', '2023-11-24 14:21:02', '1', '门户管理员', '2023-11-24 14:21:02', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (21, 1, 'dd7707ff8c', 2023070000000016, '测试(别用)', '1', '门户管理员', 'ccbb', 'test2.csv', '67', '1700723304', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-10-31 09:46:24', '100016', 'admin55', '2023-10-31 09:46:53', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112900000030, 1, '3e258a1fd6', 2023110000000043, '测试03', '1', '门户管理员', 'aa', 'bb.zip', '1700', '1700037670', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-11-29 13:49:01', '100016', 'admin55', '2023-11-29 13:49:30', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112900000031, 1, '9222d4379e', 2023110000000043, '测试03', '1', '门户管理员', 'ccddd', '测试副本.zip', '1700', '1700037670', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-11-29 13:50:46', '100016', 'admin55', '2023-11-29 13:50:55', NULL, NULL, NULL); + +INSERT INTO tbl_docker_images (docker_image_id, version_num, rec_token, docker_image_name, service_type, docker_image_desc, file_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 0, '1', 'jupyterlab-py310:0.0.1', 'jupyter', '环境:软件jupyterlab,Python3.10 ,集成了常用包: NumPy ,Matplotlib ,Pandas,Seaborn,PyTorch等', NULL, NULL, 0, '00', '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_images (docker_image_id, version_num, rec_token, docker_image_name, service_type, docker_image_desc, file_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 0, '1', 'zeppelin-py39:0.0.1', 'zeppelin', '环境:软件zeppelin,Python3.9', NULL, NULL, 0, '00', '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); + + +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (4, 0, '1', 2, '9004', 'http://172.16.12.104:8080/lab004/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (5, 0, '1', 2, '9005', 'http://172.16.12.104:8080/lab005/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (6, 0, '1', 2, '9006', 'http://172.16.12.104:8080/lab006/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (7, 0, '1', 2, '9007', 'http://172.16.12.104:8080/lab007/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (8, 0, '1', 2, '9008', 'http://172.16.12.104:8080/lab008/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 0, '1', 2, '9001', 'http://172.16.12.104:8080/lab001/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 0, '1', 2, '9002', 'http://172.16.12.104:8080/lab002/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 1, '8407252b29', 2, '9003', 'http://172.16.12.104:8080/lab003/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '100019', 'admin3', '2023-11-17 16:59:22'); + +INSERT INTO tbl_docker_portainer_user (docker_account_id, version_num, rec_token, api_http, api_key, admin_username, admin_password, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 2, '53f90059f7', 'http://172.16.12.108:9000', 'ptr_cv5nSGlTS3GOqgl0r6BcWiFje9LRHkugxrXTVi257iU=', NULL, NULL, NULL, 1, '00', '1', '管理员', '2023-06-14 13:48:18', '100018', 'yts', '2023-11-21 10:22:43'); + +INSERT INTO tbl_docker_vpn (vpn_id, version_num, rec_token, vpn_ip, vpn_username, vpn_password, fortress_ip, fortress_username, fortress_password, apply_id, lab_title, apply_user_id, apply_user_name, start_date, end_date, send_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (5, 2, '920e533f91', '127.0.0.1:8080', 'vpn12', 'n9pccyVFGDsgENOflKgvjg==', '127.0.0.1:8080', 'baoleiA1', 'n9pccyVFGDsgENOflKgvjg==', NULL, NULL, '2023060000000002', '张三丰', NULL, NULL, '0', '1', '00', '2', '管理员', '2023-11-17 11:01:19', '100019', 'admin3', '2023-11-17 16:59:33', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000038, 7, '51ae940599', '测试004', '2023060000000002', '张三丰', '2023110000000038', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:43:40', '2', '管理员', '2023-11-13 16:22:37', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000040, 6, '18d9e95045', '客户演示', '2023110000000009', '刘总', '2023110000000040', 2, NULL, 0, '01', '00', '1', '管理员', '2023-11-07 16:07:04', '2', '管理员', '2023-11-13 17:06:16', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000042, 10, 'd991e089e7', '测试', '1', '门户管理员', '2023110000000042', 2, NULL, 0, '05', '00', '100016', 'admin55', '2023-11-14 13:27:42', '100016', 'admin55', '2023-11-16 13:47:29', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000039, 18, '4707c1e116', '测试005', '2023060000000002', '张三丰', '2023110000000039', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:47:19', '2', '管理员', '2023-11-16 20:55:46', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000041, 30, '38da0fecf4', 'zeppelin(测试)', '2023060000000002', '张三丰', '2023110000000041', 2, NULL, 0, '01', '00', '2', '管理员', '2023-11-13 16:32:29', '2', '管理员', '2023-11-28 17:37:20', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000037, 6, '2fff2e3e82', '测试', '2023060000000002', '张三丰', '2023100000000037', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:28:37', '100014', 'admin1', '2023-11-02 16:42:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000036, 3, '1465c466bc', '演示002', '2023100000000005', '测试1', '2023100000000036', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-10-30 15:54:30', '100014', 'admin1', '2023-11-02 16:45:48', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000034, 5, 'e82282a129', '演示001', '2023060000000002', '张三丰', '2023100000000034', 2, NULL, 0, '05', '00', '2', '管理员', '2023-10-26 19:32:31', '100014', 'admin1', '2023-11-02 16:45:52', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000043, 12, 'd2948796d2', '测试03', '1', '门户管理员', '2023110000000043', 2, NULL, 0, '01', '00', '100016', 'admin55', '2023-11-16 13:47:55', '1', '门户管理员', '2023-12-08 13:42:12', NULL, NULL, NULL); + +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (53, 0, 'fde5ccceaf', 2023110000000040, 'jupyter', 'http://172.16.12.104:8080/lab005/', NULL, 'VOo3SNcfnu1pgu1bDPF9KA==', 5, NULL, 0, '01', '00', '1', '管理员', '2023-11-07 16:07:04', '1', '管理员', '2023-11-07 16:07:04', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (54, 0, '220490c4de', 2023110000000041, 'zeppelin', 'http://172.16.12.104:8080/lab007/', 'admin', 'MbK1K2/Z41/V/SND00p0CQ==', 7, NULL, 0, '01', '00', '2', '管理员', '2023-11-13 16:32:29', '2', '管理员', '2023-11-13 16:32:29', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (56, 0, '7e1bd2d5b7', 2023110000000043, 'jupyter', 'http://172.16.12.104:8080/lab001/', NULL, 'AXbT3MC760cfkQRikurgLw==', 1, NULL, 0, '01', '00', '100016', 'admin55', '2023-11-16 13:47:55', '100016', 'admin55', '2023-11-16 13:47:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (48, 1, '4920b8de4f', 2023100000000034, 'jupyter', 'http://172.16.12.104:8080/lab005/', NULL, 'HwJ1FTVUtEcpDHudNGYcvA==', 5, NULL, 0, '05', '00', '2', '管理员', '2023-10-26 19:32:31', '2', '管理员', '2023-10-26 19:32:31', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (49, 1, '106551156d', 2023100000000036, 'jupyter', 'http://172.16.12.104:8080/lab005/', NULL, 'oxXRiE/Y+vEGWhizlS2yMw==', 5, NULL, 0, '05', '00', '100014', 'admin1', '2023-10-30 15:54:30', '100014', 'admin1', '2023-10-30 15:54:30', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (50, 1, '6484cdb29c', 2023100000000037, 'jupyter', 'http://172.16.12.104:8080/lab006/', NULL, '5k1O87ewcOIeKIWmMtd8KA==', 6, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:28:37', '100014', 'admin1', '2023-11-02 16:28:37', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (51, 1, '0463845cb1', 2023110000000038, 'jupyter', 'http://172.16.12.104:8080/lab006/', NULL, 'cOqlxatORZhsNdRCAYyF1w==', 6, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:43:40', '100014', 'admin1', '2023-11-02 16:43:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (52, 2, 'b69dd74beb', 2023110000000039, 'jupyter', 'http://172.16.12.104:8080/lab004/', NULL, 'YVv77wBgxZXmogZT0pwsEQ==', 4, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:47:19', '2', '管理员', '2023-11-07 21:39:27', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (55, 1, '54475f9208', 2023110000000042, 'jupyter', 'http://172.16.12.104:8080/lab008/', NULL, 'eAyLpQKj3m0dPkWPIKH5RA==', 8, NULL, 0, '05', '00', '100016', 'admin55', '2023-11-14 13:27:42', '100016', 'admin55', '2023-11-14 13:27:42', NULL, NULL, NULL); + + +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (67, '5dd45006-50bb-4e61-a5eb-6fbac9738358', 33); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (68, '5dd45006-50bb-4e61-a5eb-6fbac9738358', 32); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (69, '5dd45006-50bb-4e61-a5eb-6fbac9738358', 30); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (77, 'bb', 30); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (80, 'JGH000000000000070', 12); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (81, 'JGH000000000000070', 32); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (167, 'JGH000000000000084', 119); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (168, 'JGH000000000000084', 116); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (169, 'JGH000000000000084', 114); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (170, 'JGH000000000000084', 97); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (171, 'JGH000000000000084', 107); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (172, 'JGH000000000000084', 108); + +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (1, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-17', '2023-07-17', '0', 0, '1', 'admin', '2023-07-17 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (2, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-17', '2023-07-20', '0', 1, '3861a2180c', 'admin', '2023-07-17 00:00:00', 'admin', '2023-07-17 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (4, '495932f9-e6f8-40be-ab3a-45292a5eb3b0', '2023-07-18', '2023-07-19', '0', 0, '1', 'yts', '2023-07-18 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (3, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-17', '2023-07-21', '1', 3, '1b8df22227', 'admin', '2023-07-17 00:00:00', 'yts', '2023-07-18 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (5, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-28', '2023-07-29', '0', 0, '1', 'yts', '2023-07-28 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (10, 'JGH000000000000084', 'data_begin', '111', '11', 0, '1', '', '2023-09-27 00:00:00', NULL, '2023-09-27 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (6, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-28', '2023-07-29', '0', 0, '1', 'yts', '2023-07-28 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (8, '231', 'add:test:key', '测试', '2023-12-20', 0, '1', '', '2023-09-07 00:00:00', NULL, '2023-09-07 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (7, '231', 'add:test:key', '测试', '2023-12-20', 0, '1', '', '2023-09-07 00:00:00', NULL, '2023-09-07 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (11, 'JGH000000000000084', 'data_begin', '111', '111', 0, '1', '', '2023-10-09 16:00:04.31662', NULL, '2023-10-09 16:00:04.31662', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (12, 'JGH000000000000084', 'data_begin', '111', '11', 0, '1', '', '2023-10-09 17:11:53.786769', NULL, '2023-10-09 17:11:53.786769', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (151, 'JGH000000000000084', 'downLoadRigth', '获取线路小时客流指标', 'lineHour', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (152, 'JGH000000000000084', 'downLoadRigth', '获取线路每日客流指标', 'lineDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (153, 'JGH000000000000084', 'downLoadRigth', '获取线路每月客流指标', 'lineMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (154, 'JGH000000000000084', 'downLoadRigth', '获取线路站点小时客流指标', 'stationHour', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (155, 'JGH000000000000084', 'downLoadRigth', '获取线路站点每日客流指标', 'stationDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (156, 'JGH000000000000084', 'downLoadRigth', '获取线路站点每月客流指标', 'stationMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (157, 'JGH000000000000084', 'downLoadRigth', '获取线路站点小时换乘指标', 'stationTransHour', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (158, 'JGH000000000000084', 'downLoadRigth', '获取线路站点每日换乘指标', 'stationTransDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (159, 'JGH000000000000084', 'downLoadRigth', '站点换乘月指标', 'stationTrnasMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (160, 'JGH000000000000084', 'downLoadRigth', '站点常乘客日指标', 'stationFreqDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (161, 'JGH000000000000084', 'downLoadRigth', '站点常乘客日指标', 'stationFreqMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (162, 'JGH000000000000084', 'downLoadRigth', '站点常乘客换乘月日指标', 'stationFreqTransDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (163, 'JGH000000000000084', 'downLoadRigth', '站点常乘客换乘月指标', 'stationFreqTransMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (164, 'JGH000000000000084', 'downLoadRigth', '班次客流量', 'routeDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (66, 'JGH000000000000084', 'data_begin', 'dd', '2023-11-03', 0, '1', '', '2023-11-03 15:26:13.074658', NULL, '2023-11-03 15:26:13.074658', '1', '0'); + + +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000134', '演示004', '01', NULL, 'c4a262fa33d753b25c5bec359f98c530', 'ca26730c33e86bb03de44f85bcb92df2', '2023-10-03', '2024-11-15', '0', 7, '6ac7771317', '100014', 'admin1', '2023-10-31 14:17:11', '', 'admin', '2023-11-16 21:00:57', '0', NULL, 'Mpbca3BlrJ5PGxKpu7e8Mg==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000140', '机构到期', '02', NULL, '83bac02e390919f4ab9ca891567c681a', 'd40b3d407fbe4211ba6161004fc1de9c', '2023-11-01', '2024-11-13', '2', 5, '8c573e49da', '1', 'admin', '2023-11-09 19:37:11', '', 'admin', '2023-11-16 21:00:57', '0', NULL, 'Mpbca3BlrJ5PGxKpu7e8Mg==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000084', '机构一', '01', '1', 'c2fd8ac5a7c9c57c26f8692e4ac0e15b', '886f918cb40cb5a5014402a6c00cda74', '2023-07-02', '2024-07-26', '0', 37, '7be2f2162f', '1', 'admin', '2023-09-19 16:22:33', '1', 'admin', '2023-11-22 15:37:34', '0', '130.252.102.154', '18712387792', NULL, NULL, '1'); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000126', '11', '01', '11', 'cd90b31ca1259ee5e5a04400e8d32fcd', 'd86874d3da56da5c8f1b9362d2cf2ddd', '2023-10-12', '2024-10-19', '2', 2, '852932640f', '100007', 'yts', '2023-10-12 20:50:26', '', 'yts', '2023-11-09 19:47:21', '1', NULL, '12312312123', NULL, NULL, NULL); + +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (43, 'JGH000000000000084', '机构一', 111, 1, 0, '站点常乘客换乘客流量-日', '2023-11-09 16:24:35', 'system', '2023-11-09 16:24:35', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (40, 'JGH000000000000084', '机构一', 113, 2, 0, '站点常乘客换乘客流量-月', '2023-11-09 16:22:48', 'system', '2023-11-09 16:22:48', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (5, 'JGH000000000000084', '机构一', 128, 3, 5, 'sds-副本20231017102612', '2023-10-18 12:09:59', 'system', '2023-10-18 12:09:59', NULL, 4, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (44, 'JGH000000000000084', '机构一', 114, 1, 0, '班次客流量-日', '2023-11-09 16:25:01', 'system', '2023-11-09 16:25:01', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (6, 'JGH000000000000084', '机构一', 119, 4, 9, 'sds', '2023-10-27 14:20:37', 'system', '2023-10-27 14:20:37', NULL, 12, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (37, 'JGH000000000000084', '机构一', 102, 2, 0, '站点客流量-月', '2023-11-09 16:22:30', 'system', '2023-11-09 16:22:30', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (45, 'JGH000000000000084', '机构一', 107, 2, 0, '站点换乘客流量-月', '2023-11-09 16:37:16', 'system', '2023-11-09 16:37:16', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (8, 'JGH000000000000084', '机构一', 135, 2, 0, '测试003', '2023-11-01 17:08:09', 'system', '2023-11-01 17:08:09', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (34, 'JGH000000000000084', '机构一', 99, 1, 0, '线路客流量-月', '2023-11-09 16:22:14', 'system', '2023-11-09 16:22:14', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num + + +, rec_token, del_flag) VALUES (36, 'JGH000000000000084', '机构一', 100, 1, 0, '站点客流量-小时', '2023-11-09 16:22:28', 'system', '2023-11-09 16:22:28', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (46, 'JGH000000000000084', '机构一', 116, 0, 6, '文件下载', '2023-11-09 16:45:46', 'system', '2023-11-09 16:45:46', NULL, 5, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (39, 'JGH000000000000084', '机构一', 105, 1, 0, '站点换乘客流量-小时', '2023-11-09 16:22:43', 'system', '2023-11-09 16:22:43', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (41, 'JGH000000000000084', '机构一', 109, 2, 0, '站点常乘客客流量-日', '2023-11-09 16:23:00', 'system', '2023-11-09 16:23:00', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (42, 'JGH000000000000084', '机构一', 110, 2, 0, '站点常乘客客流量-月', '2023-11-09 16:24:01', 'system', '2023-11-09 16:24:01', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (32, 'JGH000000000000084', '机构一', 97, 5, 3, '线路客流量-日', '2023-11-09 16:21:48', 'system', '2023-11-09 16:21:48', NULL, 7, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (33, 'JGH000000000000084', '机构一', 98, 3, 0, '线路客流量-小时', '2023-11-09 16:22:06', 'system', '2023-11-09 16:22:06', NULL, 2, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (38, 'JGH000000000000084', '机构一', 106, 2, 0, '站点换乘客流量-日', '2023-11-09 16:22:35', 'system', '2023-11-09 16:22:35', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (35, 'JGH000000000000084', '机构一', 101, 8, 0, '站点客流量-日', '2023-11-09 16:22:19', 'system', '2023-11-09 16:22:19', NULL, 7, '1', '0'); + + +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (22, 3, '4c1d04935a', 'dddd', '/images/console/14a1c8f0c40b46f3893fd0ae839c5e03.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-18 11:01:04', '100007', 'yts', '2023-07-20 14:32:30', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (25, 1, '1f15b47c3d', 'fasdfa', '/images/console/e3b52addfb704e92ab13976e9cf8549e.jpg', NULL, '1', NULL, '2', '99', '100007', 'yts', '2023-07-20 14:35:13', '100007', 'yts', '2023-07-20 14:51:21', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (21, 8, 'e2394cd6be', '2222', '

测试aaaa,asdas.

测试

测试

', NULL, '2', NULL, '3', '99', '100004', 'jiuyv', '2023-07-11 14:25:57', '100007', 'yts', '2023-07-20 14:54:36', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (23, 0, '1', 'asdfasd', '

asdfasdfasd

', NULL, '2', NULL, '1', '99', '100007', 'yts', '2023-07-18 11:02:13', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (33, 0, '1', 'iiiiiiii', '/images/console/6febb9c8866e46eb9855fc76b129395f.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:44:49', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (31, 0, '1', 'wwwww', '/images/console/1f71c13cd4244dbf87e597e82042b699.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:41:09', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (30, 0, '1', 'qqqqq', '

sdafgasdfasdfasdfasd

', NULL, '4', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:40:45', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (29, 0, '1', 'eeeeee', 'dasfasdfasdfasd', NULL, '3', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:40:01', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (28, 0, '1', 'ffffffff', NULL, NULL, '3', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:38:56', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (27, 0, '1', 'cccc', NULL, NULL, '3', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:37:35', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (24, 0, '1', 'sdfasdfsd', '/images/console/71286c0d3a2e46258f2ba38623c1eea3.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-20 14:34:42', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (39, 7, '317a0ab3e1', '久事乘车宝', '“久事乘车宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API形式,为用户提供久事集团旗下500+条地面公交线路实时到站预报数据,涵盖线路、站级、上下行、到站站距、到站距离、到站时间等多维度信息。', NULL, '3', NULL, '2', '00', '100004', 'jiuyv', '2023-08-21 14:31:45', '100004', 'jiuyv', '2023-09-11 16:07:31', 2, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (37, 9, '8b4da6393f', '交通行业首家DCMM认证企业', '/images/console/a4a0dd8076d94a929d01c1c593527193.png', NULL, '1', NULL, '3', '99', '100004', 'jiuyv', '2023-08-21 10:15:27', '100004', 'jiuyv', '2023-09-11 15:14:48', NULL, NULL, '交通卡公司获国家数据管理能力成熟度稳健级(3级)认证,数据标准统一,数据管理规范,数据治理较好', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (38, 7, '1d8bc35722', '久事客流宝', '“久事客流宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API、文件配送等形式,为用户提供地面公交线路客流数据,为企业、研究机构、政府部门的实时监测、运营调度、线网优化、商业选址、辅助决策等需求提供数据支撑。', NULL, '3', NULL, '2', '00', '100004', 'jiuyv', '2023-08-21 10:51:09', '100004', 'jiuyv', '2023-09-11 16:07:41', 1, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (20, 5, '8ba6d1128a', '测试应用场景', '

测试应用场景测试应用场景测试应用场景

测试应用场景测试应用场景测试应用场景

测试应用场景

', '2', '3', NULL, '1', '99', '1', 'admin', '2023-07-05 17:23:23', '100007', 'yts', '2023-07-27 16:48:50', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (18, 14, 'fb2dd821d0', '标题五', '/images/console/adf639c21b0f47968a568a7670e1bab6.jpg', '1', '1', NULL, '3', '99', '100007', 'yts', '2023-07-03 17:56:35', '100004', 'jiuyv', '2023-08-21 10:13:03', NULL, NULL, '小标题', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (35, 9, 'e163087cfc', '市数商协会会员', '/images/console/66bdc6cf8fd3466db925966d360f59cd.png', NULL, '1', NULL, '3', '99', '100004', 'jiuyv', '2023-08-21 10:12:44', '100004', 'jiuyv', '2023-09-11 15:14:35', NULL, NULL, '与各行业头部数商企业一同,推进数据创造、消费、流通、交易,最大程度释放数据价值', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (36, 10, '84eb32d447', '市级企业技术中心(暂未)', '/images/console/28cc67293f534beaa79a020ee56d27c5.png', NULL, '1', NULL, '3', '99', '100004', 'jiuyv', '2023-08-21 10:14:01', '100004', 'jiuyv', '2023-09-11 15:14:37', NULL, NULL, '交通卡公司获第30批市级企业技术中心认定企业,持续推进关键核心技术攻关,不断促进产学研用协同创新', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (41, 5, '90d65a87a6', '久事客流宝', '/images/console/a01b4120ec9d4d559c073f953dfbc9c9.jpg', NULL, '4', NULL, '3', '99', '100004', 'jiuyv', '2023-08-22 18:59:08', '100004', 'jiuyv', '2023-09-11 15:22:24', NULL, NULL, '“久事客流宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API、文件配送等形式,为用户', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (40, 20, 'ec78d02e27', '用户画像', '-覆盖5000万的公共交通卡实名用户 +-支持性别、年龄、消费城市、高频线路/站点等40+个性化用户标签 +-常用于站点广告投放、商铺选址、客群洞察等场景', NULL, '3', NULL, '2', '00', '100004', 'jiuyv', '2023-08-21 14:32:03', '100014', 'admin1', '2023-10-17 10:41:49', 3, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (42, 5, '7aa1cc55e2', '久事乘车宝', '/images/console/b1c4bef7faad45b99d22697eef0f2492.jpg', NULL, '4', NULL, '3', '99', '1', 'admin', '2023-09-07 19:17:19', '100004', 'jiuyv', '2023-09-11 15:22:22', NULL, NULL, '“久事乘车宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API形式,为用户提供久事集团', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (34, 1, '906a0f30f8', 'fffffff', '/images/console/4270e66ac8bd44328b2cc09795da0804.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:47:59', '100004', 'jiuyv', '2023-09-12 14:08:12', 4, NULL, 'dfasdfsadfasdfsdaf', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (26, 5, 'dca2e730c5', '助力数字城市建设,交通卡新产品“久事客流宝”拿下上海数据交易所“第一单”!', '

助力数字城市建设,交通卡新产品“久事客流宝”拿下上海数据交易所“第一单”!

', NULL, '2', NULL, '2', '00', '100007', 'yts', '2023-07-20 14:54:47', '1', 'admin', '2023-09-08 17:28:56', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (5, 13, 'ba18807a06', '交通卡公司成功通过国家数据管理能力成熟度评审,成上海交通行业首家获评企业!', '

交通卡公司成功通过国家数据管理能力成熟度评审,成上海交通行业首家获评企业!

', '2', '2', NULL, '2', '00', '1', 'admin', '2023-06-25 15:37:19', '1', 'admin', '2023-09-08 17:28:59', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (32, 9, 'd07ba62633', '交通卡公司新产品“久事乘车宝”近日在上海数据交易所成功挂牌!', '

在久事集团指导下,交通卡公司和久事公交共同推出的“久事乘车宝”数据产品,近日在上海数据交易所成功挂牌。

“久事乘车宝”是通过API形式,为用户提供久事集团旗下公交线路实时到站预报数据。该产品是依托久事集团“云数据中心”强大的计算能力,通过前端感知、后端算法互为加强,研发了国内领先的公交到站预报模型。目前,公交到站预报准确率已达到97%以上,市民在公交车站、“随申办”APP、“上海公交”APP可进行公交到站预报信息的实时查询,从而告别等车焦虑。

“久事乘车宝”数据产品的研发和推出是久事集团践行“人民城市”理念,推进出行服务数字化转型的重要实践,可为企事业单位、行业主管部门、研究机构提供服务,推动数据要素流通、释放数字红利、促进上海市数字经济发展。

', NULL, '2', NULL, '2', '00', '100007', 'yts', '2023-07-27 16:41:50', '100004', 'jiuyv', '2023-09-12 14:13:05', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (19, 3, '597fa276d1', '标题六ddd', '

hello

', '2', '4', NULL, '1', '99', '100007', 'yts', '2023-07-03 17:57:32', '100007', 'yts', '2023-07-18 11:00:37', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (43, 4, '37c210a04e', '用户画像', '/images/console/e097514f6bcb464192f0eb58ef276537.jpg', NULL, '4', NULL, '3', '99', '1', 'admin', '2023-09-11 09:54:57', '100004', 'jiuyv', '2023-09-11 16:15:47', NULL, NULL, '-覆盖5000万的公共交通卡实名用户 +-支持性别、年龄、消费城市、高频线路/站点等40+个性化用户标', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (51, 1, '8158cfb781', '撒打发斯蒂芬', '发生的发生的', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:47:00', '1', 'admin', '2023-10-17 20:47:10', 1, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (52, 0, '1', '啊啊啊', '啊啊啊', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:52:35', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (53, 0, '1', '啊啊啊', '啊啊啊', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:53:12', NULL, NULL, NULL, 0, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (54, 0, '1', '发生的发生的', '大法师的', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:54:15', NULL, NULL, NULL, 0, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (50, 4, '62faba0612', '测试', '

是多少

', NULL, '2', NULL, '2', '00', '1', 'admin', '2023-10-11 16:36:11', '1', 'admin', '2023-10-17 21:20:33', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (44, 18, '9997a0b975', '市交通行业首家DCMM认证企业', NULL, NULL, '1', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:11:48', '100015', 'admin2', '2023-11-09 13:37:24', 2, NULL, '交通卡公司获国家数据管理能力成熟度稳健级(3级)认证,数据标准统一,数据管理规范,数据治理较好。', '/images/console/0add92ad6cbf452b9c0d77742a7099c5.jpg'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (49, 13, 'f3db60bbf5', '用户画像', '

-覆盖5000万的公共交通卡实名用户

-支持性别、年龄、消费城市、高频线路/站点等40+个性化用户标签

-常用于站点广告投放、商铺选址、客群洞察等场景

 

', NULL, '4', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:22:12', '100015', 'admin2', '2023-11-29 17:32:26', 3, NULL, NULL, '/images/console/cdbea889774e4bf7bbd3bcaa72ec576d.png'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (46, 10, '0ea7246a4a', '市数商协会会员', NULL, NULL, '1', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:14:23', '100015', 'admin2', '2023-11-09 13:37:18', 1, NULL, '与各行业头部数商企业一同,推进数据创造、消费、流通、交易,最大程度释放数据价值。', '/images/console/b3d083cfc2b44dd4806b3830870e584c.jpg'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (45, 11, 'e78f8c7c8b', '市级企业技术中心', NULL, NULL, '1', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:13:53', '100015', 'admin2', '2023-11-09 13:37:28', 3, NULL, '交通卡公司获第30批市级企业技术中心认定企业,持续推进关键核心技术攻关,不断促进产学研用协同创新。', '/images/console/c2ca541e8dcd4dcd95402ac13f9113ab.jpg'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (47, 13, '6aceedd511', '久事客流宝', '

“久事客流宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API、文件配送等形式,为用户提供地面公交线路客流数据,为企业、研究机构、政府部门的实时监测、运营调度、线网优化、商业选址、辅助决策等需求提供数据支撑。

l 实时数据类

可提供全市范围地面公交线路整体客流数据。

l 非实时数据类

-可提供全市范围地面公交营运单位级、线路级客流数据,以及线路级换乘客流数据。

-可提供久事集团旗下500+条地面公交线路班次级、车辆级、站点级客流数据,以及站点级换乘客流数据。

-可根据用户需求,定制化提供区域级客流数据。

', NULL, '4', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:17:00', '100015', 'admin2', '2023-11-29 17:32:32', 1, NULL, NULL, '/images/console/53f1b8b838174db6b114c73d0b149869.png'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (55, 5, 'a1513d77a0', '测试', '

文本信息

', NULL, '2', NULL, '3', '00', '1', 'admin', '2023-10-31 16:48:14', '100019', 'admin3', '2023-11-17 16:21:53', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (48, 22, 'ed6470bf3d', '久事乘车宝', '

“久事乘车宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API形式,为用户提供久事集团旗下500+条地面公交线路实时到站预报数据,涵盖线路、站级、上下行、到站站距、到站距离、到站时间等多维度信息。

该产品依托久事集团“云数据中心”强大的计算能力,通过前端感知、后端算法互为加强,研发了国内领先的公交到站预报模型,数据准确率达97%以上。

该产品可以运用于信息技术服务、交通运输、公用事业、科学研究等多个领域。

-可应用于信息服务。为公众提供公交到站预报信息实时查询服务,解决市民的“等车焦虑”,以及帮助公众更好地规划公交出行,合理安排出行时间。

-可应用于公交运营。利用产品数据,来监控车辆运行情况、优化调度计划,提高运营效率,减少车辆拥堵和滞留,保障公交高质量服务。

-可应用于线网优化。基于实时数据,进行更为科学的公交线路规划、调整和优化,确保公共交通资源得到最大化利用,更好地满足广大市民的出行需求。

-可应用于科学研究。实时的公交运营数据可为交通客流、城市规划以及相关领域的研究提供数据支撑,为科学研究领域注入更多的活力和深度。

', NULL, '4', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:18:10', '100015', 'admin2', '2023-11-29 17:32:28', 2, NULL, NULL, '/images/console/22624b08dbfd4a69b3232e3bffd91ceb.png'); + + +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (116, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-16 20:15:51'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (117, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-16 20:16:13'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (118, 'test2', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 14:47:04'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (119, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 15:01:32'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (120, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 16:07:46'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (121, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 17:23:59'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (122, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 11:37:27'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (123, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 11:37:27'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (124, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:14:39'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (125, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:14:39'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (126, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:32:07'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (127, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:32:07'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (128, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:33:27'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (129, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:33:28'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (130, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:37:09'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (131, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:38:19'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (132, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:55:29'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (133, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:55:29'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (134, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:56:49'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (135, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:57:02'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (136, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 14:07:54'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (137, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 14:22:57'); + + +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (56, '实验室-数据注入申请', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.fileBind()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/fileBind', '172.16.12.107', '内网IP', '{applyId:2023110000000043,recToken:c521fbb94b,applyDesc:,fileIds:[183]}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-16 20:11:40'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (57, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户管理员', NULL, '/portal-service/portalUser/resetUserPwd', '130.252.101.48', 'XX XX', '{userId:1,password:$2a$10$.lobUGG6qW2lsQt0.AWAxe3KbrZ8hyY3jnkrLy.fw5er5lJtiHcie,oldPassword:TesjSBYcX6RgWQN1ylSuj2NTilVG27obk2NU031IehjnQycYJY3o8IxiT74xgjyGXtth6jgB0zd3VKhETH7GMwFG5wBI8Zsz+F7J2wCPSNEwyxsIwNxcURTDnqYR7HhTKCH/wjgsdsxm4BW/RuWyWI+8FrhJna5eRPvgP4xtfqk=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 14:24:50'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (58, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户管理员', NULL, '/portal-service/portalUser/resetUserPwd', '130.252.101.48', 'XX XX', '{userId:1,password:$2a$10$eDv7Z0/RigT5FAmp1u6dkOyE0G66KD5eanSg9zIHn4lu4H59N7LoS,oldPassword:A5Np6rk86b8+82y1Ov6CPv+DO8REOxDkhImXQ251TkaH4NQySaXkfymY9NxR+tW3q2zY+JITflGYiG4HRV1t1XChkP1jPR46riwbMkID20Vihubi2qz7Kb068HIuPbKrnunkDnwLXaVO3nbqsxr84SF+My4G+bDnxB9cprQIC7o=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 14:27:42'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (59, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户管理员', NULL, '/portal-service/portalUser/resetUserPwd', '130.252.101.48', 'XX XX', '{userId:1,password:$2a$10$mcs.j1UiDIaLGtsHT7dqrujvv/xKGAhQxJSMLpDSxu2h6XYBAKmKO,oldPassword:XO2dnNY5VHsIKQj2On9yTaQVDlQxSKuPEGVlRJMAW+QhB21IHNufTi8BTuNWThOToWACK5y/QsTg3l9ngfPk10r69DQkj6wu7NSsjHw8ctTksvo7YwuxU2bQFh8BEQngFzrskOj9Scokr8RBY1I2z9c0k+Xw7hpIkf5vI//7bFc=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 14:31:19'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (60, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,fileName:kk.zip,applyDesc:cc}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 20:45:27'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (61, '实验室-重启', 2, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.restart()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/restart', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,recToken:c521fbb94b}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-23 14:40:51'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (62, '实验室-重启', 2, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.restart()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/restart', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,recToken:0d44f07b66}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-23 14:51:01'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (63, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户测试', NULL, '/portal-service/portalUser/resetUserPwd', '172.16.12.107', '内网IP', '{userId:2023100000000006,password:$2a$10$WPm3R9cMsRohTtA4CsIP4uXLDpBKJZlzCO8.4edDxoty6X9kDFveS,oldPassword:PJeOCiPZu/bCfyACPFdIXqCnZP5pb12sBWXUKfyyA2fjXgqD/plDJfLNYZdsK1MT3TE+figXoYiipvKVUdJr3d7DjUoj+Ig3faKvRWOI+EEhbzHYL+xROHjKEEl8o/CeOruRZwVYUv6lgv/hkp2i5TdQdrkLn/SDiVTliWIzRH4=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-24 13:58:43'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (64, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '172.16.12.107', '内网IP', '{applyId:2023110000000043,fileName:kk.zip,applyDesc:cc}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-24 14:21:02'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (65, '实验室-数据注入申请', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.fileBind()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/fileBind', '172.16.12.107', '内网IP', '{applyId:2023110000000043,recToken:604ce3569f,applyDesc:eeeqqq,fileIds:[238]}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-28 16:47:18'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (66, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,fileName:bb.zip,applyDesc:aa}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-29 13:49:02'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (67, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,fileName:测试副本.zip,applyDesc:ccddd}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-29 13:50:46'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (68, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '130.252.101.48', 'XX XX', 'python aadd', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 14:58:36'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (69, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '130.252.101.48', 'XX XX', 'python aadd', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 15:03:04'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (70, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '172.16.12.107', '内网IP', 'python gggtttt', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 16:02:35'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (71, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '172.16.12.107', '内网IP', 'python yy666', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 16:06:22'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (72, '我的消息-查看消息', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalMessageController.detail()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/message/detail', '130.252.101.48', 'XX XX', '57', '{code:success,msg:操作成功,data:{msgId:57,msgTitle:实验室(2023110000000042)收回,msgText:您的实验室“测试”已被强制收回,将不再提供服务,如有疑问请拨打联系电话:(021-60825678)。,msgType:17,msgStatus:1,createTime:2023-11-16 05:44:00}}', 0, NULL, '2023-12-05 15:47:21'); + +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023090000000003, 2, '1', NULL, 'aaaa', 'aaaa', NULL, NULL, NULL, NULL, NULL, '$2a$10$GgF65HGddAHTC.YigDFDWuidNki0ffwJ0UgFVSlzYiXMZMLz6aMZ2', NULL, NULL, NULL, NULL, NULL, '0', '2', NULL, NULL, NULL, 0, NULL, NULL, '1', '管理员', '2023-09-06 17:10:16', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000009, 0, '1', NULL, 'adminliu', 'liuquan', NULL, NULL, 'K1V+hZd5/a9Et/aw3cfVXQ==', '0', NULL, '$2a$10$KiHtBdwsnlteKr4f2Ssl7elDoZBjPmlRerh6XORlW4.VkPMD10gC2', '演示', NULL, '232903209809222', NULL, NULL, '0', '0', '172.16.12.254', '2023-11-08 14:36:43', '0', 0, '2023-11-08 14:36:32', NULL, '1', '管理员', '2023-11-07 16:04:19', NULL, NULL, '2023-11-08 14:37:29', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000008, 1, '4e09f0f8f2', NULL, 'admin3', '测试', NULL, NULL, 'K1V+hZd5/a9Et/aw3cfVXQ==', '0', NULL, '0', NULL, NULL, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, NULL, NULL, '100014', 'admin1', '2023-10-31 14:40:34', '100016', 'admin55', '2023-11-09 16:53:08', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000004, 3, 'b12fdc8904', NULL, 'test1', '测试1', NULL, NULL, NULL, '0', NULL, '$2a$10$6/TFwxB1P7jNH5hzcA0JAuTmsrDxEqgzqp4aDwijfRphefElWufTS', NULL, NULL, NULL, NULL, NULL, '0', '0', NULL, NULL, NULL, 0, NULL, NULL, '1', '管理员', '2023-10-11 15:57:15', '100019', 'admin3', '2023-11-16 18:34:38', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000006, 10, 'c14073cfc1', NULL, 'admin55', '门户测试', NULL, '+hCBfvoE1AFCHG8QaEh2uQ==', 'FLfuV8lDRrL1S84g5dm9oQ==', '0', NULL, '$2a$10$WPm3R9cMsRohTtA4CsIP4uXLDpBKJZlzCO8.4edDxoty6X9kDFveS', '测试企业', '88', '9999999999999', NULL, '测试地址', '0', '0', '172.16.12.254', '2023-11-24 13:58:29', '0', 1, '2023-11-28 16:36:17', '测试备注', '1', '管理员', '2023-10-20 14:39:44', '100016', 'admin55', '2023-11-28 16:37:11', '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000010, 10, '1f53935033', NULL, 'admin66', '测试2', NULL, 'h79/6DkHoKCkv2+EtFcDCw==', 'ghX9kf1Q/A83hwzaSXNYhw==', '0', NULL, '$2a$10$dwTBdtd12Ej2UlItSH3fUuqqO9MuypsdlOz2hiwJZWKrv4NqefC5.', 'cc', 'bb', '1111111111111111', NULL, 'aaaaa', '0', '0', '127.0.0.1', '2023-11-21 15:05:59', '0', 0, '2023-11-21 15:04:56', NULL, '100016', 'admin55', '2023-11-09 16:59:00', '100016', 'admin55', '2023-11-21 15:05:56', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (18, 1, '1', NULL, 'shuk', 'shuk', NULL, '1KpmsmENvm4hQAiIT0YY0V31x0mvmJZyeR6mGBVoiI0=', 'sk3OF3rwVN7VpGSpemXHuQ==', '0', NULL, '$2a$10$5hxOW1UIMcgL3s6t1Pg/qulAITgkh/1ikTHYVdq8Es.hq/RxKqmXm', 'ceshi ', NULL, '2321233333211', NULL, NULL, '0', '0', '10.10.241.218', '2023-11-21 15:47:50', '0', 0, '2023-11-21 15:47:38', NULL, '16', 'admin1', '2023-11-21 14:29:35', '16', 'admin1', '2023-11-21 15:47:50', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000017, 2, '2a5de3f6bd', NULL, 'test3', '测试1', NULL, NULL, '78+O8ADpYZEDQWoiBeosrg==', '0', NULL, '$2a$10$olHo.LdmGaYHVljmp8ka3.F7JgxKKIZ56OAB1xDDhbiZRM5dVAVDy', NULL, NULL, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, NULL, NULL, '1', '管理员', '2023-11-21 15:34:20', '1', '管理员', '2023-11-21 16:57:26', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023060000000002, 4, 'bccf2a7a4f', 1, 'zhangsf', '张三丰', '00', '', '13855556666', '1', '/images/portal/16ed81d9f13d4e5cabcc6d21b22a06d1.jpg', '1', NULL, NULL, NULL, NULL, 'aa', '0', '0', '172.16.12.254', '2023-11-02 19:57:34', '0', 0, '2023-05-26 16:02:24', '', 'admin', '管理员', '2023-04-04 13:29:07', '100014', 'admin1', '2023-11-03 13:24:20', '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000011, 0, '1', NULL, '压测', 'test0', NULL, NULL, '0M2GcOW6GRbbzHoe+wQ21A==', '0', NULL, '$2a$10$PzyoAoc.jE66pwKfU5q9ue7MwKyL4jYo2d1fpEwoAtmRzaz4y0P12', NULL, NULL, '32143232312', NULL, NULL, '0', '0', NULL, NULL, NULL, NULL, NULL, NULL, '1', '管理员', '2023-11-14 15:26:09', NULL, NULL, NULL, '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000005, 11, '95f33ae495', NULL, 'test2', '测试1', NULL, 'O8dyy6bCfL+eziJFikbymg==', 'gyvOhHepdlRtoms79soE4w==', NULL, NULL, '$2a$10$.EIpeblf5yEsaSihZO2D8.Lvip24v3oA8DaipvGF9FwHInQTIzeSO', '测试企业', '研究', '1231983921839d', NULL, '测试长度。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。', '0', '0', '127.0.0.1', '2023-12-06 17:00:25', '0', 0, '2023-11-21 15:05:11', NULL, '1', '管理员', '2023-10-11 16:01:51', '1', '管理员', '2023-12-06 17:01:23', '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (1, 15, '1', 1, 'admin', '门户管理员', '00', 'admin@admin.com', '13855556666', '1', '/images/portal/fca2104d499048feb53f872dbc110fa1.png', '$2a$10$mcs.j1UiDIaLGtsHT7dqrujvv/xKGAhQxJSMLpDSxu2h6XYBAKmKO', '测试企业', '88', '9999999999999', NULL, '测试地址', '0', '0', '127.0.0.1', '2023-12-08 13:42:07', '0', 0, '2023-12-06 16:24:43', '', 'admin', '管理员', '2023-04-04 13:29:07', NULL, NULL, '2023-12-08 13:42:04', '1'); + + +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (16, 1, '门户管理员', '实验室(2023070000000016)即将到期', '您的实验室即将到期,实验室编号:2023070000000016,到期时间2023-10-03 15:51', '3', '0', '00', 'system', '系统自动', '2023-09-30 23:29:59', 'system', '系统自动', '2023-09-30 23:29:59'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020', '1', '0', '00', 'system', '系统自动', '2023-07-10 19:58:52', 'system', '系统自动', '2023-07-10 19:58:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (9, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 19:50', '1', '0', '00', 'system', '系统自动', '2023-07-20 19:50:49', 'system', '系统自动', '2023-07-20 19:50:49'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (10, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 19:53', '1', '0', '00', 'system', '系统自动', '2023-07-20 19:53:59', 'system', '系统自动', '2023-07-20 19:53:59'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (11, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 20:07', '1', '0', '00', 'system', '系统自动', '2023-07-20 20:07:45', 'system', '系统自动', '2023-07-20 20:07:45'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (31, 2023060000000002, '张三丰', '实验室(2023100000000034)申请通过', '您申请的实验室已创建,实验室编号:2023100000000034,到期时间2023-11-25 19:32', '1', '0', '00', 'system', '系统自动', '2023-10-26 19:32:32', 'system', '系统自动', '2023-10-26 19:32:32'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (19, 2023060000000002, '张三丰', '实验室(2023070000000021)申请通过', '您申请的实验室已创建,实验室编号:2023070000000021,到期时间2023-11-16 10:23', '1', '0', '00', 'system', '系统自动', '2023-10-17 10:23:57', 'system', '系统自动', '2023-10-17 10:23:57'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (29, 1, '门户管理员', '实验室(2023100000000033)申请通过', '您申请的实验室已创建,实验室编号:2023100000000033,到期时间2023-10-24 20:44', '1', '1', '00', 'system', '系统自动', '2023-10-19 20:44:58', '1', '门户管理员', '2023-12-05 15:49:25'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (12, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 20:14', '1', '0', '00', 'system', '系统自动', '2023-07-20 20:14:22', 'system', '系统自动', '2023-07-20 20:14:22'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (13, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-08-01 14:33', '1', '0', '00', 'system', '系统自动', '2023-07-21 14:33:43', 'system', '系统自动', '2023-07-21 14:33:43'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (14, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-03 15:35', '1', '0', '00', 'system', '系统自动', '2023-09-22 15:35:28', 'system', '系统自动', '2023-09-22 15:35:28'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (4, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间{expirationTime}', '1', '0', '00', 'system', '系统自动', '2023-07-11 13:00:15', 'system', '系统自动', '2023-07-11 13:00:15'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (5, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-08-02 13:05', '1', '0', '00', 'system', '系统自动', '2023-07-11 13:05:11', 'system', '系统自动', '2023-07-11 13:05:11'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020', '1', '0', '00', 'system', '系统自动', '2023-07-11 11:52:46', 'system', '系统自动', '2023-07-11 11:52:46'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (7, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-08-02 14:41', '1', '0', '00', 'system', '系统自动', '2023-07-11 14:41:45', 'system', '系统自动', '2023-07-11 14:41:45'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (30, 1, '门户管理员', '实验室(2023100000000033)即将到期', '您的实验室即将到期,实验室编号:2023100000000033,到期时间2023-10-24 20:44', '3', '0', '00', 'system', '系统自动', '2023-10-21 23:29:59', 'system', '系统自动', '2023-10-21 23:29:59'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (15, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-03 15:51', '1', '0', '00', 'system', '系统自动', '2023-09-22 15:51:18', 'system', '系统自动', '2023-09-22 15:51:18'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (28, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 17:35', '1', '0', '00', 'system', '系统自动', '2023-10-19 17:35:48', 'system', '系统自动', '2023-10-19 17:35:48'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (27, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 17:19', '1', '0', '00', 'system', '系统自动', '2023-10-19 17:20:09', 'system', '系统自动', '2023-10-19 17:20:09'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (18, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-11-08 10:09', '1', '0', '00', 'system', '系统自动', '2023-10-17 10:09:55', 'system', '系统自动', '2023-10-17 10:09:55'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (20, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-28 15:30', '1', '0', '00', 'system', '系统自动', '2023-10-17 15:30:11', 'system', '系统自动', '2023-10-17 15:30:11'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (21, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 10:00', '1', '0', '00', 'system', '系统自动', '2023-10-19 10:00:42', '1', '门户管理员', '2023-11-14 14:52:16'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (22, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 10:50', '1', '0', '00', 'system', '系统自动', '2023-10-19 10:51:25', '1', '门户管理员', '2023-11-14 14:52:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (23, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 14:23', '1', '0', '00', 'system', '系统自动', '2023-10-19 14:24:55', '1', '门户管理员', '2023-11-14 14:52:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (24, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 16:39', '1', '0', '00', 'system', '系统自动', '2023-10-19 16:40:36', '1', '门户管理员', '2023-11-14 14:52:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (53, 2023060000000002, '张三丰(zhangsf)', '实验室(2023110000000041)重新初始化', '您的实验室“zeppelin(测试)”已重新初始化,实验室编号:2023110000000041,如有疑问请拨打联系电话:(021-60825678)。', '6', '0', '00', 'system', '系统自动', '2023-11-15 17:38:38', 'system', '系统自动', '2023-11-15 17:38:38'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (6, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-08-02 13:19', '1', '0', '00', 'system', '系统自动', '2023-07-11 13:19:32', '1', '门户管理员', '2023-11-14 17:07:07'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (8, 2023060000000002, '张三丰', '实验室(2023070000000021)申请通过', '您申请的实验室已创建,实验室编号:2023070000000021,到期时间2023-08-10 20:16', '1', '0', '00', 'system', '系统自动', '2023-07-11 20:16:50', 'system', '系统自动', '2023-07-11 20:16:50'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (17, 2023100000000005, '测试1', '实验室(2023100000000029)申请通过', '您申请的实验室已创建,实验室编号:2023100000000029,到期时间2023-10-14 11:16', '1', '0', '00', 'system', '系统自动', '2023-10-12 11:16:22', 'system', '系统自动', '2023-10-12 11:16:22'); + + +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', '2023-08-25', 2875, '2023-11-09 14:35:30.598151', NULL, 135491951); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', '2023-08-25', 2602, '2023-11-09 14:35:30.631274', NULL, 135491952); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010000', '100', '1', '00-01', '巴士一公司', '3', '2023-08-25', 3300, '2023-11-09 14:35:30.631274', NULL, 135491953); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('101400', '1014', '1', '00-06', '巴士四公司', '1', '2023-08-25', 725, '2023-11-09 14:35:30.631274', NULL, 135491954); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010200', '102', '1', '00-01', '巴士一公司', '5', '2023-08-25', 141, '2023-11-09 14:35:30.631274', NULL, 135491955); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010300', '103', '1', '00-01', '巴士一公司', '3', '2023-08-25', 5748, '2023-11-09 14:35:30.631274', NULL, 135491956); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '1', '00-06', '巴士四公司', '3', '2023-08-25', 2513, '2023-11-09 14:35:30.631274', NULL, 135491957); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010500', '105', '1', '00-04', '巴士三公司', '3', '2023-08-25', 2423, '2023-11-09 14:35:30.631274', NULL, 135491958); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010600', '106', '1', '00-04', '巴士三公司', '3', '2023-08-25', 1662, '2023-11-09 14:35:30.631274', NULL, 135491959); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010700', '107', '1', '00-10', '巴士五公司', '5', '2023-08-25', 1631, '2023-11-09 14:35:30.631274', NULL, 135491960); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010800', '108', '1', '00-10', '巴士五公司', '3', '2023-08-25', 7863, '2023-11-09 14:35:30.631274', NULL, 135491961); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010880', '108区间', '1', '00-10', '巴士五公司', '1', '2023-08-25', 402, '2023-11-09 14:35:30.631274', NULL, 135491962); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('001100', '11', '1', '00-06', '巴士四公司', '3', '2023-08-25', 1822, '2023-11-09 14:35:30.631274', NULL, 135491963); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011000', '110', '1', '00-10', '巴士五公司', '3', '2023-08-25', 12314, '2023-11-09 14:35:30.631274', NULL, 135491964); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011100', '111', '1', '00-12', '巴士二公司', '3', '2023-08-25', 2554, '2023-11-09 14:35:30.631274', NULL, 135491965); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011200', '112', '1', '00-04', '巴士三公司', '3', '2023-08-25', 4305, '2023-11-09 14:35:30.631274', NULL, 135491966); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011280', '112区间', '1', '00-04', '巴士三公司', '3', '2023-08-25', 3194, '2023-11-09 14:35:30.631274', NULL, 135491967); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011300', '113', '1', '00-04', '巴士三公司', '3', '2023-08-25', 3478, '2023-11-09 14:35:30.631274', NULL, 135491968); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011500', '115', '1', '00-01', '巴士一公司', '3', '2023-08-25', 4334, '2023-11-09 14:35:30.631274', NULL, 135491969); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011690', '116', '1', '00-10', '巴士五公司', '3', '2023-08-25', 6640, '2023-11-09 14:35:30.631274', NULL, 135491970); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011700', '117', '1', '00-04', '巴士三公司', '3', '2023-08-25', 2401, '2023-11-09 14:35:30.631274', NULL, 135491971); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011800', '118', '1', '00-10', '巴士五公司', '3', '2023-08-25', 4618, '2023-11-09 14:35:30.631274', NULL, 135491972); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('012000', '120', '1', '00-04', '巴士三公司', '3', '2023-08-25', 1471, '2023-11-09 14:35:30.631274', NULL, 135491973); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120104', '1201', '1', '00-01', '巴士一公司', '3', '2023-08-25', 987, '2023-11-09 14:35:30.631274', NULL, 135491974); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120304', '1203', '1', '00-12', '巴士二公司', '3', '2023-08-25', 1102, '2023-11-09 14:35:30.631274', NULL, 135491975); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120404', '1204', '1', '00-12', '巴士二公司', '3', '2023-08-25', 501, '2023-11-09 14:35:30.631274', NULL, 135491976); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120490', '1204B', '1', '00-12', '巴士二公司', '3', '2023-08-25', 420, '2023-11-09 14:35:30.631274', NULL, 135491977); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120504', '1205', '1', '00-06', '巴士四公司', '3', '2023-08-25', 455, '2023-11-09 14:35:30.631274', NULL, 135491978); + + +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 5, '2023-08-25', 46, '2023-11-09 14:36:08.307074', NULL, 1738985); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 6, '2023-08-25', 106, '2023-11-09 14:36:08.314398', NULL, 1738986); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 7, '2023-08-25', 224, '2023-11-09 14:36:08.314398', NULL, 1738987); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 8, '2023-08-25', 288, '2023-11-09 14:36:08.314398', NULL, 1738988); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 9, '2023-08-25', 236, '2023-11-09 14:36:08.314398', NULL, 1738989); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 10, '2023-08-25', 184, '2023-11-09 14:36:08.314398', NULL, 1738990); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 11, '2023-08-25', 193, '2023-11-09 14:36:08.314398', NULL, 1738991); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 12, '2023-08-25', 196, '2023-11-09 14:36:08.314398', NULL, 1738992); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 13, '2023-08-25', 149, '2023-11-09 14:36:08.314398', NULL, 1738993); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 14, '2023-08-25', 164, '2023-11-09 14:36:08.314398', NULL, 1738994); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 15, '2023-08-25', 185, '2023-11-09 14:36:08.314398', NULL, 1738995); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 16, '2023-08-25', 175, '2023-11-09 14:36:08.314398', NULL, 1738996); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 17, '2023-08-25', 180, '2023-11-09 14:36:08.314398', NULL, 1738997); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 18, '2023-08-25', 187, '2023-11-09 14:36:08.314398', NULL, 1738998); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 19, '2023-08-25', 112, '2023-11-09 14:36:08.314398', NULL, 1738999); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 20, '2023-08-25', 85, '2023-11-09 14:36:08.314398', NULL, 1739000); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 21, '2023-08-25', 86, '2023-11-09 14:36:08.314398', NULL, 1739001); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 22, '2023-08-25', 56, '2023-11-09 14:36:08.314398', NULL, 1739002); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 23, '2023-08-25', 23, '2023-11-09 14:36:08.314398', NULL, 1739003); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 6, '2023-08-25', 13, '2023-11-09 14:36:08.314398', NULL, 1739004); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 7, '2023-08-25', 157, '2023-11-09 14:36:08.314398', NULL, 1739005); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 8, '2023-08-25', 303, '2023-11-09 14:36:08.314398', NULL, 1739006); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 9, '2023-08-25', 187, '2023-11-09 14:36:08.314398', NULL, 1739007); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 10, '2023-08-25', 101, '2023-11-09 14:36:08.314398', NULL, 1739008); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 11, '2023-08-25', 68, '2023-11-09 14:36:08.314398', NULL, 1739009); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 12, '2023-08-25', 56, '2023-11-09 14:36:08.314398', NULL, 1739010); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 13, '2023-08-25', 81, '2023-11-09 14:36:08.314398', NULL, 1739011); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 14, '2023-08-25', 123, '2023-11-09 14:36:08.314398', NULL, 1739012); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 15, '2023-08-25', 124, '2023-11-09 14:36:08.314398', NULL, 1739013); + + +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', '2023-08', 2875, '2023-11-09 14:36:08.600077', NULL, 32547); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', '2023-08', 2602, '2023-11-09 14:36:08.60549', NULL, 32548); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000600', '6', '1', '00-01', '巴士一公司', '3', '2023-08', 5313, '2023-11-09 14:36:08.60549', NULL, 32549); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000800', '8', '1', '00-01', '巴士一公司', '3', '2023-08', 1475, '2023-11-09 14:36:08.60549', NULL, 32550); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001100', '11', '1', '00-06', '巴士四公司', '3', '2023-08', 1822, '2023-11-09 14:36:08.60549', NULL, 32551); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001300', '13', '1', '00-01', '巴士一公司', '3', '2023-08', 3424, '2023-11-09 14:36:08.60549', NULL, 32552); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001400', '14', '1', '00-01', '巴士一公司', '3', '2023-08', 3278, '2023-11-09 14:36:08.60549', NULL, 32553); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001500', '15', '1', '00-01', '巴士一公司', '3', '2023-08', 2101, '2023-11-09 14:36:08.60549', NULL, 32554); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001700', '17', '1', '00-06', '巴士四公司', '3', '2023-08', 2767, '2023-11-09 14:36:08.60549', NULL, 32555); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001800', '18', '1', '00-06', '巴士四公司', '3', '2023-08', 3413, '2023-11-09 14:36:08.60549', NULL, 32556); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001900', '19', '1', '00-01', '巴士一公司', '3', '2023-08', 3358, '2023-11-09 14:36:08.60549', NULL, 32557); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002000', '20', '1', '00-01', '巴士一公司', '3', '2023-08', 6575, '2023-11-09 14:36:08.60549', NULL, 32558); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002100', '21', '1', '00-01', '巴士一公司', '3', '2023-08', 9073, '2023-11-09 14:36:08.60549', NULL, 32559); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002200', '22', '1', '00-01', '巴士一公司', '3', '2023-08', 3063, '2023-11-09 14:36:08.60549', NULL, 32560); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002300', '23', '1', '00-01', '巴士一公司', '3', '2023-08', 4126, '2023-11-09 14:36:08.60549', NULL, 32561); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002400', '24', '1', '00-01', '巴士一公司', '3', '2023-08', 4168, '2023-11-09 14:36:08.60549', NULL, 32562); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002500', '25', '1', '00-01', '巴士一公司', '3', '2023-08', 7407, '2023-11-09 14:36:08.60549', NULL, 32563); + + + +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '蓝村路南泉路', 1, '2023-08-25', 131, '2023-11-09 14:35:58.795016', NULL, 127361); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦建路东方路', 2, '2023-08-25', 94, '2023-11-09 14:35:58.807329', NULL, 127362); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路宁阳路', 3, '2023-08-25', 142, '2023-11-09 14:35:58.807329', NULL, 127363); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路浦电路', 4, '2023-08-25', 321, '2023-11-09 14:35:58.807329', NULL, 127364); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路商城路', 5, '2023-08-25', 101, '2023-11-09 14:35:58.807329', NULL, 127365); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路浦东大道', 6, '2023-08-25', 87, '2023-11-09 14:35:58.807329', NULL, 127366); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安东路浙江中路', 7, '2023-08-25', 140, '2023-11-09 14:35:58.807329', NULL, 127367); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安中路石门一路', 8, '2023-08-25', 47, '2023-11-09 14:35:58.807329', NULL, 127368); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安中路陕西北路', 9, '2023-08-25', 81, '2023-11-09 14:35:58.807329', NULL, 127369); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安西路华山路', 10, '2023-08-25', 81, '2023-11-09 14:35:58.807329', NULL, 127370); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安西路镇宁路', 11, '2023-08-25', 50, '2023-11-09 14:35:58.807329', NULL, 127371); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '江苏路延安西路', 12, '2023-08-25', 80, '2023-11-09 14:35:58.807329', NULL, 127372); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '江苏路愚园路', 13, '2023-08-25', 32, '2023-11-09 14:35:58.807329', NULL, 127373); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路谈家渡路', 14, '2023-08-25', 22, '2023-11-09 14:35:58.807329', NULL, 127374); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路白玉路', 15, '2023-08-25', 29, '2023-11-09 14:35:58.807329', NULL, 127375); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路南石路', 16, '2023-08-25', 7, '2023-11-09 14:35:58.807329', NULL, 127376); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路铜川路', 17, '2023-08-25', 6, '2023-11-09 14:35:58.807329', NULL, 127377); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路芝川路', 18, '2023-08-25', 1, '2023-11-09 14:35:58.807329', NULL, 127378); + + + +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 13, '2023-08-25', 7, '2023-11-09 14:36:01.034693', NULL, 1538323); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 14, '2023-08-25', 5, '2023-11-09 14:36:01.034693', NULL, 1538324); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 15, '2023-08-25', 17, '2023-11-09 14:36:01.034693', NULL, 1538325); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 16, '2023-08-25', 16, '2023-11-09 14:36:01.034693', NULL, 1538326); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 17, '2023-08-25', 10, '2023-11-09 14:36:01.034693', NULL, 1538327); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 18, '2023-08-25', 5, '2023-11-09 14:36:01.034693', NULL, 1538328); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 19, '2023-08-25', 2, '2023-11-09 14:36:01.034693', NULL, 1538329); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 20, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538330); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 22, '2023-08-25', 3, '2023-11-09 14:36:01.034693', NULL, 1538331); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 4, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538332); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 5, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538333); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 6, '2023-08-25', 21, '2023-11-09 14:36:01.034693', NULL, 1538334); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 7, '2023-08-25', 16, '2023-11-09 14:36:01.034693', NULL, 1538335); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 8, '2023-08-25', 16, '2023-11-09 14:36:01.034693', NULL, 1538336); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 9, '2023-08-25', 11, '2023-11-09 14:36:01.034693', NULL, 1538337); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 10, '2023-08-25', 11, '2023-11-09 14:36:01.034693', NULL, 1538338); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 11, '2023-08-25', 3, '2023-11-09 14:36:01.034693', NULL, 1538339); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 12, '2023-08-25', 7, '2023-11-09 14:36:01.034693', NULL, 1538340); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 13, '2023-08-25', 9, '2023-11-09 14:36:01.034693', NULL, 1538341); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 14, '2023-08-25', 11, '2023-11-09 14:36:01.034693', NULL, 1538342); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 15, '2023-08-25', 4, '2023-11-09 14:36:01.034693', NULL, 1538343); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 16, '2023-08-25', 6, '2023-11-09 14:36:01.034693', NULL, 1538344); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 17, '2023-08-25', 6, '2023-11-09 14:36:01.034693', NULL, 1538345); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 18, '2023-08-25', 8, '2023-11-09 14:36:01.034693', NULL, 1538346); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 19, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538347); + + +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 7, '延安东路浙江中路', '2023-08', 140, '2023-11-09 14:35:43.522737', NULL, 109168); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 8, '延安中路石门一路', '2023-08', 47, '2023-11-09 14:35:43.526955', NULL, 109169); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 9, '延安中路陕西北路', '2023-08', 81, '2023-11-09 14:35:43.526955', NULL, 109170); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 10, '延安西路华山路', '2023-08', 81, '2023-11-09 14:35:43.526955', NULL, 109171); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 11, '延安西路镇宁路', '2023-08', 50, '2023-11-09 14:35:43.526955', NULL, 109172); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 16, '曹杨路南石路', '2023-08', 7, '2023-11-09 14:35:43.526955', NULL, 109173); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 15, '曹杨路白玉路', '2023-08', 29, '2023-11-09 14:35:43.526955', NULL, 109174); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 18, '曹杨路芝川路', '2023-08', 1, '2023-11-09 14:35:43.526955', NULL, 109175); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 14, '曹杨路谈家渡路', '2023-08', 22, '2023-11-09 14:35:43.526955', NULL, 109176); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 17, '曹杨路铜川路', '2023-08', 6, '2023-11-09 14:35:43.526955', NULL, 109177); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 12, '江苏路延安西路', '2023-08', 80, '2023-11-09 14:35:43.526955', NULL, 109178); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 13, '江苏路愚园路', '2023-08', 32, '2023-11-09 14:35:43.526955', NULL, 109179); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 5, '浦东南路商城路', '2023-08', 101, '2023-11-09 14:35:43.526955', NULL, 109180); + + + +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '公交换公交', '2023-08-25', 23, '2023-11-09 14:35:32.240675', NULL, '蓝村路南泉路', 294934); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '地铁换公交', '2023-08-25', 9, '2023-11-09 14:35:32.255085', NULL, '蓝村路南泉路', 294935); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '非换乘', '2023-08-25', 99, '2023-11-09 14:35:32.255085', NULL, '蓝村路南泉路', 294936); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '公交换公交', '2023-08-25', 42, '2023-11-09 14:35:32.255085', NULL, '浦建路东方路', 294937); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '地铁换公交', '2023-08-25', 4, '2023-11-09 14:35:32.255085', NULL, '浦建路东方路', 294938); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '非换乘', '2023-08-25', 48, '2023-11-09 14:35:32.255085', NULL, '浦建路东方路', 294939); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '公交换公交', '2023-08-25', 13, '2023-11-09 14:35:32.255085', NULL, '浦东南路宁阳路', 294940); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '地铁换公交', '2023-08-25', 9, '2023-11-09 14:35:32.255085', NULL, '浦东南路宁阳路', 294941); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '非换乘', '2023-08-25', 120, '2023-11-09 14:35:32.255085', NULL, '浦东南路宁阳路', 294942); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '公交换公交', '2023-08-25', 29, '2023-11-09 14:35:32.255085', NULL, '浦东南路浦电路', 294943); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '地铁换公交', '2023-08-25', 2, '2023-11-09 14:35:32.255085', NULL, '浦东南路浦电路', 294944); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '非换乘', '2023-08-25', 290, '2023-11-09 14:35:32.255085', NULL, '浦东南路浦电路', 294945); + +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '公交换公交', 10, '2023-08-25', 1, '2023-11-09 14:35:46.061181', NULL, '上海西站', 2250944); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '公交换公交', 13, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250945); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '地铁换公交', 7, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250946); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '地铁换公交', 11, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250947); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '地铁换公交', 15, '2023-08-25', 1, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250948); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 5, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250949); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 6, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250950); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 7, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250951); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 8, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250952); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 9, '2023-08-25', 7, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250953); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 11, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250954); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 12, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250955); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 13, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250956); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 14, '2023-08-25', 5, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250957); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 15, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250958); + + + +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '公交换公交', '2023-08', 37, '2023-11-09 14:35:42.054173', NULL, '延安东路浙江中路', 252802); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:42.059253', NULL, '延安东路浙江中路', 252803); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '非换乘', '2023-08', 101, '2023-11-09 14:35:42.059253', NULL, '延安东路浙江中路', 252804); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '公交换公交', '2023-08', 14, '2023-11-09 14:35:42.059253', NULL, '延安中路石门一路', 252805); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '地铁换公交', '2023-08', 6, '2023-11-09 14:35:42.059253', NULL, '延安中路石门一路', 252806); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '非换乘', '2023-08', 27, '2023-11-09 14:35:42.059253', NULL, '延安中路石门一路', 252807); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '公交换公交', '2023-08', 12, '2023-11-09 14:35:42.059253', NULL, '延安中路陕西北路', 252808); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:42.059253', NULL, '延安中路陕西北路', 252809); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '非换乘', '2023-08', 67, '2023-11-09 14:35:42.059253', NULL, '延安中路陕西北路', 252810); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '公交换公交', '2023-08', 16, '2023-11-09 14:35:42.059253', NULL, '延安西路华山路', 252811); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '地铁换公交', '2023-08', 14, '2023-11-09 14:35:42.059253', NULL, '延安西路华山路', 252812); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '非换乘', '2023-08', 51, '2023-11-09 14:35:42.059253', NULL, '延安西路华山路', 252813); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '公交换公交', '2023-08', 12, '2023-11-09 14:35:42.059253', NULL, '延安西路镇宁路', 252814); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:42.059253', NULL, '延安西路镇宁路', 252815); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '非换乘', '2023-08', 36, '2023-11-09 14:35:42.059253', NULL, '延安西路镇宁路', 252816); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 16, '公交换公交', '2023-08', 4, '2023-11-09 14:35:42.059253', NULL, '曹杨路南石路', 252817); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 16, '地铁换公交', '2023-08', 1, '2023-11-09 14:35:42.059253', NULL, '曹杨路南石路', 252818); + + +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '03-06218', NULL, '蓝村路南泉路', '2023-08-25 07:15:00', '上海西站', '2023-08-25 08:26:37', '全程', '2023-08-25', 28, '2023-11-09 14:35:35.145978', NULL, 1437139); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '03-06218', NULL, '蓝村路南泉路', '2023-08-25 10:30:00', '上海西站', '2023-08-25 11:51:13', '全程', '2023-08-25', 15, '2023-11-09 14:35:35.164175', NULL, 1437140); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '03-06218', NULL, '上海西站', '2023-08-25 05:50:00', '蓝村路南泉路', '2023-08-25 06:46:55', '全程', '2023-08-25', 13, '2023-11-09 14:35:35.164175', NULL, 1437141); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '03-06218', NULL, '上海西站', '2023-08-25 08:45:00', '蓝村路南泉路', '2023-08-25 10:13:24', '全程', '2023-08-25', 25, '2023-11-09 14:35:35.164175', NULL, 1437142); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '04-07182', NULL, '蓝村路南泉路', '2023-08-25 17:40:00', '上海西站', '2023-08-25 19:21:04', '全程', '2023-08-25', 26, '2023-11-09 14:35:35.164175', NULL, 1437143); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '04-07182', NULL, '蓝村路南泉路', '2023-08-25 21:20:00', '上海西站', '2023-08-25 22:37:49', '全程', '2023-08-25', 9, '2023-11-09 14:35:35.164175', NULL, 1437144); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '04-07182', NULL, '上海西站', '2023-08-25 16:05:00', '蓝村路南泉路', '2023-08-25 17:20:40', '全程', '2023-08-25', 20, '2023-11-09 14:35:35.164175', NULL, 1437145); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '04-07182', NULL, '上海西站', '2023-08-25 19:50:00', '蓝村路南泉路', '2023-08-25 20:57:31', '全程', '2023-08-25', 24, '2023-11-09 14:35:35.164175', NULL, 1437146); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 07:30:00', '上海西站', '2023-08-25 08:51:40', '全程', '2023-08-25', 20, '2023-11-09 14:35:35.164175', NULL, 1437147); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 10:45:00', '上海西站', '2023-08-25 12:01:25', '全程', '2023-08-25', 15, '2023-11-09 14:35:35.164175', NULL, 1437148); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 14:00:00', '上海西站', '2023-08-25 15:29:52', '全程', '2023-08-25', 20, '2023-11-09 14:35:35.164175', NULL, 1437149); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 17:25:00', '上海西站', '2023-08-25 19:07:08', '全程', '2023-08-25', 21, '2023-11-09 14:35:35.164175', NULL, 1437150); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-03041D', '03-06097', NULL, '上海西站', '2023-08-25 06:10:00', '蓝村路南泉路', '2023-08-25 07:09:14', '全程', '2023-08-25', 16, '2023-11-09 14:35:35.164175', NULL, 1437151); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-03041D', '03-06097', NULL, '上海西站', '2023-08-25 09:00:00', '蓝村路南泉路', '2023-08-25 10:34:11', '全程', '2023-08-25', 45, '2023-11-09 14:35:35.164175', NULL, 1437152); + + + +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '1', '2023-08-25', 100, '2023-11-09 14:35:38.718145', NULL, '01', 138930); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '1', '2023-08-25', 66, '2023-11-09 14:35:38.736796', NULL, '01', 138931); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '1', '2023-08-25', 99, '2023-11-09 14:35:38.736796', NULL, '01', 138932); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '1', '2023-08-25', 273, '2023-11-09 14:35:38.736796', NULL, '01', 138933); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '1', '2023-08-25', 77, '2023-11-09 14:35:38.736796', NULL, '01', 138934); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 6, '1', '2023-08-25', 73, '2023-11-09 14:35:38.736796', NULL, '01', 138935); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '1', '2023-08-25', 80, '2023-11-09 14:35:38.736796', NULL, '01', 138936); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '1', '2023-08-25', 27, '2023-11-09 14:35:38.736796', NULL, '01', 138937); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '1', '2023-08-25', 50, '2023-11-09 14:35:38.736796', NULL, '01', 138938); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '1', '2023-08-25', 45, '2023-11-09 14:35:38.736796', NULL, '01', 138939); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '1', '2023-08-25', 33, '2023-11-09 14:35:38.736796', NULL, '01', 138940); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 12, '1', '2023-08-25', 60, '2023-11-09 14:35:38.736796', NULL, '01', 138941); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 13, '1', '2023-08-25', 22, '2023-11-09 14:35:38.736796', NULL, '01', 138942); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 14, '1', '2023-08-25', 15, '2023-11-09 14:35:38.736796', NULL, '01', 138943); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 15, '1', '2023-08-25', 20, '2023-11-09 14:35:38.736796', NULL, '01', 138944); + + + + +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '1', '2023-08', 100, '2023-11-09 14:35:39.89496', NULL, '01', 282029); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '1', '2023-08', 66, '2023-11-09 14:35:39.900578', NULL, '01', 282030); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '1', '2023-08', 99, '2023-11-09 14:35:39.900578', NULL, '01', 282031); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '1', '2023-08', 273, '2023-11-09 14:35:39.900578', NULL, '01', 282032); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '1', '2023-08', 77, '2023-11-09 14:35:39.900578', NULL, '01', 282033); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 6, '1', '2023-08', 73, '2023-11-09 14:35:39.900578', NULL, '01', 282034); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '1', '2023-08', 80, '2023-11-09 14:35:39.900578', NULL, '01', 282035); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '1', '2023-08', 27, '2023-11-09 14:35:39.900578', NULL, '01', 282036); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '1', '2023-08', 50, '2023-11-09 14:35:39.900578', NULL, '01', 282037); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '1', '2023-08', 45, '2023-11-09 14:35:39.900578', NULL, '01', 282038); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '1', '2023-08', 33, '2023-11-09 14:35:39.900578', NULL, '01', 282039); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 12, '1', '2023-08', 60, '2023-11-09 14:35:39.900578', NULL, '01', 282040); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 13, '1', '2023-08', 22, '2023-11-09 14:35:39.900578', NULL, '01', 282041); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 14, '1', '2023-08', 15, '2023-11-09 14:35:39.900578', NULL, '01', 282042); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 15, '1', '2023-08', 20, '2023-11-09 14:35:39.900578', NULL, '01', 282043); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 16, '1', '2023-08', 4, '2023-11-09 14:35:39.900578', NULL, '01', 282044); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 17, '1', '2023-08', 2, '2023-11-09 14:35:39.900578', NULL, '01', 282045); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '1', '2023-08', 36, '2023-11-09 14:35:39.900578', NULL, '01', 282046); + + + + + +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '公交换公交', '2023-08-25', 20, '2023-11-09 14:35:40.46062', NULL, '蓝村路南泉路', 717077); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '地铁换公交', '2023-08-25', 6, '2023-11-09 14:35:40.471864', NULL, '蓝村路南泉路', 717078); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '非换乘', '2023-08-25', 74, '2023-11-09 14:35:40.471864', NULL, '蓝村路南泉路', 717079); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '公交换公交', '2023-08-25', 32, '2023-11-09 14:35:40.471864', NULL, '浦建路东方路', 717080); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '地铁换公交', '2023-08-25', 2, '2023-11-09 14:35:40.471864', NULL, '浦建路东方路', 717081); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '非换乘', '2023-08-25', 32, '2023-11-09 14:35:40.471864', NULL, '浦建路东方路', 717082); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '公交换公交', '2023-08-25', 12, '2023-11-09 14:35:40.471864', NULL, '浦东南路宁阳路', 717083); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '地铁换公交', '2023-08-25', 5, '2023-11-09 14:35:40.471864', NULL, '浦东南路宁阳路', 717084); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '非换乘', '2023-08-25', 82, '2023-11-09 14:35:40.471864', NULL, '浦东南路宁阳路', 717085); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '公交换公交', '2023-08-25', 26, '2023-11-09 14:35:40.471864', NULL, '浦东南路浦电路', 717086); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '地铁换公交', '2023-08-25', 1, '2023-11-09 14:35:40.471864', NULL, '浦东南路浦电路', 717087); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '非换乘', '2023-08-25', 246, '2023-11-09 14:35:40.471864', NULL, '浦东南路浦电路', 717088); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '公交换公交', '2023-08-25', 30, '2023-11-09 14:35:40.471864', NULL, '浦东南路商城路', 717089); + + +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '非换乘', '2023-08', 74, '2023-11-09 14:35:44.124418', NULL, '蓝村路南泉路', 438220); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '公交换公交', '2023-08', 32, '2023-11-09 14:35:44.124418', NULL, '浦建路东方路', 438221); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:44.124418', NULL, '浦建路东方路', 438222); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '非换乘', '2023-08', 32, '2023-11-09 14:35:44.124418', NULL, '浦建路东方路', 438223); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '公交换公交', '2023-08', 12, '2023-11-09 14:35:44.124418', NULL, '浦东南路宁阳路', 438224); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '地铁换公交', '2023-08', 5, '2023-11-09 14:35:44.124418', NULL, '浦东南路宁阳路', 438225); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '非换乘', '2023-08', 82, '2023-11-09 14:35:44.124418', NULL, '浦东南路宁阳路', 438226); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '公交换公交', '2023-08', 26, '2023-11-09 14:35:44.124418', NULL, '浦东南路浦电路', 438227); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '地铁换公交', '2023-08', 1, '2023-11-09 14:35:44.124418', NULL, '浦东南路浦电路', 438228); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '非换乘', '2023-08', 246, '2023-11-09 14:35:44.124418', NULL, '浦东南路浦电路', 438229); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '公交换公交', '2023-08', 30, '2023-11-09 14:35:44.124418', NULL, '浦东南路商城路', 438230); + + +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (283, '/home/flink/dws-file/2023-08/dws_line_metric_month.zip', 'lineMonth', 503, '2023-11-09 14:36:08.885782', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (282, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_metric_hour.zip', 'lineHour', 8397, '2023-11-09 14:36:08.871764', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (281, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_metric_hour.zip', 'stationHour', 202677, '2023-11-09 14:36:08.83232', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (280, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_metric_day.zip', 'stationDay', 18193, '2023-11-09 14:35:59.25371', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (279, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_trans_hour.zip', 'stationTransHour', 321562, '2023-11-09 14:35:59.125862', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (278, '/home/flink/dws-file/2023-08/dws_station_freq_trans_month.zip', 'stationFreqTransMonth', 39837, '2023-11-09 14:35:44.390421', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (277, '/home/flink/dws-file/2023-08/dws_line_station_metric_month.zip', 'stationMonth', 18193, '2023-11-09 14:35:43.650689', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (276, '/home/flink/dws-file/2023-08/dws_line_station_trans_month.zip', 'stationTrnasMonth', 42132, '2023-11-09 14:35:42.377092', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (275, '/home/flink/dws-file/2023-08/2023-08-25/dws_station_freq_trans_day.zip', 'stationFreqTransDay', 39837, '2023-11-09 14:35:40.781475', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (274, '/home/flink/dws-file/2023-08/dws_station_freq_metric_month.zip', 'stationFreqMonth', 17365, '2023-11-09 14:35:40.017231', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (273, '/home/flink/dws-file/2023-08/2023-08-25/dws_station_freq_metric_day.zip', 'stationFreqDay', 17365, '2023-11-09 14:35:39.388497', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (272, '/home/flink/dws-file/2023-08/2023-08-25/dws_route_metric_day.zip', 'routeMetricDay', 57797, '2023-11-09 14:35:38.084658', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (271, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_trans_day.zip', 'stationTransDay', 42132, '2023-11-09 14:35:32.735624', '2023-08-25', '99'); + + + +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (386, 0, '666c0a65a6', 'e5718445179640a391be03548a7568c5', 'ruoyi-ui.zip', 'zip', '1543323', 'portal-2023-12', 'python', 'user', 'portal', '222', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 18:10:59', '1', '门户管理员', '2023-12-05 18:10:59'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (385, 0, 'dc4cfca8bc', 'b665724877e045a7b8d648c1a62d3988', 'agilebpm-ui.zip', 'zip', '14176772', 'portal-2023-12', 'python', 'user', 'portal', '111111', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 18:04:31', '1', '门户管理员', '2023-12-05 18:04:31'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (384, 0, '43c302a468', '8432fb2de08145868033eaa5de9d4e45', 'agilebpm-ui.zip', 'zip', '14176772', 'portal-2023-12', 'python', 'user', 'portal', '111111', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 18:04:11', '1', '门户管理员', '2023-12-05 18:04:11'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (383, 0, 'b47baf8421', '2202c93a48204219a3d1bfdd9f310689', 'agilebpm-ui.zip', 'zip', '14176772', 'portal-2023-12', 'python', 'user', 'portal', '111111', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 17:53:53', '1', '门户管理员', '2023-12-05 17:53:53'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (382, 0, 'e544b44ad1', '2f819636a2f34668a6558c9a2a445729', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:47:51', '100025', 'test88', '2023-12-05 14:47:51'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (381, 0, '229fddc9de', '6d94ef12d1a44d90a4e922f5d7cee99b', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:46:28', '100025', 'test88', '2023-12-05 14:46:28'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (380, 0, '89c827a40d', '1b99378246384e1a8410c7e0609220f7', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:31:41', '100025', 'test88', '2023-12-05 14:31:41'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (379, 0, '0095817244', '42e30ccf75894b7aa4d018bee14d2031', 'wallhaven-gp9d27.jpg', 'jpg', '13953884', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:20:21', '100025', 'test88', '2023-12-05 14:20:21'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (378, 0, '8506a3ba37', 'b3ba900787164394816182ad4575b047', 'wallhaven-gp9d27.jpg', 'jpg', '13953884', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:20:06', '100025', 'test88', '2023-12-05 14:20:06'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (377, 0, '1390b20e9f', 'fb02f11c1f1348caae73deea218a57c4', 'wallhaven-gp9d27.jpg', 'jpg', '13953884', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:16:33', '100025', 'test88', '2023-12-05 14:16:33'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (376, 0, '80dc44181c', '54f27f6f92cc4e1bb54d7c382e513eab', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:16:15', '100025', 'test88', '2023-12-05 14:16:15'); + + + +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (39, 0, '1', 'SQL工作台审批', 'sql_console_data_approve', 'SQL工作台审批', '您的SQL工作台数据申请{{applyNo}}已审批{{isPasss}},请登录久事大数据开放平台(管理系统)管理查看。', '22', '1', 'phone', '00', '1', '管理员', '2023-11-16 19:57:07', '1', '管理员', '2023-11-16 19:57:07'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (38, 0, '1', '实验室注入申请', 'docker_upload_review_sys', '实验室注入申请', '尊敬的用户您好,您的上传申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '21', '1', 'sys', '99', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (37, 0, '1', '实验室注入申请', 'docker_upload_review_phone', '实验室注入申请', '尊敬的用户您好,您的上传申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '21', '1', 'phone', '00', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (36, 0, '1', '实验室下载申请', 'docker_download_review_sys', '实验室下载申请', '尊敬的用户您好,您的下载申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '7', '1', 'sys', '99', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (35, 0, '1', '实验室下载申请', 'docker_download_review_phone', '实验室下载申请', '尊敬的用户您好,您的下载申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '7', '1', 'phone', '00', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (34, 0, '1', '实验室重新初始(jupyter)', 'docker_create_new_phone2', '实验室({{labCode}})重新初始化', '您的实验室“{{name}}”已重新初始化,实验室编号:{{labCode}},访问地址{{url}},密码:{{password}},如有疑问请拨打联系电话:(021-60825678)。', '6', '1', 'phone', '00', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); + + + +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (151, 'qOODy/Ov5qmQEq5PBdI4hg==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:11:42', '1', '管理员', '2023-12-04 15:11:42'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (150, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:11:39', '1', '管理员', '2023-12-04 15:11:39'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (149, 'qOODy/Ov5qmQEq5PBdI4hg==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:09:43', '1', '管理员', '2023-12-04 15:09:43'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (148, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:08:59', '1', '管理员', '2023-12-04 15:08:59'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (147, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIRszlQBp2eG2FKGjj/a7P89U7uIKsdzfO1KRGSpvhtHPp8KWMQA3cqOLVBb0ZeNXWG6UzE0ZGgvetUp2bz1ZzftMIOwdQhKT5YHRYxRuCdPYmlu114tQ7v1nwgRjckkB', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:08:30', '1', '管理员', '2023-12-04 15:08:30'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (146, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIRszlQBp2eG2FKGjj/a7P89U7uIKsdzfO1KRGSpvhtHPp8KWMQA3cqOLVBb0ZeNXWG6UzE0ZGgvetUp2bz1ZzftMIOwdQhKT5YHRYxRuCdPYmlu114tQ7v1nwgRjckkB', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 14:07:43', '1', '管理员', '2023-12-04 14:07:43'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (145, '5Agvo9GO0V4fkBmZN0bikw==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXXVjzoGqpUluENbIp6b9SdEreiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100025', 'test88', '', 'console', '00', 'system', '系统自动', '2023-12-01 09:10:38', 'system', '系统自动', '2023-12-01 09:10:38'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (144, '5Agvo9GO0V4fkBmZN0bikw==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXXN9EP5WJbQJTVVfJg8zw0WreiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100025', 'test88', '', 'console', '00', 'system', '系统自动', '2023-12-01 09:08:19', 'system', '系统自动', '2023-12-01 09:08:19'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (143, 'cYh/BaXTHMkXNJcb+vw/IA==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXWXx7q31Sla0zMPuUprLinMreiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100018', 'yts', '', 'console', '00', 'system', '系统自动', '2023-12-01 02:14:57', 'system', '系统自动', '2023-12-01 02:14:57'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (142, 'cYh/BaXTHMkXNJcb+vw/IA==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXXaGEaEuvgdsHJgFo6YpK1breiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100018', 'yts', '', 'console', '00', 'system', '系统自动', '2023-11-30 08:22:32', 'system', '系统自动', '2023-11-30 08:22:32'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (141, 'rEQBNNzhQM++IErAo94EIA==', '实验室下载申请', 'DAD/lS346vpJhMuhf39fO/cojSTbEcwwEevHsoPFkUmkNnG68yv6vjAk0dNf/CgsQDmsFHtCZYufm3Tbkd15Hm4TsZZpTNnj4uPOUrzg4OQARLAA3mciqScilZ86v6kCWRGlsSERac2fmmXuFHW4qRzch9UFCYnxa3VCssE12kE=', '7', '0', '1', '门户管理员', '', 'portal', '00', 'system', '系统自动', '2023-11-29 05:50:55', 'system', '系统自动', '2023-11-29 05:50:55'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (140, 'rEQBNNzhQM++IErAo94EIA==', '实验室下载申请', 'DAD/lS346vpJhMuhf39fO/cojSTbEcwwEevHsoPFkUmkNnG68yv6vjAk0dNf/CgsQDmsFHtCZYufm3Tbkd15HhV0vv/JAiJILOEmHOReQEIARLAA3mciqScilZ86v6kCWRGlsSERac2fmmXuFHW4qRzch9UFCYnxa3VCssE12kE=', '7', '0', '1', '门户管理员', '', 'portal', '00', 'system', '系统自动', '2023-11-29 05:49:30', 'system', '系统自动', '2023-11-29 05:49:30'); + + +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (27, '0-2', 1118783, '2023-05-15', '2023-11-07 20:48:13.926173'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (28, '10-12', 4090, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (29, '12-18', 12375, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (30, '18-24', 6544, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (31, '2-4', 1863575, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (32, '24-30', 2335, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (33, '30-36', 199, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (34, '36-42', 502, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (35, '4-6', 137042, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (36, '42-48', 433, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (37, '6-8', 9505, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (38, '8-10', 5154, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (39, '>48', 2759, '2023-05-15', '2023-11-07 20:48:13.92937'); + + +INSERT INTO tbl_qa_pos_match_rate (id, tran_num, match_num, match_rate, txn_date, create_time) VALUES (3, 1448235, 1394078, '0.9626048258742538', '2023-05-15', '2023-11-07 20:48:13.872702'); + + +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (11, '巴士一公司', 94, '2023-05-15', '00-01', '2023-11-07 20:48:13.87403'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (12, '巴士三公司', 104, '2023-05-15', '00-04', '2023-11-07 20:48:13.875728'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (13, '巴士四公司', 81, '2023-05-15', '00-06', '2023-11-07 20:48:13.875728'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (14, '巴士五公司', 139, '2023-05-15', '00-10', '2023-11-07 20:48:13.875728'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (15, '巴士二公司', 102, '2023-05-15', '00-12', '2023-11-07 20:48:13.875728'); + +INSERT INTO tbl_qa_route_miss (id, miss_rate, txn_date, route_count, bus_stop_count, create_time) VALUES (3, '0.008200504646439781', '2023-05-15', 64996, 64463, '2023-11-07 20:48:07.496644'); + +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4843, '000100', '01', '78.15281690140844', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.708146'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4844, '000100', '01', '89.43666666666667', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4845, '000100', '01', '89.02365591397849', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4846, '000400', '04', '48.159114583333334', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4847, '000400', '04', '13.991666666666667', '平峰', '区间', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4848, '000400', '04', '57.29047619047619', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4849, '000400', '04', '20.173333333333336', '早高峰', '区间', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4850, '000400', '04', '56.24722222222223', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4851, '000400', '04', '18.087037037037035', '晚高峰', '区间', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4852, '010000', '100', '41.53394308943089', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4853, '010000', '100', '47.89121212121212', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4854, '010000', '100', '46.65106382978724', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4855, '101400', '1014', '20.574166666666667', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4856, '101400', '1014', '29.976388888888888', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4857, '101400', '1014', '24.87222222222222', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4858, '010200', '102', '11.975', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4859, '010200', '102', '14.034722222222223', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); + + +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195293, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 05:50:00', '2023-05-15 06:48:38', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.355301', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195294, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 08:31:00', '2023-05-15 09:57:46', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195295, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 12:05:00', '2023-05-15 13:15:50', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195296, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 07:05:00', '2023-05-15 08:22:04', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195297, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 10:10:00', '2023-05-15 11:29:57', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195298, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 13:30:00', '2023-05-15 15:03:42', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195299, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 15:35:00', '2023-05-15 16:52:58', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195300, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 19:30:00', '2023-05-15 20:37:33', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195301, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 22:30:00', '2023-05-15 23:28:33', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195302, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 17:06:00', '2023-05-15 18:33:44', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195303, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 21:00:00', '2023-05-15 22:15:16', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195304, '000100', '01', '沪A-03041D', '03-06561', '2023-05-15 07:00:00', '2023-05-15 08:47:40', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); + + +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (6, '00-01', '巴士一公司', 1420, '2023-05-15', '2023-11-07 20:48:06.009578'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (7, '00-04', '巴士三公司', 1495, '2023-05-15', '2023-11-07 20:48:06.011452'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (8, '00-06', '巴士四公司', 1210, '2023-05-15', '2023-11-07 20:48:06.011452'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (9, '00-10', '巴士五公司', 1602, '2023-05-15', '2023-11-07 20:48:06.011452'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (10, '00-12', '巴士二公司', 1341, '2023-05-15', '2023-11-07 20:48:06.011452'); + + + +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (18, 0, '1', 'test', '12345678', NULL, NULL, '02', '/sftpdata/test', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 13:57:06.91938', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (19, 0, '1', 'hello', '12345678', NULL, NULL, '01', '/sftpdata/hello', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 14:45:01.742521', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (20, 0, '1', 'read', '12345678', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:03:50.274712', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (22, 0, '1', 'bb', '12345678', NULL, NULL, '775', '/data/sftp/bb', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:27:29.371303', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (21, 0, '1', 'read', '12345678', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:22:26.26842', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (24, 0, '1', 'write', '12345678', NULL, NULL, '777', '/data/sftp/write', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 17:56:52.374945', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (23, 0, '1', 'read', '12345678', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:56:12.959005', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (25, 0, '1', 'read', '123', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:43:50.353176', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (26, 0, '1', 'read', '123', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 18:56:44.417817', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (28, 0, '1', 'jiuyv', '12345678', NULL, NULL, '775', '/data/sftp/jiuyv', NULL, NULL, '99', 'yts', 'yts', '2023-07-18 11:03:40.55482', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (27, 0, '1', 'hello', '123', NULL, NULL, '775', '/data/sftp/hello', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 19:32:02.004178', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (29, 0, '1', 'sftp', '123rrr', NULL, NULL, '775', '/data/sftp/sftp', NULL, NULL, '00', 'admin1', 'admin1', '2023-11-02 17:28:03.582541', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (30, 0, '1', 'test', '123456', NULL, NULL, '755', '/data/sftp/test', NULL, NULL, '00', 'admin', 'admin', '2023-11-21 19:24:08.877314', NULL, NULL, '2023-11-21 19:24:08.877314', NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (31, 0, '1', 'test66', '123456', NULL, NULL, '755', '/data/sftp/test66', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:09:25.692241', NULL, NULL, '2023-12-05 16:09:25.692241', NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (32, 0, '1', 'test88', '123456', NULL, NULL, '757', '/data/sftp/test88', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 18:15:25.430912', NULL, NULL, '2023-12-05 18:15:25.430912', NULL, NULL, NULL); + + +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (14, 0, '1', 19, 'cc.png', '/sftpdata/hello/hh/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 14:45:19.866959', NULL, NULL, NULL, 'hello'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (16, 0, '1', 23, 'cc.png', '/data/sftp/read/home/dd/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:09:23.214017', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (15, 0, '1', 23, 'cc.png', '/data/sftp/read/home/null/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:07:41.523635', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (17, 0, '1', 25, 'cc.png', '/data/sftp/read/home/dd/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:55:50.26498', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (18, 0, '1', 26, 'cc.png', '/data/sftp/read/home/dd/cc.png', '102272', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 18:57:59.497132', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (19, 0, '1', 26, 'cc.png', '/data/sftp/read/home/rr/cc.png', '102272', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 18:58:59.207031', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (27, 0, '1', 27, '微信图片_20230625154831.jpg', '/data/sftp/hello/home/xx/微信图片_20230625154831.jpg', '3547204', NULL, NULL, '99', 'yts', 'yts', '2023-07-18 11:07:01.308433', NULL, NULL, NULL, 'hello'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (22, 0, '1', 26, 'cc.png', '/data/sftp/read/home/null/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 19:03:14.428', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (28, 0, '1', 29, 'user_1698912763162.xlsx', '/data/sftp/sftp/home//ss/user_1698912763162.xlsx', '4343', NULL, NULL, '00', 'admin1', 'admin1', '2023-11-02 17:28:19.715902', NULL, NULL, NULL, 'sftp'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (29, 0, '1', 31, 'wallhaven-3z98pd.jpg', '/data/sftp/test66/home\test\wallhaven-3z98pd.jpg', '3599349', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:10:53.784304', NULL, NULL, '2023-12-05 16:10:53.784304', 'test66'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (30, 0, '1', 31, 'wallhaven-9d89zw.jpg', '/data/sftp/test66/home\null\wallhaven-9d89zw.jpg', '983802', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:18:31.126612', NULL, NULL, '2023-12-05 16:18:31.126612', 'test66'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (31, 0, '1', 31, 'wallhaven-gp7ee3.jpg', '/data/sftp/test66/home/null/wallhaven-gp7ee3.jpg', '4475534', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:26:27.648833', NULL, NULL, '2023-12-05 16:26:27.648833', 'test66'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (32, 0, '1', 31, 'wallhaven-qz3wel.png', '/data/sftp/test66/home/null/wallhaven-qz3wel.png', '16215458', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:30:31.37368', NULL, NULL, '2023-12-05 16:30:31.37368', 'test66'); + + + +INSERT INTO tbl_sys_config (config_id, version_num, rec_token, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) VALUES (1, 2, '82ebfa177a', '主框架页-默认皮肤样式名称', 'sys.index.skinName', 'skin-green', 'Y', 'admin', '2023-04-04 13:29:12', '1', '2023-07-03 13:22:00', '蓝色 skin-blue、绿色 skin-green、紫色 skin-purple、红色 skin-red、黄色 skin-yellow'); +INSERT INTO tbl_sys_config (config_id, version_num, rec_token, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) VALUES (3, 2, 'f22e8adc54', '主框架页-侧边栏主题', 'sys.index.sideTheme', 'theme-dark', 'Y', 'admin', '2023-04-04 13:29:12', '1', '2023-07-03 13:22:37', '深色主题theme-dark,浅色主题theme-light'); +INSERT INTO tbl_sys_config (config_id, version_num, rec_token, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) VALUES (2, 2, '9b3a4eef03', '用户管理-账号初始密码', 'sys.user.initPassword', '123456', 'Y', 'admin', '2023-04-04 13:29:12', '1', '2023-11-17 11:21:10', ''); + + +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (3, 0, '1', 1, '0,1', '交通卡运营部', 3, NULL, NULL, NULL, '0', '0', '1', '2023-06-27 09:43:10', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (5, 0, '1', 1, '0,1', 'dss ', 2, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 11:22:06', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (4, 1, '80ce31198f', 1, '0,1', '测试部门', 2, NULL, NULL, NULL, '0', '0', '1', '2023-06-27 09:43:48', '1', '2023-06-27 19:01:03'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (6, 0, '1', 1, '0,1', 'ceshi', 4, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 19:04:17', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (7, 0, '1', 1, '0,1', 'ddd', 1, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 19:32:27', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (9, 0, '1', 1, '0,1', 'dsds', 4, NULL, NULL, NULL, '0', '2', '1', '2023-06-28 17:06:58', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (10, 0, '1', 8, '0,1,8', '山东分公司', 1, NULL, NULL, NULL, '0', '2', '1', '2023-07-03 11:21:38', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (8, 1, 'f70e642a0a', 1, '0,1', '测试发发发', 4, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 19:43:24', '1', '2023-07-03 11:21:29'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (12, 0, '1', 11, '0,1,11', 'tetstsss', 1, NULL, NULL, NULL, '0', '2', '1', '2023-07-06 20:14:51', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (11, 1, '964eafd0b6', 1, '0,1', 'testbumen', 1, NULL, NULL, NULL, '0', '2', '1', '2023-07-06 20:14:31', '1', '2023-07-06 20:14:41'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (2, 0, '1', 1, '0,1', '上海总公司', 1, '', '', '', '0', '0', '1', '2023-04-04 13:29:06', '1', '2023-04-04 09:56:56'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (1, 3, '1', 0, '0', '数据中心', 0, '', '', '', '0', '0', '1', '2023-04-04 13:29:06', '1', NULL); + + + + +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (1, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有4次登录机会', '2023-04-28 11:05:13'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (2, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有3次登录机会', '2023-04-28 11:05:14'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (3, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '验证码错误', '2023-04-28 11:05:16'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (4, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有2次登录机会', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (5, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有1次登录机会', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (6, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '0', '登录成功', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (7, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '0', '登录成功', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (8, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '0', '登录成功', '2023-04-28 11:07:11'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (9, 'afmin', '127.0.0.1', '内网IP', 'Chrome 10', 'Windows 10', '1', '账户或密码错误', '2023-04-28 13:08:45'); + + +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3272, 0, '1', '用户实验室-数据注入', 3133, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:addlib', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3280, 0, '1', '导出', 3252, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:centimeDelay:export', NULL, '1', '2023-11-17 10:35:46', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3281, 0, '1', '导出', 3253, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:posMatchRate:export', NULL, '1', '2023-11-17 10:36:27', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3282, 0, '1', '导出', 3254, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:routeDailyCount:export', NULL, '1', '2023-11-17 10:37:00', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3283, 0, '1', '导出', 3259, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:vehicleDaily:export', NULL, '1', '2023-11-17 10:37:30', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3284, 0, '1', '导出', 3255, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:routeMiss:export', NULL, '1', '2023-11-17 10:38:06', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3285, 0, '1', '导出', 3256, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:routeTurnover:export', NULL, '1', '2023-11-17 10:38:46', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3286, 0, '1', '导出', 3257, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:stationMiss:export', NULL, '1', '2023-11-17 10:39:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3287, 0, '1', '同步-单表', 3003, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:syncTable', NULL, '1', '2023-11-17 10:50:29', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3273, 2, 'b47789fd2e', '数据产品', 0, 2, 'product', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'build', '100014', '2023-10-31 10:13:23', '1', '2023-11-17 15:30:47', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3006, 6, 'f40f5864c9', 'SQL工作台', 3004, 1, 'sqlconsole', 'dataconsole/sqlconsole/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:sqlconsole:index', 'server', '1', '2023-05-18 14:38:04', '1', '2023-11-21 10:29:00', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3291, 0, '1', '详情', 3276, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:export:detail', NULL, '1', '2023-12-04 15:25:00', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1001, 0, '1', '用户查询', 100, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3038, 10, '2f36953b4e', '我的数据申请', 3004, 2, 'sqlmyapply', 'dataconsole/myapply/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:apply:my:list', 'logininfor', '1', '2023-06-02 17:09:56', '100019', '2023-11-16 17:58:58', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3288, 0, '1', '格式化SQL', 3006, 12, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:format', NULL, '100019', '2023-11-17 13:45:25', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3289, 0, '1', '图形分析', 3006, 13, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:chart', NULL, '1', '2023-11-17 13:50:02', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3292, 0, '1', '获取所有表', 3006, 16, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datatable:allList', NULL, '100025', '2023-12-04 17:20:31', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3274, 0, '1', '客流量指标', 3251, 1, 'metric', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', NULL, 'dashboard', '1', '2023-10-31 10:17:44', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3000, 2, 'b4b1c98ad0', '数据治理', 0, 3, 'datagovern', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'excel', '1', '2023-05-18 13:48:22', '1', '2023-11-17 15:30:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3130, 2, '3df7f54938', '文件管理', 0, 9, 'sftp', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'clipboard', '1', '2023-06-29 19:40:38', '1', '2023-11-17 15:31:38', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3144, 0, '1', '告警对象编辑', 3123, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:edit', NULL, '1', '2023-06-30 13:23:01', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3149, 1, 'dd02dac5c6', '我的数据申请详情', 3038, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:my:detail', NULL, '1', '2023-06-30 13:32:38', '1', '2023-07-07 13:17:33', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3145, 0, '1', '告警对象删除', 3123, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:remove', NULL, '1', '2023-06-30 13:23:23', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3131, 0, '1', 'SFTP用户管理', 3130, 1, 'user', 'sftp/user/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'sftp:user:list', NULL, '1', '2023-06-29 19:41:42', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3176, 1, 'b73896b0f9', 'SFTP用户新增', 3131, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:user:add', NULL, '1', '2023-06-30 13:50:03', '1', '2023-11-17 15:01:59', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3125, 1, '710b163d83', '内容管理', 121, 1, 'content', 'portal/content/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:content:list', 'documentation', '1', '2023-06-25 10:04:28', '100004', '2023-07-17 16:11:57', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3178, 1, '3ecb2da9f4', 'SFTP用户删除', 3131, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:user:remove', NULL, '1', '2023-06-30 13:50:54', '1', '2023-11-17 15:02:07', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3146, 0, '1', 'SQL数据审批详情', 3036, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:detail', NULL, '1', '2023-06-30 13:30:30', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3112, 6, 'b95ffcb6f3', 'sftp文件列表', 121, 3, 'publicFiles', 'publicx/publicFiles/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'publicx:publicFiles:page', 'zip', '1', '2023-06-16 17:55:21', '1', '2023-11-17 15:38:59', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3142, 0, '1', '告警对象详情', 3123, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:query', NULL, '1', '2023-06-30 13:21:57', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3143, 0, '1', '告警对象新增', 3123, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:add', NULL, '1', '2023-06-30 13:22:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3150, 0, '1', 'SQL元数据申请', 3006, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:add', NULL, '1', '2023-06-30 13:33:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3151, 0, '1', '运行SQL', 3006, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:run', NULL, '1', '2023-06-30 13:33:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3152, 0, '1', '停止SQL', 3006, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:stop', NULL, '1', '2023-06-30 13:34:21', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3153, 0, '1', '导出查询结果', 3006, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:export', NULL, '1', '2023-06-30 13:34:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3154, 1, '46cdda1444', '文件列表', 3006, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:list', NULL, '1', '2023-06-30 13:35:40', '1', '2023-06-30 13:35:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3155, 0, '1', '文件详情', 3006, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:detail', NULL, '1', '2023-06-30 13:36:15', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3156, 0, '1', '文件新增', 3006, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:add', NULL, '1', '2023-06-30 13:36:44', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3157, 0, '1', '文件编辑', 3006, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:edit', NULL, '1', '2023-06-30 13:37:15', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3158, 0, '1', '文件删除', 3006, 9, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:remove', NULL, '1', '2023-06-30 13:37:38', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3159, 0, '1', 'SQL解析', 3009, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:parse', NULL, '1', '2023-06-30 13:40:24', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3160, 1, '0cc98d3989', '服务注册', 3009, 9, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:register', NULL, '1', '2023-06-30 13:41:04', '1', '2023-06-30 13:41:19', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3161, 0, '1', '服务测试', 3009, 10, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:check', NULL, '1', '2023-06-30 13:41:42', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3162, 0, '1', '服务下架', 3009, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:down', NULL, '1', '2023-06-30 13:42:12', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3163, 0, '1', '机构详情', 3109, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:detail', NULL, '1', '2023-06-30 13:43:50', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3164, 0, '1', '机构新增', 3109, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:add', NULL, '1', '2023-06-30 13:44:16', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3165, 0, '1', '机构编辑', 3109, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:edit', NULL, '1', '2023-06-30 13:44:39', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3123, 3, '12650dbed9', '告警对象', 121, 7, 'contact', 'system/warning/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:warning:list', 'form', '1', '2023-06-20 16:47:08', '1', '2023-10-31 16:26:28', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3166, 0, '1', '机构删除', 3109, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:remove', NULL, '1', '2023-06-30 13:45:03', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3167, 0, '1', '加盐/加密秘钥', 3109, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:key', NULL, '1', '2023-06-30 13:45:34', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3216, 2, '3c44a6f0bb', '申请管理', 120, 4, 'apply', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'dict', '100006', '2023-07-11 13:31:57', '100013', '2023-10-12 15:07:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3169, 0, '1', '内容详情', 3125, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:query', NULL, '1', '2023-06-30 13:47:05', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3170, 0, '1', '内容新增', 3125, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:add', NULL, '1', '2023-06-30 13:47:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3171, 0, '1', '内容编辑', 3125, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:edit', NULL, '1', '2023-06-30 13:47:47', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3172, 0, '1', '内容删除', 3125, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:remove', NULL, '1', '2023-06-30 13:48:08', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3173, 0, '1', '内容发布', 3125, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:release', NULL, '1', '2023-06-30 13:48:27', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3174, 0, '1', '内容下架', 3125, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:down', NULL, '1', '2023-06-30 13:48:48', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3180, 0, '1', 'SFTP文件新增', 3132, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:file:add', NULL, '1', '2023-06-30 13:51:43', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3181, 0, '1', 'SFTP文件编辑', 3132, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:file:remove', NULL, '1', '2023-06-30 13:52:05', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3182, 0, '1', '元数据层级树', 3020, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:tree', NULL, '1', '2023-06-30 13:58:29', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3183, 0, '1', 'SQL数据审批', 3036, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:apply', NULL, '1', '2023-06-30 14:12:58', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3132, 1, 'cab057f202', 'SFTP文件管理', 3130, 2, 'userFile', 'sftp/userFile/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'sftp:file:list', NULL, '1', '2023-06-29 19:42:32', '1', '2023-06-30 14:21:29', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3185, 1, '24307e7f7a', '元数据-表-下拉框', 3009, 12, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datatable:list', NULL, '1', '2023-07-03 16:58:05', '1', '2023-07-03 17:03:57', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3186, 0, '1', '元数据-字段-下拉框', 3009, 13, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:list', NULL, '1', '2023-07-03 17:04:36', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3276, 3, '58a81c6f6d', '我的导出记录', 3004, 4, 'export', 'dataconsole/export/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:export:page', 'download', '1', '2023-10-31 18:05:45', '100019', '2023-11-16 17:59:36', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3224, 1, '410cf710c7', '数据源下拉框', 3212, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:list', NULL, '1', '2023-07-13 16:39:17', '1', '2023-11-17 11:17:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3236, 1, '8a7f3948f3', '门户用户下拉框', 3109, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:list', NULL, '1', '2023-07-18 10:53:53', '1', '2023-11-17 14:38:51', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3192, 0, '1', '机构启用', 3109, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:run', NULL, '1', '2023-07-03 17:42:02', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3193, 0, '1', '机构停用', 3109, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:stop', NULL, '1', '2023-07-03 17:42:32', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3226, 1, '4514c539ad', '机构授权详情', 3109, 10, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:auth:info', NULL, '1', '2023-07-17 11:05:07', '1', '2023-11-17 14:40:01', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3198, 4, '77bdf04fc8', '资讯管理', 121, 2, 'information', 'portal/content/information', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:content:info:list', 'form', '100004', '2023-07-04 19:55:46', '1', '2023-07-07 13:17:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3199, 0, '1', '资讯详情', 3198, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:query', NULL, '1', '2023-07-07 13:19:26', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3200, 0, '1', '资讯新增', 3198, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:add', NULL, '1', '2023-07-07 13:19:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3201, 0, '1', '资讯编辑', 3198, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:edit', NULL, '1', '2023-07-07 13:20:29', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3202, 0, '1', '资讯删除', 3198, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:remove', NULL, '1', '2023-07-07 13:20:56', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3203, 0, '1', '资讯发布', 3198, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:release', NULL, '1', '2023-07-07 13:21:23', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3204, 0, '1', '资讯下架', 3198, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:down', NULL, '1', '2023-07-07 13:21:45', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3209, 0, '1', '数据源下拉框', 3006, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:list', NULL, '1', '2023-07-07 13:54:56', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3210, 0, '1', '数据源下拉框', 3009, 14, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:list', NULL, '1', '2023-07-07 13:56:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3211, 0, '1', 'API接口列表', 3109, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:list', NULL, '1', '2023-07-07 13:59:08', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3213, 0, '1', '数据源关联表', 3212, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'asset:data:table', NULL, '1', '2023-07-10 16:23:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3214, 0, '1', '关联表详情', 3212, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'asset:data:detail', NULL, '1', '2023-07-10 16:23:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3232, 1, '1fdf2c4334', '机构信息下拉框', 3227, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:list', NULL, '1', '2023-07-17 17:43:23', '1', '2023-11-17 14:43:31', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3277, 0, '1', '下载', 3276, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:export:download', NULL, '1', '2023-10-31 18:08:18', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3215, 1, 'bf1e5dd794', '资源管理', 120, 5, 'resource', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'zip', '100006', '2023-07-11 13:31:33', '1', '2023-07-11 13:55:48', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3184, 0, '1', '实验室创建-发布', 3090, 6, '#', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:release', NULL, '1', '2023-06-30 15:08:59', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3278, 0, '1', '删除', 3276, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:export:delete', NULL, '1', '2023-10-31 18:08:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3220, 1, 'f3418b578c', '数据检索', 3001, 3, 'datasearch', 'metadata/datasearch/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'metadata:datasearch:list', NULL, '1', '2023-07-11 15:18:32', '1', '2023-07-11 15:18:48', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3212, 2, '4938ade025', '基础数据', 3002, 1, 'basedata', 'metadata/assetdata/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'asset:data:list', NULL, '1', '2023-07-07 15:42:18', '1', '2023-07-11 17:46:14', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3208, 1, '259ab10c05', 'SFTP用户下拉框', 3132, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:user:list', NULL, '1', '2023-07-07 13:50:40', '1', '2023-11-17 15:03:21', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3222, 0, '1', '用户实验室-收回', 3133, 10, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:withdraw', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3223, 0, '1', '导出', 3212, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'asset:data:export', NULL, '1', '2023-07-13 13:19:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3225, 0, '1', '机构授权', 3109, 9, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:auth', NULL, '1', '2023-07-17 11:04:41', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3227, 0, '1', '机构配置', 3015, 2, 'orgconfig', 'apimanage/orgconfig/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'org:config:list', NULL, '1', '2023-07-17 15:20:14', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3228, 0, '1', '配置详情', 3227, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org.config:query', NULL, '1', '2023-07-17 17:41:41', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3229, 0, '1', '配置新增', 3227, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org:config:add', NULL, '1', '2023-07-17 17:42:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3230, 0, '1', '配置编辑', 3227, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org:config:edit', NULL, '1', '2023-07-17 17:42:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3231, 0, '1', '配置删除', 3227, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org:config:del', NULL, '1', '2023-07-17 17:42:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3235, 0, '1', '数据源-元数据列表', 3220, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:page', NULL, '1', '2023-07-17 18:08:22', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3234, 1, '6f8e9d9225', '数据源-表列表', 3220, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datatable:page', NULL, '1', '2023-07-17 18:07:44', '1', '2023-07-17 18:08:31', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3238, 0, '1', '部门查询', 100, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:query', NULL, '1', '2023-08-15 15:37:33', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3239, 0, '1', '用户实验室-日志文件', 3133, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:getLogs', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3240, 0, '1', '用户实验室-日志下载', 3133, 12, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:downloadLog', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3242, 0, '1', '获取连接数', 3006, 15, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:connectNum', NULL, '1', '2023-09-13 15:10:26', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3233, 1, '0d08dbf77c', '数据源列表', 3220, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:page', NULL, '1', '2023-07-17 18:07:14', '1', '2023-11-21 09:55:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3290, 0, '1', '基础数据', 3006, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:tree', NULL, '1', '2023-11-21 10:28:22', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (106, 2, '58c05d6b35', '参数设置', 1, 7, 'config', 'system/config/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:config:list', 'edit', '1', '2023-04-04 09:54:39', '1', '2023-11-17 11:20:24', '参数设置菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3250, 4, 'a649716593', '数据质量', 3251, 4, 'dataquality', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'job', '1', '2023-09-26 18:37:46', '1', '2023-10-31 10:16:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3255, 2, '68a0cb0520', '日班次缺数量', 3250, 4, 'routeMiss', 'quality/routeMiss/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:routeMiss:page', NULL, '1', '2023-09-26 18:50:30', '1', '2023-10-31 11:29:06', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3256, 2, 'a4c8ed85d5', '日班次周转时间', 3250, 5, 'routeTurnover', 'quality/routeTurnoverTime/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:routeTurnover:page', NULL, '1', '2023-09-26 18:52:25', '1', '2023-10-31 11:29:14', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3258, 0, '1', '站点缺失率详情', 3257, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:stationMiss:detail', NULL, '1', '2023-09-26 18:54:19', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3269, 4, 'f7165276c0', '站点客流量', 3274, 2, 'stationMetric', 'product/stationMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationMetric:page', NULL, '1', '2023-09-26 19:17:15', '1', '2023-10-31 11:07:13', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3251, 3, 'f29dfe646d', '客流宝', 3273, 5, 'product', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'star', '1', '2023-09-26 18:44:19', '1', '2023-10-31 10:16:46', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3264, 3, '269c86886d', '线路客流量', 3274, 0, 'lineMetric', 'product/lineMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:lineMetric:page', NULL, '1', '2023-09-26 19:07:11', '1', '2023-10-31 11:03:58', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3252, 4, '933dcdaea1', '日结算时间统计', 3250, 1, 'centimeDelay', 'quality/centimeDelay/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:centimeDelay:page', NULL, '1', '2023-09-26 18:46:16', '1', '2023-10-31 11:28:31', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3254, 2, '31fe991e73', '日运营线路条数', 3250, 3, 'routeDailyCount', 'quality/routeDailyCount/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:routeDailyCount:page', NULL, '1', '2023-09-26 18:49:17', '1', '2023-09-26 19:46:33', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3257, 2, '228bf9e71d', '日线路站点数量', 3250, 6, 'stationMiss', 'quality/stationMiss/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:stationMiss:page', NULL, '1', '2023-09-26 18:53:36', '1', '2023-10-31 11:29:28', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3279, 0, '1', '接口文档', 3009, 16, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:word', NULL, '1', '2023-11-03 15:51:37', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3265, 4, '0f9f3d1e33', '班次客流量', 3274, 1, 'routeMetric', 'product/routeMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:routeMetric:page', NULL, '1', '2023-09-26 19:08:50', '1', '2023-11-03 19:53:43', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3253, 2, '0f7b813fec', '日pos匹配数量', 3250, 2, 'posMatchRate', 'quality/posMatchRate/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:posMatchRate:page', NULL, '1', '2023-09-26 18:48:05', '1', '2023-10-31 11:28:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3266, 1, '59adae7cb2', '班次日客流量统计详情', 3265, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'product:routeMetric:detail', NULL, '1', '2023-09-26 19:09:20', '1', '2023-09-27 11:35:46', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3267, 6, 'f4f30d79d0', '站点常客客流量', 3274, 6, 'stationFreqMetric', 'product/stationFreqMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationFreqMetric:page', NULL, '1', '2023-09-26 19:11:28', '1', '2023-11-03 19:54:20', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3268, 8, 'c7380adda3', '站点常乘客换乘客流量', 3274, 7, 'stationFreqTrans', 'product/stationFreqTrans/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationFreqTrans:page', NULL, '1', '2023-09-26 19:14:26', '1', '2023-11-03 19:14:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3259, 4, '10f208f7a9', '日运营车辆数', 3250, 4, 'vehicleDaily', 'quality/vehicleDailyCount/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:vehicleDaily:page', NULL, '1', '2023-09-26 18:55:36', '1', '2023-11-03 17:35:27', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3271, 0, '1', 'API前缀地址', 3009, 15, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:prefix', NULL, '1', '2023-10-10 18:41:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3270, 8, '5af494fc80', '站点换乘客流量', 3274, 5, 'stationTrans', 'product/stationTrans/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationTrans:page', NULL, '1', '2023-09-26 19:36:43', '1', '2023-10-31 11:16:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (100, 0, '1', '用户管理', 1, 1, 'user', 'system/user/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:user:list', 'user', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '用户管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (101, 0, '1', '角色管理', 1, 2, 'role', 'system/role/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:role:list', 'peoples', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '角色管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (102, 0, '1', '菜单管理', 1, 3, 'menu', 'system/menu/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:menu:list', 'tree-table', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '菜单管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (103, 0, '1', '部门管理', 1, 4, 'dept', 'system/dept/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:dept:list', 'tree', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '部门管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (105, 0, '1', '字典管理', 1, 6, 'dict', 'system/dict/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:dict:list', 'dict', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '字典管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (107, 0, '1', '通知公告', 1, 8, 'notice', 'system/notice/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:notice:list', 'message', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '通知公告菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (108, 0, '1', '日志管理', 1, 9, 'log', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'log', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '日志管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (500, 0, '1', '操作日志', 108, 1, 'operlog', 'monitor/operlog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'monitor:operlog:list', 'form', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '操作日志菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (501, 0, '1', '登录日志', 108, 2, 'logininfor', 'monitor/logininfor/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'monitor:logininfor:list', 'logininfor', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '登录日志菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1002, 0, '1', '用户新增', 100, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1003, 0, '1', '用户修改', 100, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1004, 0, '1', '用户删除', 100, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1005, 0, '1', '用户导出', 100, 5, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1006, 0, '1', '用户导入', 100, 6, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:import', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1007, 0, '1', '重置密码', 100, 7, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:resetPwd', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1008, 0, '1', '角色查询', 101, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1009, 0, '1', '角色新增', 101, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1010, 0, '1', '角色修改', 101, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1011, 0, '1', '角色删除', 101, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1012, 0, '1', '角色导出', 101, 5, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1013, 0, '1', '菜单查询', 102, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1014, 0, '1', '菜单新增', 102, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1015, 0, '1', '菜单修改', 102, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1016, 0, '1', '菜单删除', 102, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1017, 0, '1', '部门查询', 103, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1018, 0, '1', '部门新增', 103, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1019, 0, '1', '部门修改', 103, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1020, 0, '1', '部门删除', 103, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1, 1, 'ea73707ed6', '系统管理', 0, 1, 'system', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'system', '1', '2023-04-04 09:54:39', '1', '2023-09-27 13:18:39', '系统管理目录'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1026, 0, '1', '字典查询', 105, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1027, 0, '1', '字典新增', 105, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1028, 0, '1', '字典修改', 105, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1029, 0, '1', '字典删除', 105, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1030, 0, '1', '字典导出', 105, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1031, 0, '1', '参数查询', 106, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1032, 0, '1', '参数新增', 106, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1033, 0, '1', '参数修改', 106, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1034, 0, '1', '参数删除', 106, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1035, 0, '1', '参数导出', 106, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1036, 0, '1', '公告查询', 107, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1037, 0, '1', '公告新增', 107, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1038, 0, '1', '公告修改', 107, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1039, 0, '1', '公告删除', 107, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1040, 0, '1', '操作查询', 500, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:operlog:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1041, 0, '1', '操作删除', 500, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:operlog:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1042, 0, '1', '日志导出', 500, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:operlog:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1043, 0, '1', '登录查询', 501, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:logininfor:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1044, 0, '1', '登录删除', 501, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:logininfor:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1045, 0, '1', '日志导出', 501, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:logininfor:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3008, 1, '427fbc37d7', '敏捷开发', 3007, 1, 'agiledev', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'online', '1', '2023-05-18 14:47:06', '1', '2023-10-12 15:01:30', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3001, 1, 'b9d6ad6aa2', '数据源治理', 3000, 1, 'metadata', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'form', '1', '2023-05-18 13:54:59', '1', '2023-10-12 15:09:02', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3002, 5, '9eaaa573d2', '数据资产', 3000, 2, 'org', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'guide', '1', '2023-05-18 14:04:09', '1', '2023-10-12 15:09:34', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3015, 2, '3e582eb888', '机构网关', 3007, 2, 'instit', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'international', '1', '2023-05-18 17:31:15', '1', '2023-10-31 14:15:35', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3003, 6, '5182f77bf8', '数据源', 3001, 1, 'datasource', 'metadata/datasource/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'metadata:source:conn:page', NULL, '1', '2023-05-18 14:07:12', '1', '2023-09-21 18:01:43', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3021, 0, '1', '元数据详情', 3020, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:detail', NULL, '1', '2023-05-18 17:39:12', '1', NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3017, 4, '1fa486e504', '连接信息详情', 3003, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:detail', NULL, '1', '2023-05-18 17:34:34', '1', '2023-09-21 18:02:08', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3012, 0, '1', '连通性测试', 3003, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:connect', NULL, '1', '2023-05-18 15:01:59', '1', NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3027, 1, '1db7220c82', '服务删除', 3009, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:remove', NULL, '1', '2023-05-18 17:48:03', '1', '2023-06-14 16:36:50', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3020, 1, 'f27585dd18', '元数据', 3001, 2, 'datacolumn', 'metadata/datacolumn/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'metadata:datacolumn:page', NULL, '1', '2023-05-18 17:38:02', '1', '2023-06-30 13:57:24', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3059, 0, '1', '操作日志', 3057, 2, 'portaloperlog', 'portal/operlog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:operlog:list', 'form', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3060, 0, '1', '登录日志', 3057, 3, 'portallogininfor', 'portal/logininfor/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:logininfor:list', 'logininfor', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3061, 0, '1', '用户查询', 3058, 1, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3062, 0, '1', '用户新增', 3058, 2, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3036, 7, 'e9d792f5ca', 'SQL数据审批', 3004, 3, 'sqlapply', 'dataconsole/sqlapply/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:apply:list', 'validCode', '1', '2023-06-02 17:04:10', '100019', '2023-11-16 17:59:22', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3019, 1, '04c4d90cc6', '同步-全表', 3003, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:sync', NULL, '1', '2023-05-18 17:35:37', '1', '2023-11-17 10:50:41', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3007, 3, 'b01ccfdce1', 'API管理', 0, 5, 'apimanage', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'guide', '1', '2023-05-18 14:44:52', '1', '2023-11-17 15:31:09', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3057, 5, '828dec8aac', '门户管理', 0, 6, 'portal', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'international', '1', '2023-05-18 16:10:18', '1', '2023-11-17 15:31:16', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (120, 4, '50cd08bd08', '实验室管理', 0, 7, 'docker', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'tab', '1', '2023-05-18 16:10:18', '1', '2023-11-17 15:31:23', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3058, 1, '72b6fc2b70', '会员管理', 3057, 1, 'portaluser', 'portal/user/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:user:list', 'user', '1', '2023-04-04 09:54:39', '100025', '2023-12-08 11:24:58', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3063, 0, '1', '用户修改', 3058, 3, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3064, 0, '1', '用户删除', 3058, 4, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3065, 0, '1', '用户导出', 3058, 5, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3066, 0, '1', '用户导入', 3058, 6, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:import', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3067, 0, '1', '重置密码', 3058, 7, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:resetPwd', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3068, 0, '1', '操作查询', 3059, 1, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:operlog:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3069, 0, '1', '操作删除', 3059, 2, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:operlog:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3070, 0, '1', '日志导出', 3059, 4, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:operlog:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3071, 0, '1', '登录查询', 3060, 1, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:logininfor:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3035, 2, 'f8d5d09051', '日志详情', 3011, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:apilog:detail', NULL, '1', '2023-05-18 17:52:25', '1', '2023-06-30 13:43:11', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3024, 1, '9a8ffce2a1', '服务新增', 3009, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:add', NULL, '1', '2023-05-18 17:45:53', '1', '2023-06-14 16:36:32', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3025, 1, '977af73cbd', '服务修改', 3009, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:edit', NULL, '1', '2023-05-18 17:46:13', '1', '2023-06-14 16:36:37', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3026, 1, '35ac5a0971', '服务详情', 3009, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:detail', NULL, '1', '2023-05-18 17:46:50', '1', '2023-06-14 16:36:43', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3028, 1, 'bc20d577d1', '服务拷贝', 3009, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:copy', NULL, '1', '2023-05-18 17:48:32', '1', '2023-06-14 16:36:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3029, 1, '16ee108a0e', '服务发布', 3009, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:release', NULL, '1', '2023-05-18 17:48:57', '1', '2023-06-14 16:37:01', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3030, 1, '15a33939aa', '服务注销', 3009, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:cancel', NULL, '1', '2023-05-18 17:49:23', '1', '2023-06-14 16:37:06', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3011, 2, '72495e9e14', '接口日志', 3008, 3, 'apilog', 'apimanage/apilog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:apilog:page', NULL, '1', '2023-05-18 14:52:13', '1', '2023-06-30 13:42:58', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3009, 3, '23b6c86f16', 'API敏捷开发', 3008, 1, 'dataapi', 'apimanage/dataapi/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:api:page', NULL, '1', '2023-05-18 14:48:52', '1', '2023-06-30 13:38:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3016, 3, 'ad0a4b14a6', '连接信息修改', 3003, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:edit', NULL, '1', '2023-05-18 17:33:41', '1', '2023-09-21 18:02:00', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3018, 3, '9cc71af86b', '连接信息删除', 3003, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:del', NULL, '1', '2023-05-18 17:35:08', '1', '2023-09-21 18:02:17', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3013, 3, '60f1f55bf1', '连接信息新增', 3003, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:add', NULL, '1', '2023-05-18 15:21:12', '1', '2023-09-21 18:01:51', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3072, 0, '1', '登录删除', 3060, 2, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:logininfor:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3073, 0, '1', '日志导出', 3060, 3, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:logininfor:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3079, 0, '1', '服务器管理-查询', 3078, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerClientInfo:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3083, 0, '1', '服务器端口-查询', 3082, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortList:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3084, 0, '1', '服务器端口-详情', 3082, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortList:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3085, 0, '1', '服务器端口-编辑', 3082, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortList:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3082, 0, '1', '端口清单(不要)', 120, 4, 'dockerPortList', 'docker/dockerPortList/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerPortList:index', '', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3080, 0, '1', '服务器管理-详情', 3078, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerClientInfo:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3107, 0, '1', 'vpn用户-停用', 3100, 7, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:disable', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3089, 0, '1', '镜像管理-编辑', 3086, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerImages:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3105, 0, '1', 'vpn用户-删除', 3100, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:del', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3081, 0, '1', '服务器管理-编辑', 3078, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerClientInfo:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3086, 1, '253d6ae7a1', '镜像管理', 3215, 6, 'dockerImages', 'docker/dockerImages/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerImages:index', '', '1', '2023-06-14 10:36:21', '1', '2023-07-11 13:50:36', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3078, 1, '7077cf6831', '服务器管理', 3215, 5, 'dockerClientInfo', 'docker/dockerClientInfo/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerClientInfo:index', '', '1', '2023-06-14 10:36:21', '1', '2023-07-11 13:50:48', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3088, 0, '1', '镜像管理-详情', 3086, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerImages:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3090, 5, 'd4f60a107f', '实验室创建', 120, 1, 'dockerApplyInfo', 'docker/dockerApplyInfo/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerApplyInfo:index', '', '1', '2023-06-14 10:42:58', '1', '2023-07-11 15:15:07', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3087, 0, '1', '镜像管理-查询', 3086, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerImages:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3095, 0, '1', '实验室创建-删除', 3090, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:del', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3275, 0, '1', '用户实验室-删除组件', 3133, 9, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:dellib', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3113, 0, '1', '系统文件表-查询', 3112, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicFiles:page', '', '1', '2023-06-16 17:55:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3114, 0, '1', '系统文件表-详情', 3112, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicFiles:detail', '', '1', '2023-06-16 17:55:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3106, 1, '13a5345977', 'vpn用户-发送账户', 3100, 6, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:send', '', '1', '2023-06-15 12:11:57', '1', '2023-07-12 16:11:56', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3109, 2, 'a15193ff45', '机构管理', 3015, 1, 'orginfo', 'apimanage/orginfo/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:orginfo:list', NULL, '1', '2023-06-15 14:00:06', '1', '2023-06-19 11:08:27', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3108, 0, '1', 'vpn用户-启用', 3100, 8, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:enable', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3103, 0, '1', 'vpn用户-新增', 3100, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:add', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3004, 3, 'adad7399a6', '数据分析工作台', 0, 4, 'dataconsole', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'chart', '1', '2023-05-18 14:33:34', '1', '2023-11-17 15:31:02', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3099, 1, 'a2e459579e', '数据注入申请-审核', 3096, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyReview:review', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:15:44', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3096, 3, '2fe01e1733', '文件注入申请', 3216, 2, 'dockerApplyReview', 'docker/dockerApplyReview/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerApplyReview:reviewPage', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:16:16', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3101, 0, '1', 'vpn用户-查询', 3100, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:page', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3104, 0, '1', 'vpn用户-编辑', 3100, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:edit', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3102, 0, '1', 'vpn用户-详情', 3100, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:detail', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3111, 3, 'a1b0129be6', '接口统计', 3015, 4, 'orgstatistics', 'apimanage/orgstatistics/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:statistics:list', NULL, '1', '2023-06-15 15:45:56', '1', '2023-07-17 15:20:29', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3100, 0, '1', 'Vpn账户管理', 120, 3, 'dockerVpn', 'docker/dockerVpn/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerVpn:index', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3076, 0, '1', 'Portainer账户-详情', 3074, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortainerUser:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3077, 0, '1', 'Portainer账户-编辑', 3074, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortainerUser:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3074, 0, '1', 'Portainer账户(不要)', 120, 20, 'dockerPortainerUser', 'docker/dockerPortainerUser/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerPortainerUser:index', '', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3119, 0, '1', '消息模板-查询', 3118, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicMsgTemplate:page', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3120, 0, '1', '消息模板-详情', 3118, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicMsgTemplate:detail', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3121, 0, '1', '消息模板-编辑', 3118, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicMsgTemplate:edit', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3093, 0, '1', '实验室创建-新增', 3090, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:add', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3092, 0, '1', '实验室创建-详情', 3090, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:detail', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3127, 0, '1', '实验室硬件选项-查询', 3126, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:page', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3128, 0, '1', '实验室硬件选项-详情', 3126, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:detail', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3075, 0, '1', 'Portainer账户-查询', 3074, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortainerUser:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3134, 0, '1', '用户实验室-查询', 3133, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:page', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3135, 0, '1', '用户实验室-详情', 3133, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:detail', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3136, 0, '1', '用户实验室-重启', 3133, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:restart', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3137, 0, '1', '用户实验室-禁用', 3133, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:disable', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3138, 0, '1', '用户实验室-启用', 3133, 6, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:enable', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3139, 0, '1', '用户实验室-销毁', 3133, 7, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:remove', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3140, 0, '1', '用户实验室-重置密码', 3133, 8, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:resetPwd', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3141, 0, '1', '用户实验室-重新初始化', 3133, 9, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:initialize', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3133, 1, '2da1f18d1d', '用户实验室', 120, 2, 'dockerWithUser', 'docker/dockerWithUser/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerWithUser:index', '', '1', '2023-06-29 19:47:21', '1', '2023-07-11 13:55:29', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3129, 0, '1', '实验室硬件选项-编辑', 3126, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:edit', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3094, 0, '1', '实验室创建-编辑', 3090, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:edit', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3091, 0, '1', '实验室创建-查询', 3090, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:page', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3188, 0, '1', '文件下载申请-查询', 3187, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:page', '', '1', '2023-07-03 17:14:07', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3189, 0, '1', '文件下载申请-详情', 3187, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:detail', '', '1', '2023-07-03 17:14:07', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3187, 2, '2b0c596f29', '文件下载申请', 3216, 3, 'dockerDownloadApply', 'docker/dockerDownloadApply/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerDownloadApply:index', '', '1', '2023-07-03 17:14:07', '1', '2023-10-11 16:32:21', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3197, 0, '1', '文件下载申请-审核', 3187, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:review', '', '1', '2023-07-03 18:01:55', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3126, 1, '633283cea6', '实验室硬件选项', 3215, 4, 'dockerConfigHardware', 'docker/dockerConfigHardware/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerConfigHardware:index', '', '1', '2023-06-29 19:33:50', '1', '2023-07-11 13:50:28', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3221, 0, '1', '实验室硬件选项-新增', 3126, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:add', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3244, 0, '1', '短信记录-查询', 3243, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicPhoneMsgLog:page', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3245, 0, '1', '短信记录-详情', 3243, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicPhoneMsgLog:detail', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3248, 0, '1', '门户消息-详情', 3246, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:portalUserMsg:detail', '', '1', '2023-09-21 17:35:06', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3241, 0, '1', '文件下载申请-下载', 3187, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:downloadFile', '', '1', '2023-07-03 18:01:55', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (121, 4, '3332cc8dc0', '内容管理', 0, 8, 'content', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'education', '1', '2023-05-18 16:10:18', '1', '2023-11-17 15:31:30', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3246, 2, 'cf8114926d', '门户消息', 3057, 4, 'portalUserMsg', 'portal/portalUserMsg/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:portalUserMsg:page', 'email', '1', '2023-09-21 17:35:06', '1', '2023-11-17 14:57:34', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3118, 4, 'f598ef44c4', '消息模板', 121, 4, 'publicMsgTemplate', 'publicx/publicMsgTemplate/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'publicx:publicMsgTemplate:page', 'list', '1', '2023-06-19 11:23:25', '1', '2023-11-17 15:41:10', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3243, 2, '52dd404400', '短信记录', 121, 5, 'publicPhoneMsgLog', 'publicx/publicPhoneMsgLog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'publicx:publicPhoneMsgLog:page', 'email', '1', '2023-06-19 11:23:25', '1', '2023-11-17 15:41:56', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3097, 1, '24ca2f0edc', '数据注入申请-查询', 3096, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyReview:reviewPage', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:13:58', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3098, 1, 'e5733686dd', '数据注入申请-详情', 3096, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyReview:detail', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:15:26', ''); + + +INSERT INTO tbl_sys_notice (notice_id, version_num, rec_token, notice_title, notice_type, notice_content, status, create_by, create_time, update_by, update_time, remark) VALUES (1, 6, '1566efff47', '测试通知', '1', '

1111111

', '0', '1', '2023-06-27 19:47:31', 'zhoul', '2023-10-27 13:11:37', NULL); +INSERT INTO tbl_sys_notice (notice_id, version_num, rec_token, notice_title, notice_type, notice_content, status, create_by, create_time, update_by, update_time, remark) VALUES (9, 3, '78f14c9761', '测试通知1', '2', '

22222

', '0', '1', '2023-07-06 20:15:39', 'zhoul', '2023-10-27 13:11:48', NULL); + + + +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3149, '实验室创建-新增', 1, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.addDockerApplyInfo()', 'POST', 1, 'admin55', NULL, '/docker/dockerApplyInfo/add', '172.16.12.254', '内网IP', '{dockerServerId:2,applyUserId:1,applyUserName:门户管理员(admin),applyDesc:aabbcc,dockerImageName:jupyterlab-py310:0.0.1,serviceType:jupyter,usageTime:6,configId:1,labTitle:测试03,dockerApplyLib:[{libType:data,libDesc:aa,fileId:272},{libType:data,libDesc:cc,fileId:273},{libType:data,libDesc:ddd,fileId:274}]}', NULL, 1, '实验室剩余资源不足,不允许当前操作', '2023-11-16 13:43:27'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3150, '用户实验室-收回', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.withdrawDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/withdraw', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:7,recToken:3ee65c7360}', '{code:success,msg:操作成功,data:{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:44:00}}', 0, NULL, '2023-11-16 13:44:10'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3151, '实验室创建-新增', 1, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.addDockerApplyInfo()', 'POST', 1, 'admin55', NULL, '/docker/dockerApplyInfo/add', '172.16.12.254', '内网IP', '{dockerServerId:2,applyUserId:1,applyUserName:门户管理员(admin),applyDesc:aabbcc,dockerImageName:jupyterlab-py310:0.0.1,serviceType:jupyter,usageTime:6,configId:1,labTitle:测试03,dockerApplyLib:[{libType:data,libDesc:aa,fileId:272},{libType:data,libDesc:cc,fileId:273},{libType:data,libDesc:ddd,fileId:274}]}', NULL, 1, '实验室剩余资源不足,不允许当前操作', '2023-11-16 13:44:21'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3153, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', NULL, 1, '不允许当前操作!实验室有未处理的注入申请', '2023-11-16 13:45:24'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3155, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', '{code:success,msg:操作成功,data:{applyId:2023110000000042,versionNum:9,recToken:64f0c43a91,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:47:29}}', 0, NULL, '2023-11-16 13:47:29'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3197, '用户实验室-收回', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.withdrawDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/withdraw', '172.16.12.254', '内网IP', '{applyId:2023110000000039,versionNum:15,recToken:b78c487519}', '{code:success,msg:操作成功,data:{applyId:2023110000000039,versionNum:16,recToken:9b04c092ef,updateBy:2,updateByName:管理员,updateTime:2023-11-16 20:55:21}}', 0, NULL, '2023-11-16 20:55:32'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3152, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', NULL, 1, '不允许当前操作!实验室有未处理的注入申请', '2023-11-16 13:45:16'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3154, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', NULL, 1, '不允许当前操作!实验室有未处理的下载申请', '2023-11-16 13:46:50'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3156, '实验室创建-新增', 1, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.addDockerApplyInfo()', 'POST', 1, 'admin55', NULL, '/docker/dockerApplyInfo/add', '172.16.12.254', '内网IP', '{dockerServerId:2,applyUserId:1,applyUserName:门户管理员(admin),applyDesc:aabbcc,dockerImageName:jupyterlab-py310:0.0.1,serviceType:jupyter,usageTime:6,configId:1,labTitle:测试03,dockerApplyLib:[{libType:data,libDesc:aa,fileId:272},{libType:data,libDesc:cc,fileId:273},{libType:data,libDesc:ddd,fileId:274}]}', '{code:success,msg:操作成功,data:{applyId:2023110000000043,versionNum:0,recToken:f85d7d82ea,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:47:37}}', 0, NULL, '2023-11-16 13:47:37'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3157, '实验室创建-发布', 13, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.releaseDockerApplyInfo()', 'PUT', 1, 'admin55', NULL, '/docker/dockerApplyInfo/release', '172.16.12.254', '内网IP', '{applyId:2023110000000043,versionNum:0,recToken:f85d7d82ea}', '{code:success,msg:操作成功,data:{applyId:2023110000000043,versionNum:1,recToken:188ded6c05,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:47:54}}', 0, NULL, '2023-11-16 13:47:54'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3198, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000039,versionNum:16,recToken:9b04c092ef}', '{code:success,msg:操作成功,data:{applyId:2023110000000039,versionNum:17,recToken:cd24ba08ca,updateBy:2,updateByName:管理员,updateTime:2023-11-16 20:55:46}}', 0, NULL, '2023-11-16 20:55:46'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3158, '用户实验室-重新初始化', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.initializeDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/initialize', '172.16.12.254', '内网IP', '{applyId:2023110000000041,versionNum:24,recToken:a7deb5dc44}', '{code:success,msg:操作成功,data:{applyId:2023110000000041,versionNum:25,recToken:319176c6aa,updateBy:2,updateByName:管理员,updateTime:2023-11-16 15:14:06}}', 0, NULL, '2023-11-16 15:14:06'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3159, '用户实验室-重新初始化', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.initializeDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/initialize', '172.16.12.254', '内网IP', '{applyId:2023110000000041,versionNum:26,recToken:53226a425a}', '{code:success,msg:操作成功,data:{applyId:2023110000000041,versionNum:27,recToken:15988968bb,updateBy:2,updateByName:管理员,updateTime:2023-11-16 15:37:22}}', 0, NULL, '2023-11-16 15:37:22'); + + + +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (1, 0, '1', '超级管理员', 'admin', 1, '1', '1', '1', '0', '0', 'admin', '2023-04-04 13:29:07', '', NULL, '超级管理员'); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (18, 3, '385e0e1f29', '测试角色1', 'testrole1', 0, NULL, '1', '1', '1', '0', '2', '2023-10-27 10:12:44', '100014', '2023-11-02 10:47:17', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (19, 1, 'aa47a7ce37', 'test4', 'test', 5, NULL, '0', '1', '0', '0', '100014', '2023-11-02 10:49:33', '100014', '2023-11-02 10:51:26', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (6, 0, '1', '啊实打实', '啊实打实', 1, NULL, '1', '1', '0', '2', '100007', '2023-06-30 15:26:07', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (12, 0, '1', '测试角色', 'fasdf', 0, NULL, '1', '1', '0', '2', '1', '2023-07-03 11:20:14', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (15, 22, 'd51c1ad7d4', '单菜单权限', 'one', 0, NULL, '1', '1', '0', '2', '1', '2023-07-17 17:49:42', '1', '2023-07-18 15:48:17', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (14, 7, '0a1eaf4b07', 'testRole', 'testRole', 0, '1', '1', '1', '0', '2', '1', '2023-07-06 20:12:28', '1', '2023-10-11 09:54:33', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (3, 15, '2174d570a4', '测试', 'jiuyv', 3, '1', '1', '1', '0', '2', '1', '2023-06-28 18:47:19', '1', '2023-10-11 09:53:23', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (16, 0, '1', '测试角色', 'jj', 0, NULL, '1', '1', '0', '2', '1', '2023-10-17 19:56:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (17, 0, '1', '测试角色', 'jj', 0, NULL, '1', '1', '0', '2', '1', '2023-10-17 19:57:11', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (20, 34, '19503aa738', '单权限测试', 'onetest', 10, NULL, '1', '1', '0', '0', '1', '2023-11-20 09:58:51', '1', '2023-11-21 15:54:21', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (13, 50, '4f1869dd65', '全部权限', 'all', 4, '1', '1', '1', '0', '0', '1', '2023-07-04 18:04:20', '1', '2023-12-04 17:22:53', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (2, 20, '4c9baf81bf', '普通角色', 'common', 2, '2', '1', '1', '0', '0', 'admin', '2023-04-04 13:29:07', '1', '2023-11-17 16:11:26', ''); + + + +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 1); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 2); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 4); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 3); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 8); + + +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (1, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3197); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3241); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3215); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3126); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3127); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3128); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3221); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3129); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3078); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3079); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3080); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3081); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3086); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3087); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3088); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3089); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3074); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3075); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3076); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3077); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3125); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3169); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3170); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3171); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3172); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3173); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3174); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3198); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3199); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3200); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3201); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3202); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3203); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3204); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3112); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3113); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3114); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3118); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3119); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3243); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3244); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3245); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3123); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3142); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3143); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3144); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3145); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3130); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3131); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3176); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3178); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3132); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3208); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3180); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3181); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3216); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3096); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3097); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3098); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3099); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1005); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3238); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1010); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1014); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1031); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1032); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1033); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1034); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1037); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1039); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 500); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1040); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1041); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1042); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 501); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1043); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1044); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1045); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3273); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3251); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3274); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3264); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3265); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3266); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3269); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3270); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3267); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3268); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3250); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3252); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3280); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3253); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3281); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3254); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3282); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3255); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3284); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3259); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3283); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3256); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3285); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3257); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3286); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3258); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3000); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3287); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3021); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3182); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3220); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3233); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3234); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3235); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3212); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3213); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3214); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3223); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3224); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3150); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3290); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3151); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3152); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3153); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3154); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3155); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3156); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3157); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3158); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3209); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3288); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3289); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3242); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3292); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3149); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3146); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3183); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3276); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3277); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3278); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3291); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3024); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3025); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3159); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3160); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3161); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3162); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3185); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3186); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3210); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3271); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3279); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3109); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3163); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3164); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3165); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3166); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3167); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3192); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3193); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3211); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3225); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3226); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3236); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3227); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3228); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3229); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3230); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3231); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3232); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3111); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3057); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3058); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3061); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3062); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3063); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3064); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3065); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3066); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3067); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3059); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3068); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3069); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3070); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3060); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3071); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3072); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3073); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3246); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3248); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3090); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3091); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3092); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3093); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3094); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3095); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3184); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3133); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3134); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3135); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3136); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3137); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3138); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3139); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3140); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3141); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3275); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3222); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3239); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3272); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3240); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3104); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3216); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3096); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3097); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3098); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3099); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3187); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3188); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3189); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3197); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3241); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3082); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3083); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3084); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3085); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3215); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3126); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3127); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3128); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3221); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3129); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3078); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3079); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3080); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3081); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3086); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3087); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3088); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3089); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3074); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3075); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3076); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3077); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3125); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3169); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3170); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3171); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3172); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3173); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3174); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3198); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3199); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3200); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3201); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3202); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3203); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3204); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3112); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3113); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3114); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3118); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3119); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3243); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3244); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3245); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3123); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3142); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3143); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3144); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3145); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3130); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3131); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3176); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3178); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3132); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3208); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3180); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3181); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1005); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3238); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1010); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1014); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1031); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1032); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1033); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1034); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1037); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1039); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 500); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1040); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1041); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1042); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 501); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1043); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1044); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1045); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3273); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3251); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3274); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3264); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3265); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3266); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3269); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3270); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3267); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3268); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3250); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3252); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3280); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3253); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3281); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3254); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3282); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3255); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3284); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3259); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3283); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3256); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3285); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3257); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3286); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3258); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3000); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1010); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1014); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1031); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1032); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1033); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1034); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1037); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1039); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 500); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1040); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1041); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1042); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 501); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1043); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1044); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1045); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3287); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3021); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3182); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3220); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3233); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3234); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3235); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3212); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3213); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3214); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3223); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3224); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3150); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3151); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3152); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3153); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3154); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3155); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3156); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3157); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3158); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3209); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3288); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3289); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3242); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3149); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3146); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3183); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3276); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3277); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3278); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3024); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3025); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3159); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3160); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3161); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3162); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3185); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3186); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3210); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3271); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3279); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3109); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3163); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3164); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3165); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3166); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3167); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3192); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3193); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3211); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3225); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3226); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3236); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3227); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3228); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3229); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3230); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3231); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3232); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3111); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3057); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3058); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3061); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3062); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3063); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3064); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3065); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3066); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3067); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3059); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3068); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3069); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3070); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3060); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3071); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3072); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3073); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3246); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3248); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3090); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3091); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3092); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3093); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3094); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3095); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3184); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3133); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3134); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3135); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3136); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3137); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3138); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3139); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3140); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3275); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3141); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3222); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3239); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3272); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3240); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3104); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3082); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3083); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3084); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3085); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3216); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3096); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3097); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3098); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3099); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3187); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3188); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3189); + + +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100017, 2, '29f61b6666', 1, 'test4', 'aa', '00', '92410233@qq.com', '18712387795', '0', NULL, '$2a$10$E2Ayp58A9KlFmL23Cwu5WO9KSF7LTjh69PgOppec3zRsd0NTiTbr6', '0', '0', '172.16.12.254', '2023-11-02 10:51:06.345', '0', 0, '2023-11-02 10:50:41', '100014', '2023-11-02 10:42:28', '100014', '2023-11-02 10:51:05', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (3, 3, '3c4f8a0400', 2, 'zhoul2', '管理员', '01', '', '', '1', '/images/console/3c8f3855a4b1404fbaa492c8349d22c5.jpg', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '1', '0', '127.0.0.1', '2023-10-26 20:10:15.438', '0', 0, '2023-10-10 10:22:12', '1', '2023-04-04 13:29:07', '1', '2023-10-27 09:50:37', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100020, 0, '1', 1, 'admin5', 'admin5', '00', NULL, NULL, NULL, NULL, '$2a$10$6Eg3BZlQkID5pcLDy/feQ.4JaEW2x6ZO0gxYDQ9cg48V13knKG3lW', '0', '0', '127.0.0.1', '2023-11-20 09:42:59.663', '0', 0, NULL, '1', '2023-11-20 09:42:31', NULL, '2023-11-20 09:42:58', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100024, 0, '1', 1, 'test66', '测试SQLapply', '00', NULL, NULL, NULL, NULL, '$2a$10$ch.NYHltpZzQzoDLKsiQMOzdoRhMp1.6aO6c1s1UIr/z43VyMpXGW', '0', '0', '127.0.0.1', '2023-12-01 16:24:59.082', '0', 0, NULL, '100018', '2023-12-01 14:10:50', NULL, '2023-12-01 16:24:59', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100022, 1, '542a19cc95', 1, 'admin20', 'SQL工作台测试', '00', NULL, '15516673702', NULL, NULL, '$2a$10$YJ0aISeuEa1z7JzQmeEdG.v1RS3xQNUaLDqUNAW8wWbBRcf7ZrjiO', '0', '0', '127.0.0.1', '2023-11-28 16:22:11.621', '0', 0, NULL, '1', '2023-11-28 16:21:40', '1', '2023-11-28 16:22:11', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100015, 0, '1', 1, 'admin2', 'admin2', '00', '22@33.com', '13512312124', '1', NULL, '$2a$10$Q7nAT0P6dCIGbWF0SSv6Ue/ZkLcB5IegmjJsHpywTiNpI7apXN3h2', '0', '0', '192.168.83.4', '2023-12-05 23:56:56.802', '0', 0, '2023-11-20 15:05:01', '1', '2023-10-16 09:48:06', NULL, '2023-12-05 16:04:17', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100023, 1, 'ad24aa5ad8', 1, 'test02', 'ttt', '00', NULL, NULL, NULL, NULL, '$2a$10$.m/0nD4ZNKcswa.jjL4.CuCQB3ax9AHuuIqcnIUeqOUzyRntejoTu', '0', '0', '127.0.0.1', '2023-12-04 17:46:02.428', '0', 0, NULL, '1', '2023-11-28 16:23:43', '1', '2023-12-04 17:46:01', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (1, 126, '1', 2, 'admin', '管理员', '01', '', '', '1', '/images/console/3c8f3855a4b1404fbaa492c8349d22c5.jpg', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', '2023-12-07 20:52:16.808', '0', 0, '2023-11-24 11:25:27', '1', '2023-04-04 13:29:07', '1', '2023-12-07 20:52:16', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100014, 1, '6abd041739', 1, 'admin1', 'admin1', '00', '11@22.com', '13512312123', '2', NULL, '$2a$10$c/5GyT5yKnyJwBtQb7XZBubJyyFDm2WowPH9rvjKmD5O1OzdK5Gri', '0', '0', '172.16.12.254', '2023-12-08 06:36:50.538', '0', 0, '2023-11-03 19:57:50', '1', '2023-10-16 09:47:01', '2', '2023-12-07 22:44:11', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100019, 0, '1', 1, 'admin3', 'admin3', '00', NULL, NULL, NULL, NULL, '$2a$10$58MAXMpS1pN9390K7Awb4egjVy1zV3epyyAX.GNUHNmPNai6aH9dO', '0', '0', '127.0.0.1', '2023-11-20 15:17:25.87', '0', 0, NULL, '1', '2023-11-16 16:04:56', NULL, '2023-11-20 15:17:24', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (2, 1, '1', 2, 'zhoul', '管理员', '01', '', '', '1', '/images/console/3c8f3855a4b1404fbaa492c8349d22c5.jpg', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', '2023-12-08 10:13:53.835', '0', 0, '2023-10-10 10:22:12', '1', '2023-04-04 13:29:07', '1', '2023-12-08 10:13:52', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100016, 0, '1', 1, 'admin55', 'admin55', '00', NULL, '13899999999', '0', NULL, '$2a$10$ryvYWUIgL6NC19qM7Y98UOIeE/ISBBp0o3bmfHKrU4iKKIquxe6se', '0', '0', '172.16.12.254', '2023-12-08 21:26:59.872', '0', 0, NULL, '1', '2023-10-19 11:29:28', NULL, '2023-12-08 13:34:21', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100025, 1, 'bf6270ffc1', 1, 'test88', 'test88', '00', NULL, '15516673777', NULL, NULL, '$2a$10$jj4lssD1ceWTojSwUySwaesxFpoT7dlR2Gh.wwNxHncjT90nltWES', '0', '0', '127.0.0.1', '2023-12-08 13:50:09.694', '0', 0, NULL, '100018', '2023-12-01 17:06:19', '100018', '2023-12-08 13:50:09', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100021, 0, '1', 1, 'admin12', 'admin12', '00', NULL, NULL, NULL, NULL, '$2a$10$VemvbBkB8SDkYt7TU3ISrO56Yl6Wr/V4QpxfjCKkoG0LUTqdTectu', '0', '0', '127.0.0.1', '2023-12-04 16:15:38.262', '0', 0, '2023-11-21 11:13:50', '1', '2023-11-21 11:13:18', NULL, '2023-12-04 16:15:37', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100018, 4, '73b8d5d951', 1, 'yts', 'yts', '00', '11@11.cc', '15516612123', '0', NULL, '$2a$10$kqZENVYYhIx2ZAwpQe1nOOwag0Skg5jqym9DM0dADgexShHkxAQpC', '0', '0', '127.0.0.1', '2023-12-01 17:06:59.93', '0', 0, '2023-11-24 11:27:59', '1', '2023-11-03 17:15:30', '1', '2023-12-01 17:07:00', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100026, 0, '1', 1, 'test99', 'test99', '00', NULL, NULL, NULL, NULL, '$2a$10$jxQRDh4xKy.A1YTnlvSRLeZSqio9OChabFilBW7oqEu5fVYVLr4MK', '0', '0', '127.0.0.1', '2023-12-07 16:48:59.334', '0', 0, NULL, '100025', '2023-12-07 16:48:43', NULL, '2023-12-07 16:48:58', ''); + + +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (1, 1); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (3, 18); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100014, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100015, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100016, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100017, 19); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100018, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100018, 20); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100019, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100020, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100021, 20); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100022, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100023, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100024, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100025, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100026, 13); + + +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (13, 1, '0fcec93c63', '00', '01', '12312312', '00', 'admin', '2023-07-03 13:25:01', 'admin', '2023-07-03 13:27:22', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (15, 1, '22d148e4bf', '01', '01', '13313312122', '00', 'yts', '2023-07-17 17:51:37', 'yts', '2023-07-17 17:51:46', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (14, 1, '61b141512b', '01', '02', '15516613123', '00', 'admin', '2023-07-06 20:17:28', 'admin', '2023-07-07 09:56:55', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (11, 3, 'd523a81ad0', '00', '01', '16615512123', '00', 'admin', '2023-06-30 10:05:28', 'yts', '2023-07-28 14:07:21', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10, 2, '6664922e76', '00', '01', '111111111', '00', 'admin', '2023-06-30 10:05:09', 'yts', '2023-06-30 13:53:58', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (17, 0, '1', '01', '01', '13248363323', '00', 'admin', '2023-10-08 11:28:48', NULL, NULL, '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (18, 0, '1', '00', '01', '15612312123', '00', 'admin', '2023-10-18 10:22:53', NULL, NULL, '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (16, 1, 'aa591707c0', '01', '01', '13212312319', '00', 'yts', '2023-07-28 14:07:41', 'admin', '2023-10-08 11:28:24', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10000, 0, '1', 'ds_sms', '01', '18712387792', '00', 'admin1', '2023-12-04 13:19:57', NULL, '2023-12-04 13:19:57', '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10001, 0, '1', 'pmth_sms', '01', '18712387792', '00', 'admin1', '2023-12-04 13:20:17', NULL, '2023-12-04 13:20:17', '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10002, 0, '1', 'pmth_sms', '01', '13564853037', '00', 'admin1', '2023-12-04 13:46:56', NULL, '2023-12-04 13:46:56', '0'); + +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000153', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2024-12-25', '1', 0, 'edde58bceb', '1220', 'admin', '2023-12-15 20:18:21', NULL, 'admin', NULL, '0', NULL, 'oPdk4whkHRheecCHOX7LMw==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000154', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2023-12-25', '0', 0, 'ca365f98f1', '1220', 'admin', '2023-12-15 20:35:50', NULL, 'admin', NULL, '0', NULL, 'oPdk4whkHRheecCHOX7LMw==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000155', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2024-12-25', '1', 0, 'd0ef53603f', '1220', 'admin', '2023-12-15 20:38:06', NULL, 'admin', NULL, '0', NULL, 'oPdk4whkHRheecCHOX7LMw==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000156', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2023-12-25', '1', 0, '0ff16cab10', '1220', 'admin', '2023-12-15 20:46:47', NULL, 'admin', NULL, '0', NULL, '8pcg94Nm4CbHfeJ4Q2yY6g==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000157', '第三代', '01', '是多少', 'TI/zQ29Xz/mslv1KaAuVw67OLwab/LLzpiwoE5U//FcCrUD/+R948Q==', 'fBOJHExmOEC/sSjLsVnz6pJst/VsRAfR9qtp9+niQ10CrUD/+R948Q==', '2023-11-28', '2024-12-25', '1', 0, '12c6936f71', '1', 'admin', '2023-12-15 20:51:37', NULL, 'admin', NULL, '0', NULL, 'MMk8HA35ZIJUt3WDHo609A==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000158', '第四代', '01', '是多少', 'TI/zQ29Xz/mslv1KaAuVw67OLwab/LLzpiwoE5U//FcCrUD/+R948Q==', 'fBOJHExmOEC/sSjLsVnz6pJst/VsRAfR9qtp9+niQ10CrUD/+R948Q==', '2023-11-28', '2024-12-25', '0', 0, '12c6936f71', '1', 'admin', '2023-12-15 20:51:37', NULL, 'admin', NULL, '0', NULL, 'MMk8HA35ZIJUt3WDHo609A==', NULL, NULL, NULL); + + + + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/sql/schema.sql b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/sql/schema.sql new file mode 100644 index 00000000..a34840c5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/agile-data-service/src/test/resources/sql/schema.sql @@ -0,0 +1,6277 @@ +/* + Navicat Premium Data Transfer + + Source Server : 172.16.12.105 + Source Server Type : PostgreSQL + Source Server Version : 140007 (140007) + Source Host : 172.16.12.105:5432 + Source Catalog : keliubao + Source Schema : public + + Target Server Type : PostgreSQL + Target Server Version : 140007 (140007) + File Encoding : 65001 + + Date: 07/12/2023 20:04:05 +*/ + + +-- ---------------------------- +-- Sequence structure for demorange_int_seq +-- ---------------------------- +DROP SEQUENCE IF EXISTS demorange_int_seq; +CREATE SEQUENCE demorange_int_seq +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for prd_line_station_trans_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS prd_line_station_trans_month; +CREATE SEQUENCE prd_line_station_trans_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_asset_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_asset_column; +CREATE SEQUENCE seq_data_asset_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_asset_table +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_asset_table; +CREATE SEQUENCE seq_data_asset_table +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_asset_table_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_asset_table_column; +CREATE SEQUENCE seq_data_asset_table_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_config +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_config; +CREATE SEQUENCE seq_data_config +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_institute +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_institute; +CREATE SEQUENCE seq_data_institute +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_institute_api_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_institute_api_log; +CREATE SEQUENCE seq_data_institute_api_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_institute_auth +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_institute_auth; +CREATE SEQUENCE seq_data_institute_auth +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_market_api +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_market_api; +CREATE SEQUENCE seq_data_market_api +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_market_api_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_market_api_log; +CREATE SEQUENCE seq_data_market_api_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_market_api_mask +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_market_api_mask; +CREATE SEQUENCE seq_data_market_api_mask +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_authorize +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_authorize; +CREATE SEQUENCE seq_data_metadata_authorize +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_change_record +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_change_record; +CREATE SEQUENCE seq_data_metadata_change_record +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_column; +CREATE SEQUENCE seq_data_metadata_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_source +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_source; +CREATE SEQUENCE seq_data_metadata_source +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_source_conn +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_source_conn; +CREATE SEQUENCE seq_data_metadata_source_conn +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_table +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_table; +CREATE SEQUENCE seq_data_metadata_table +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_quality_report +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_quality_report; +CREATE SEQUENCE seq_data_quality_report +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_sql_console_export +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_sql_console_export; +CREATE SEQUENCE seq_data_sql_console_export +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_sql_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_sql_log; +CREATE SEQUENCE seq_data_sql_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_info +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_info; +CREATE SEQUENCE seq_docker_apply_info +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_lib +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_lib; +CREATE SEQUENCE seq_docker_apply_lib +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_review +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_review; +CREATE SEQUENCE seq_docker_apply_review +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_review_dtl +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_review_dtl; +CREATE SEQUENCE seq_docker_apply_review_dtl +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_config_hardware +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_config_hardware; +CREATE SEQUENCE seq_docker_config_hardware +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_download_apply +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_download_apply; +CREATE SEQUENCE seq_docker_download_apply +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_images +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_images; +CREATE SEQUENCE seq_docker_images +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_vpn +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_vpn; +CREATE SEQUENCE seq_docker_vpn +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_with_user_account +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_with_user_account; +CREATE SEQUENCE seq_docker_with_user_account +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_gen_table +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_gen_table; +CREATE SEQUENCE seq_gen_table +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_gen_table_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_gen_table_column; +CREATE SEQUENCE seq_gen_table_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_lab_config_hardware +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_lab_config_hardware; +CREATE SEQUENCE seq_lab_config_hardware +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_api_auth +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_api_auth; +CREATE SEQUENCE seq_org_api_auth +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_config +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_config; +CREATE SEQUENCE seq_org_config +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_gateway_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_gateway_log; +CREATE SEQUENCE seq_org_gateway_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_statistics +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_statistics; +CREATE SEQUENCE seq_org_statistics +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_content +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_content; +CREATE SEQUENCE seq_portal_content +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_logininfor +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_logininfor; +CREATE SEQUENCE seq_portal_logininfor +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_oper_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_oper_log; +CREATE SEQUENCE seq_portal_oper_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_user +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_user; +CREATE SEQUENCE seq_portal_user +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_user_msg +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_user_msg; +CREATE SEQUENCE seq_portal_user_msg +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_metric_day; +CREATE SEQUENCE seq_prd_line_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_metric_hour +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_metric_hour; +CREATE SEQUENCE seq_prd_line_metric_hour +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_metric_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_metric_month; +CREATE SEQUENCE seq_prd_line_metric_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_metric_day; +CREATE SEQUENCE seq_prd_line_station_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_metric_hour +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_metric_hour; +CREATE SEQUENCE seq_prd_line_station_metric_hour +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_metric_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_metric_month; +CREATE SEQUENCE seq_prd_line_station_metric_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_trans_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_trans_day; +CREATE SEQUENCE seq_prd_line_station_trans_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_trans_hour +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_trans_hour; +CREATE SEQUENCE seq_prd_line_station_trans_hour +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_trans_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_trans_month; +CREATE SEQUENCE seq_prd_line_station_trans_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_route_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_route_metric_day; +CREATE SEQUENCE seq_prd_route_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_metric_day; +CREATE SEQUENCE seq_prd_station_freq_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_metric_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_metric_month; +CREATE SEQUENCE seq_prd_station_freq_metric_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_trans_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_trans_day; +CREATE SEQUENCE seq_prd_station_freq_trans_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_trans_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_trans_month; +CREATE SEQUENCE seq_prd_station_freq_trans_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_files +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_files; +CREATE SEQUENCE seq_public_files +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_files_progress +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_files_progress; +CREATE SEQUENCE seq_public_files_progress +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_msg_template +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_msg_template; +CREATE SEQUENCE seq_public_msg_template +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_phone_msg_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_phone_msg_log; +CREATE SEQUENCE seq_public_phone_msg_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_centime_delay +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_centime_delay; +CREATE SEQUENCE seq_qa_centime_delay +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_pos_match_rate +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_pos_match_rate; +CREATE SEQUENCE seq_qa_pos_match_rate +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_route_daily_count +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_route_daily_count; +CREATE SEQUENCE seq_qa_route_daily_count +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_route_miss +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_route_miss; +CREATE SEQUENCE seq_qa_route_miss +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_route_turnover_time +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_route_turnover_time; +CREATE SEQUENCE seq_qa_route_turnover_time +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_station_miss +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_station_miss; +CREATE SEQUENCE seq_qa_station_miss +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_vehicle_daily_count +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_vehicle_daily_count; +CREATE SEQUENCE seq_qa_vehicle_daily_count +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sftp_user +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sftp_user; +CREATE SEQUENCE seq_sftp_user +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sftp_user_file +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sftp_user_file; +CREATE SEQUENCE seq_sftp_user_file +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sql_console_file +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sql_console_file; +CREATE SEQUENCE seq_sql_console_file +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sql_data_apply +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sql_data_apply; +CREATE SEQUENCE seq_sql_data_apply +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_config +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_config; +CREATE SEQUENCE seq_sys_config +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 4 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_dept +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_dept; +CREATE SEQUENCE seq_sys_dept +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 3 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_dict_data +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_dict_data; +CREATE SEQUENCE seq_sys_dict_data +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_dict_type +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_dict_type; +CREATE SEQUENCE seq_sys_dict_type +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_job +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_job; +CREATE SEQUENCE seq_sys_job +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_job_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_job_log; +CREATE SEQUENCE seq_sys_job_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_logininfor +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_logininfor; +CREATE SEQUENCE seq_sys_logininfor +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_menu +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_menu; +CREATE SEQUENCE seq_sys_menu +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 3000 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_notice +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_notice; +CREATE SEQUENCE seq_sys_notice +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_oper_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_oper_log; +CREATE SEQUENCE seq_sys_oper_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_post +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_post; +CREATE SEQUENCE seq_sys_post +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_role +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_role; +CREATE SEQUENCE seq_sys_role +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 3 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_user +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_user; +CREATE SEQUENCE seq_sys_user +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 2 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_warning_contact +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_warning_contact; +CREATE SEQUENCE seq_sys_warning_contact +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_warning_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_warning_log; +CREATE SEQUENCE seq_sys_warning_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_test_t_t +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_test_t_t; +CREATE SEQUENCE seq_test_t_t +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for tbl_prd_sync_record_id_seq +-- ---------------------------- +DROP SEQUENCE IF EXISTS tbl_prd_sync_record_id_seq; +CREATE SEQUENCE tbl_prd_sync_record_id_seq +INCREMENT 1 +MINVALUE 1 +MAXVALUE 2147483647 +START 1 +CACHE 1; + +-- ---------------------------- +-- Table structure for demorange +-- ---------------------------- +DROP TABLE IF EXISTS demorange; +CREATE TABLE demorange ( + int int8 NOT NULL AUTO_INCREMENT , + val int4, + crt timestamp(6) +) +; + +-- ---------------------------- +-- Table structure for gen_table +-- ---------------------------- +DROP TABLE IF EXISTS gen_table; +CREATE TABLE gen_table ( + table_id int8 NOT NULL AUTO_INCREMENT , + table_name varchar(200) , + table_comment varchar(500) , + sub_table_name varchar(64) , + sub_table_fk_name varchar(64) , + class_name varchar(100) , + tpl_category varchar(200) , + package_name varchar(100) , + module_name varchar(30) , + business_name varchar(30) , + function_name varchar(50) , + function_author varchar(50) , + gen_type char(1) , + gen_path varchar(200) , + options varchar(1000) , + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6), + remark varchar(500) +) +; +COMMENT ON COLUMN gen_table.table_id IS '编号'; +COMMENT ON COLUMN gen_table.table_name IS '表名称'; +COMMENT ON COLUMN gen_table.table_comment IS '表描述'; +COMMENT ON COLUMN gen_table.sub_table_name IS '关联子表的表名'; +COMMENT ON COLUMN gen_table.sub_table_fk_name IS '子表关联的外键名'; +COMMENT ON COLUMN gen_table.class_name IS '实体类名称'; +COMMENT ON COLUMN gen_table.tpl_category IS '使用的模板(crud单表操作 tree树表操作)'; +COMMENT ON COLUMN gen_table.package_name IS '生成包路径'; +COMMENT ON COLUMN gen_table.module_name IS '生成模块名'; +COMMENT ON COLUMN gen_table.business_name IS '生成业务名'; +COMMENT ON COLUMN gen_table.function_name IS '生成功能名'; +COMMENT ON COLUMN gen_table.function_author IS '生成功能作者'; +COMMENT ON COLUMN gen_table.gen_type IS '生成代码方式(0zip压缩包 1自定义路径)'; +COMMENT ON COLUMN gen_table.gen_path IS '生成路径(不填默认项目路径)'; +COMMENT ON COLUMN gen_table.options IS '其它生成选项'; +COMMENT ON COLUMN gen_table.create_by IS '创建者'; +COMMENT ON COLUMN gen_table.create_time IS '创建时间'; +COMMENT ON COLUMN gen_table.update_by IS '更新者'; +COMMENT ON COLUMN gen_table.update_time IS '更新时间'; +COMMENT ON COLUMN gen_table.remark IS '备注'; +COMMENT ON TABLE gen_table IS '代码生成业务表'; + +-- ---------------------------- +-- Table structure for gen_table_column +-- ---------------------------- +DROP TABLE IF EXISTS gen_table_column; +CREATE TABLE gen_table_column ( + column_id int8 NOT NULL AUTO_INCREMENT , + table_id int8, + column_name varchar(200) , + column_comment varchar(500) , + column_type varchar(100) , + java_type varchar(500) , + java_field varchar(200) , + is_pk char(1) , + is_increment char(1) , + is_required char(1) , + is_insert char(1) , + is_edit char(1) , + is_list char(1) , + is_query char(1) , + query_type varchar(200) , + html_type varchar(200) , + dict_type varchar(200) , + sort int4, + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6) +) +; +COMMENT ON COLUMN gen_table_column.column_id IS '编号'; +COMMENT ON COLUMN gen_table_column.table_id IS '归属表编号'; +COMMENT ON COLUMN gen_table_column.column_name IS '列名称'; +COMMENT ON COLUMN gen_table_column.column_comment IS '列描述'; +COMMENT ON COLUMN gen_table_column.column_type IS '列类型'; +COMMENT ON COLUMN gen_table_column.java_type IS 'JAVA类型'; +COMMENT ON COLUMN gen_table_column.java_field IS 'JAVA字段名'; +COMMENT ON COLUMN gen_table_column.is_pk IS '是否主键(1是)'; +COMMENT ON COLUMN gen_table_column.is_increment IS '是否自增(1是)'; +COMMENT ON COLUMN gen_table_column.is_required IS '是否必填(1是)'; +COMMENT ON COLUMN gen_table_column.is_insert IS '是否为插入字段(1是)'; +COMMENT ON COLUMN gen_table_column.is_edit IS '是否编辑字段(1是)'; +COMMENT ON COLUMN gen_table_column.is_list IS '是否列表字段(1是)'; +COMMENT ON COLUMN gen_table_column.is_query IS '是否查询字段(1是)'; +COMMENT ON COLUMN gen_table_column.query_type IS '查询方式(等于、不等于、大于、小于、范围)'; +COMMENT ON COLUMN gen_table_column.html_type IS '显示类型(文本框、文本域、下拉框、复选框、单选框、日期控件)'; +COMMENT ON COLUMN gen_table_column.dict_type IS '字典类型'; +COMMENT ON COLUMN gen_table_column.sort IS '排序'; +COMMENT ON COLUMN gen_table_column.create_by IS '创建者'; +COMMENT ON COLUMN gen_table_column.create_time IS '创建时间'; +COMMENT ON COLUMN gen_table_column.update_by IS '更新者'; +COMMENT ON COLUMN gen_table_column.update_time IS '更新时间'; +COMMENT ON TABLE gen_table_column IS '代码生成业务表字段'; + +-- ---------------------------- +-- Table structure for seqno +-- ---------------------------- +DROP TABLE IF EXISTS seqno; +CREATE TABLE seqno ( + nextval int8 +) +; + +-- ---------------------------- +-- Table structure for tbl_batch_table_mapping +-- ---------------------------- +DROP TABLE IF EXISTS tbl_batch_table_mapping; +CREATE TABLE tbl_batch_table_mapping ( + task_no varchar(100) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + remote_table_sql varchar(3000) NOT NULL, + remote_db_name varchar(100) NOT NULL, + remote_days int4 NOT NULL, + local_table varchar(200) NOT NULL, + local_db_name varchar(100) NOT NULL, + local_pre_sql varchar(300) , + mapping_json varchar(3000) NOT NULL, + remarks varchar(500) , + data_status varchar(2) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_batch_table_mapping.task_no IS '【任务编号】'; +COMMENT ON COLUMN tbl_batch_table_mapping.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_batch_table_mapping.remote_table_sql IS '【远程表查询SQL】 完整SQL,或 tbl_user where date=''{date}'' 形式(无FROM会自动拼接);条件完全自行写'; +COMMENT ON COLUMN tbl_batch_table_mapping.remote_db_name IS '【远程表数据库】 自定义的一个数据源名称,自行实现,配置在yml'; +COMMENT ON COLUMN tbl_batch_table_mapping.remote_days IS '【远程前推天数】 T+N模式,比如1,表示同步昨天数据,2则同步前天数据'; +COMMENT ON COLUMN tbl_batch_table_mapping.local_table IS '【本地表名】 真实表编码 如 tbl_user'; +COMMENT ON COLUMN tbl_batch_table_mapping.local_db_name IS '【本地数据库】自定义的一个数据源名称,自行实现,配置在yml。也可以是文件csv/txt'; +COMMENT ON COLUMN tbl_batch_table_mapping.local_pre_sql IS '【本地前置SQL】如果要避免重复插入,那么执行删除语句,切记条件要正确。或者文件要清空true'; +COMMENT ON COLUMN tbl_batch_table_mapping.mapping_json IS '【映射关系】json格式 : {来源字段:存储字段|转换类型} 。如果来源类型和存储类型一致就不用写“|转换类型”部分'; +COMMENT ON COLUMN tbl_batch_table_mapping.remarks IS '【备注】'; +COMMENT ON COLUMN tbl_batch_table_mapping.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_batch_table_mapping.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_batch_table_mapping IS '【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。'; + +-- ---------------------------- +-- Table structure for tbl_batch_task +-- ---------------------------- +DROP TABLE IF EXISTS tbl_batch_task; +CREATE TABLE tbl_batch_task ( + task_no varchar(100) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + task_title varchar(100) , + pre_start_date timestamp(6), + pre_end_date timestamp(6), + pre_total_time varchar(20) , + curr_start_date timestamp(6), + failure_conditions varchar(2000) , + bus_status varchar(30) NOT NULL, + data_status varchar(2) NOT NULL, + update_time timestamp(6) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_batch_task.task_no IS '【任务编号】'; +COMMENT ON COLUMN tbl_batch_task.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_batch_task.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_batch_task.task_title IS '【任务名称】'; +COMMENT ON COLUMN tbl_batch_task.pre_start_date IS '【上次开始时间】'; +COMMENT ON COLUMN tbl_batch_task.pre_end_date IS '【上次结束时间】'; +COMMENT ON COLUMN tbl_batch_task.pre_total_time IS '【上次耗时】'; +COMMENT ON COLUMN tbl_batch_task.curr_start_date IS '【当前开始时间】'; +COMMENT ON COLUMN tbl_batch_task.failure_conditions IS '【失败数据条件】比如按天处理失败把日期记下,后面继续跑。'; +COMMENT ON COLUMN tbl_batch_task.bus_status IS '【任务状态】'; +COMMENT ON COLUMN tbl_batch_task.data_status IS '【数据状态】上传时可先处理成98临时,方便清理无用文件'; +COMMENT ON COLUMN tbl_batch_task.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_batch_task.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_batch_task.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_batch_task.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_batch_task IS '【批处理任务表】记录任务处理情况,方便实现增量重跑'; + +-- ---------------------------- +-- Table structure for tbl_data_api +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_api; +CREATE TABLE tbl_data_api ( + api_id int8 NOT NULL AUTO_INCREMENT , + status char(1) NOT NULL, + create_by varchar(50) , + create_time timestamp(0), + create_dept varchar(50) , + update_by varchar(50) , + update_time timestamp(0), + remark varchar(1000) , + api_name varchar(255) NOT NULL, + api_version varchar(60) NOT NULL, + api_url varchar(255) NOT NULL, + req_method varchar(10) NOT NULL, + res_type varchar(10) NOT NULL, + deny varchar(2000) , + limit_json text , + config_json text , + req_json text , + res_json text , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0', + api_code varchar(50) , + api_type char(1) , + source_id int8 +) +; +COMMENT ON COLUMN tbl_data_api.api_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_api.status IS '状态(1待注册,2已注册,3已发布)'; +COMMENT ON COLUMN tbl_data_api.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_api.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_api.create_dept IS '创建人所属部门'; +COMMENT ON COLUMN tbl_data_api.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_api.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_api.remark IS '备注'; +COMMENT ON COLUMN tbl_data_api.api_name IS 'API名称'; +COMMENT ON COLUMN tbl_data_api.api_version IS 'API版本'; +COMMENT ON COLUMN tbl_data_api.api_url IS 'API路径'; +COMMENT ON COLUMN tbl_data_api.req_method IS '请求方式'; +COMMENT ON COLUMN tbl_data_api.res_type IS '返回格式'; +COMMENT ON COLUMN tbl_data_api.deny IS 'IP黑名单多个,隔开'; +COMMENT ON COLUMN tbl_data_api.limit_json IS '限流配置'; +COMMENT ON COLUMN tbl_data_api.config_json IS '执行配置'; +COMMENT ON COLUMN tbl_data_api.req_json IS '请求参数'; +COMMENT ON COLUMN tbl_data_api.res_json IS '返回参数'; +COMMENT ON COLUMN tbl_data_api.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_api.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_api.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_api.api_code IS 'API code'; +COMMENT ON COLUMN tbl_data_api.api_type IS '类型:1敏捷API 2系统API'; +COMMENT ON COLUMN tbl_data_api.source_id IS '数据源id'; +COMMENT ON TABLE tbl_data_api IS '【API信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_api_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_api_log; +CREATE TABLE tbl_data_api_log ( + api_log_id int8 NOT NULL AUTO_INCREMENT , + api_id int8 NOT NULL, + caller_id varchar(50) , + caller_ip varchar(50) , + caller_url varchar(255) , + caller_params varchar(2000) , + caller_date timestamp(0), + caller_size int4, + time int4, + msg varchar(2000) , + status char(1) +) +; +COMMENT ON COLUMN tbl_data_api_log.api_log_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_api_log.api_id IS '调用api'; +COMMENT ON COLUMN tbl_data_api_log.caller_id IS '调用者id'; +COMMENT ON COLUMN tbl_data_api_log.caller_ip IS '调用者ip'; +COMMENT ON COLUMN tbl_data_api_log.caller_url IS '调用url'; +COMMENT ON COLUMN tbl_data_api_log.caller_params IS '调用参数'; +COMMENT ON COLUMN tbl_data_api_log.caller_date IS '调用时间'; +COMMENT ON COLUMN tbl_data_api_log.caller_size IS '调用数据量'; +COMMENT ON COLUMN tbl_data_api_log.time IS '调用耗时'; +COMMENT ON COLUMN tbl_data_api_log.msg IS '信息记录'; +COMMENT ON COLUMN tbl_data_api_log.status IS '状态(0成功,1失败)'; +COMMENT ON TABLE tbl_data_api_log IS '【API调用日志信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_asset_column +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_asset_column; +CREATE TABLE tbl_data_asset_column ( + asset_column_id int8 NOT NULL AUTO_INCREMENT , + column_name varchar(255) NOT NULL, + column_comment varchar(255) , + data_type varchar(255) NOT NULL, + column_no varchar(255) , + data_length varchar(255) , + data_example varchar(255) , + data_desc varchar(255) , + rsv varchar(255) , + data_unit varchar(255) +) +; +COMMENT ON COLUMN tbl_data_asset_column.asset_column_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_asset_column.column_name IS '字段名称'; +COMMENT ON COLUMN tbl_data_asset_column.column_comment IS '字段注释'; +COMMENT ON COLUMN tbl_data_asset_column.data_type IS '数据类型'; +COMMENT ON COLUMN tbl_data_asset_column.column_no IS '字段编码'; +COMMENT ON COLUMN tbl_data_asset_column.data_length IS '长度'; +COMMENT ON COLUMN tbl_data_asset_column.data_example IS '数据示例'; +COMMENT ON COLUMN tbl_data_asset_column.data_desc IS '数据说明'; +COMMENT ON COLUMN tbl_data_asset_column.rsv IS '备用字段'; +COMMENT ON COLUMN tbl_data_asset_column.data_unit IS '数据单位'; +COMMENT ON TABLE tbl_data_asset_column IS '数据资产基础元数据'; + +-- ---------------------------- +-- Table structure for tbl_data_asset_table +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_asset_table; +CREATE TABLE tbl_data_asset_table ( + asset_table_id int8 NOT NULL AUTO_INCREMENT , + source_id int8 NOT NULL, + table_name varchar(255) NOT NULL, + table_comment varchar(255) , + source varchar(255) , + rsv1 varchar(255) , + rsv2 varchar(255) , + table_create_time date +) +; +COMMENT ON COLUMN tbl_data_asset_table.asset_table_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_asset_table.source_id IS '数据源ID'; +COMMENT ON COLUMN tbl_data_asset_table.table_name IS '表名'; +COMMENT ON COLUMN tbl_data_asset_table.table_comment IS '表注释'; +COMMENT ON COLUMN tbl_data_asset_table.source IS '来源'; +COMMENT ON COLUMN tbl_data_asset_table.rsv1 IS '备用字段1'; +COMMENT ON COLUMN tbl_data_asset_table.rsv2 IS '备用字段2'; +COMMENT ON COLUMN tbl_data_asset_table.table_create_time IS '表创建时间'; +COMMENT ON TABLE tbl_data_asset_table IS '数据资产基础表'; + +-- ---------------------------- +-- Table structure for tbl_data_asset_table_column +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_asset_table_column; +CREATE TABLE tbl_data_asset_table_column ( + asset_table_column_id int8 NOT NULL AUTO_INCREMENT , + asset_table_id int8 NOT NULL, + column_name varchar(255) NOT NULL, + rsv varchar(255) +) +; +COMMENT ON COLUMN tbl_data_asset_table_column.asset_table_column_id IS '表ID'; +COMMENT ON COLUMN tbl_data_asset_table_column.asset_table_id IS '资产基础表ID'; +COMMENT ON COLUMN tbl_data_asset_table_column.column_name IS '资产元数据名称'; +COMMENT ON COLUMN tbl_data_asset_table_column.rsv IS '备用字段'; +COMMENT ON TABLE tbl_data_asset_table_column IS '数据资产基础表与元数据关联表'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_column +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_column; +CREATE TABLE tbl_data_metadata_column ( + column_id int8 NOT NULL AUTO_INCREMENT , + source_id int8 NOT NULL, + table_id int8 NOT NULL, + column_name varchar(255) NOT NULL, + column_comment varchar(255) , + column_key varchar(255) , + column_nullable varchar(255) , + column_position varchar(50) , + data_type varchar(255) , + data_length varchar(255) , + data_precision varchar(255) , + data_scale varchar(255) , + data_default varchar(255) , + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_metadata_column.column_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_metadata_column.source_id IS '所属数据源'; +COMMENT ON COLUMN tbl_data_metadata_column.table_id IS '所属数据表'; +COMMENT ON COLUMN tbl_data_metadata_column.column_name IS '字段名称'; +COMMENT ON COLUMN tbl_data_metadata_column.column_comment IS '字段注释'; +COMMENT ON COLUMN tbl_data_metadata_column.column_key IS '字段是否主键(0是 1否)'; +COMMENT ON COLUMN tbl_data_metadata_column.column_nullable IS '字段是否允许为空(0是 1否)'; +COMMENT ON COLUMN tbl_data_metadata_column.column_position IS '字段序号'; +COMMENT ON COLUMN tbl_data_metadata_column.data_type IS '数据类型'; +COMMENT ON COLUMN tbl_data_metadata_column.data_length IS '数据长度'; +COMMENT ON COLUMN tbl_data_metadata_column.data_precision IS '数据精度'; +COMMENT ON COLUMN tbl_data_metadata_column.data_scale IS '数据小数位'; +COMMENT ON COLUMN tbl_data_metadata_column.data_default IS '数据默认值'; +COMMENT ON COLUMN tbl_data_metadata_column.conn_id IS '连接ID'; +COMMENT ON TABLE tbl_data_metadata_column IS '【元数据信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_source +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_source; +CREATE TABLE tbl_data_metadata_source ( + source_id int8 NOT NULL AUTO_INCREMENT , + status char(1) NOT NULL, + create_by varchar(50) , + create_time timestamp(6), + create_dept varchar(50) , + update_by varchar(50) , + update_time timestamp(6), + remark varchar(1000) , + db_type char(1) NOT NULL, + source_name varchar(50) NOT NULL, + is_sync char(1) , + db_schema varchar(500) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0', + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_metadata_source.source_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_metadata_source.status IS '状态(0正常,1停用)'; +COMMENT ON COLUMN tbl_data_metadata_source.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_metadata_source.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_metadata_source.create_dept IS '创建人所属部门'; +COMMENT ON COLUMN tbl_data_metadata_source.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_metadata_source.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_metadata_source.remark IS '备注'; +COMMENT ON COLUMN tbl_data_metadata_source.db_type IS '数据源类型'; +COMMENT ON COLUMN tbl_data_metadata_source.source_name IS '数据源名称'; +COMMENT ON COLUMN tbl_data_metadata_source.is_sync IS '元数据同步(0已同步 1同步中 2未同步)'; +COMMENT ON COLUMN tbl_data_metadata_source.db_schema IS '数据源连接信息'; +COMMENT ON COLUMN tbl_data_metadata_source.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_metadata_source.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_metadata_source.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_metadata_source.conn_id IS '连接id'; +COMMENT ON TABLE tbl_data_metadata_source IS '【数据源信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_source_conn +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_source_conn; +CREATE TABLE tbl_data_metadata_source_conn ( + conn_id int8 NOT NULL AUTO_INCREMENT , + db_type char(1) NOT NULL, + host varchar(20) NOT NULL, + port int4 NOT NULL, + username varchar(50) NOT NULL, + password varchar(50) NOT NULL, + create_by varchar(50) , + create_time timestamp(6), + update_by varchar(50) , + update_time timestamp(6), + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0', + remark varchar(1000) , + sid varchar(255) , + init_source varchar(50) NOT NULL, + alias_name varchar(255) +) +; +COMMENT ON COLUMN tbl_data_metadata_source_conn.conn_id IS 'id'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.db_type IS '数据源类型'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.host IS 'ip地址'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.port IS '端口'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.username IS '用户名'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.password IS '密码'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.del_flag IS '【删除标志】0代表存在 1代表删除'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.init_source IS '初始数据源'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.alias_name IS '别名'; +COMMENT ON TABLE tbl_data_metadata_source_conn IS '数据源连接信息表'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_table +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_table; +CREATE TABLE tbl_data_metadata_table ( + table_id int8 NOT NULL AUTO_INCREMENT , + source_id int8 NOT NULL, + table_name varchar(255) NOT NULL, + table_comment varchar(255) , + create_table_by varchar(50) , + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_metadata_table.table_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_metadata_table.source_id IS '所属数据源'; +COMMENT ON COLUMN tbl_data_metadata_table.table_name IS '表名'; +COMMENT ON COLUMN tbl_data_metadata_table.table_comment IS '表注释'; +COMMENT ON COLUMN tbl_data_metadata_table.create_table_by IS '表创建人'; +COMMENT ON COLUMN tbl_data_metadata_table.conn_id IS '连接ID'; +COMMENT ON TABLE tbl_data_metadata_table IS '【数据库表信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_console_conn_num +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_console_conn_num; +CREATE TABLE tbl_data_sql_console_conn_num ( + conn_num int4 NOT NULL DEFAULT 0, + max_conn_num int4 NOT NULL, + alarm_conn_num int4 NOT NULL +) +; +COMMENT ON COLUMN tbl_data_sql_console_conn_num.conn_num IS '数据源连接数'; +COMMENT ON COLUMN tbl_data_sql_console_conn_num.max_conn_num IS '最大连接数'; +COMMENT ON COLUMN tbl_data_sql_console_conn_num.alarm_conn_num IS '告警连接数'; +COMMENT ON TABLE tbl_data_sql_console_conn_num IS '数据源连接数'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_console_export +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_console_export; +CREATE TABLE tbl_data_sql_console_export ( + export_id int8 NOT NULL AUTO_INCREMENT , + export_name varchar(200) NOT NULL, + sql_text varchar(2000) , + status char(1) NOT NULL, + fail_reason varchar(1000) , + user_id int8 NOT NULL, + create_by varchar(50) , + create_time timestamp(0), + update_by varchar(50) , + update_time timestamp(0) DEFAULT now(), + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0' +) +; +COMMENT ON COLUMN tbl_data_sql_console_export.export_id IS '导出文件ID'; +COMMENT ON COLUMN tbl_data_sql_console_export.export_name IS '导出文件名'; +COMMENT ON COLUMN tbl_data_sql_console_export.sql_text IS 'SQL文本'; +COMMENT ON COLUMN tbl_data_sql_console_export.status IS '状态:1导出中,2导出完成,3导出失败,4已取消'; +COMMENT ON COLUMN tbl_data_sql_console_export.fail_reason IS '失败原因'; +COMMENT ON COLUMN tbl_data_sql_console_export.user_id IS '用户ID'; +COMMENT ON COLUMN tbl_data_sql_console_export.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_sql_console_export.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_sql_console_export.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_sql_console_export.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_sql_console_export.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_sql_console_export.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_sql_console_export.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON TABLE tbl_data_sql_console_export IS 'SQL查询导出记录'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_console_file +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_console_file; +CREATE TABLE tbl_data_sql_console_file ( + file_id int8 NOT NULL AUTO_INCREMENT , + name varchar(255) NOT NULL, + source_id int8 NOT NULL, + sql_text text , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6), + del_flag char(1) DEFAULT '0', + user_id int8 NOT NULL, + pid int8 NOT NULL DEFAULT 0, + type char(1) NOT NULL DEFAULT 1, + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_sql_console_file.file_id IS '【文件ID】'; +COMMENT ON COLUMN tbl_data_sql_console_file.name IS '【文件名】'; +COMMENT ON COLUMN tbl_data_sql_console_file.source_id IS '【数据元ID】'; +COMMENT ON COLUMN tbl_data_sql_console_file.sql_text IS '【SQL语句】'; +COMMENT ON COLUMN tbl_data_sql_console_file.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_data_sql_console_file.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_data_sql_console_file.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_data_sql_console_file.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_data_sql_console_file.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_data_sql_console_file.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_data_sql_console_file.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_sql_console_file.user_id IS '【用户id】'; +COMMENT ON COLUMN tbl_data_sql_console_file.pid IS '【父id】'; +COMMENT ON COLUMN tbl_data_sql_console_file.type IS '【类型】0文件夹 1文件'; +COMMENT ON COLUMN tbl_data_sql_console_file.conn_id IS '数据源连接ID'; +COMMENT ON TABLE tbl_data_sql_console_file IS '【SQL工作台文件】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_data_apply +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_data_apply; +CREATE TABLE tbl_data_sql_data_apply ( + apply_id int8 NOT NULL AUTO_INCREMENT , + user_id int8 NOT NULL, + data_check_strictly char(1) DEFAULT '1', + end_time date NOT NULL, + explain text , + status char(1) DEFAULT '0', + reviewer varchar(255) , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + del_flag varchar(1) DEFAULT '0', + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) , + reason varchar(255) , + user_name varchar(255) , + review_time timestamp(0), + apply_no varchar(32) +) +; +COMMENT ON COLUMN tbl_data_sql_data_apply.apply_id IS '【申请id】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.user_id IS '【用户id】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.data_check_strictly IS '【数据树选择项是否关联显示】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.end_time IS '【到期时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.explain IS '【申请说明】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.status IS '【审批状态】0 待审批 1审批通过 2审批拒绝'; +COMMENT ON COLUMN tbl_data_sql_data_apply.reviewer IS '【审批人】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_sql_data_apply.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.remark IS '【备注】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.reason IS '【拒绝原因】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.user_name IS '【用户名】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.review_time IS '【审批时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.apply_no IS '申请单号'; +COMMENT ON TABLE tbl_data_sql_data_apply IS '【SQL元数据权限申请表】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_data_auth +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_data_auth; +CREATE TABLE tbl_data_sql_data_auth ( + object_id int8 NOT NULL, + user_id int8 NOT NULL, + object_type varchar(10) NOT NULL, + apply_id int8 NOT NULL, + par_id int8, + object_name varchar(255) +) +; +COMMENT ON COLUMN tbl_data_sql_data_auth.object_id IS '目标表主键ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.user_id IS '用户ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.object_type IS '目标表类型'; +COMMENT ON COLUMN tbl_data_sql_data_auth.apply_id IS '权限申请表ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.par_id IS '父ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.object_name IS '目标表名称'; +COMMENT ON TABLE tbl_data_sql_data_auth IS '【元数据授权信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_log; +CREATE TABLE tbl_data_sql_log ( + sql_log_id int8 NOT NULL AUTO_INCREMENT , + db_type char(2) , + db_name varchar(255) , + sql_text text , + status char(1) , + fail_reason text , + start_time timestamp(6), + end_time timestamp(6), + total_times int8 +) +; +COMMENT ON COLUMN tbl_data_sql_log.sql_log_id IS 'SQL日志id'; +COMMENT ON COLUMN tbl_data_sql_log.db_type IS '数据库类型'; +COMMENT ON COLUMN tbl_data_sql_log.db_name IS '数据库名称'; +COMMENT ON COLUMN tbl_data_sql_log.sql_text IS 'SQL语句'; +COMMENT ON COLUMN tbl_data_sql_log.status IS '状态:1成功 2失败'; +COMMENT ON COLUMN tbl_data_sql_log.fail_reason IS '失败原因'; +COMMENT ON COLUMN tbl_data_sql_log.start_time IS 'SQL执行开始时间'; +COMMENT ON COLUMN tbl_data_sql_log.end_time IS 'SQL执行结束时间'; +COMMENT ON COLUMN tbl_data_sql_log.total_times IS 'SQL执行总耗时'; +COMMENT ON TABLE tbl_data_sql_log IS 'SQL执行日志'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_info +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_info; +CREATE TABLE tbl_docker_apply_info ( + apply_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_server_id int8 NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + apply_desc varchar(1000) NOT NULL, + lab_title varchar(100) NOT NULL, + service_type varchar(100) NOT NULL, + docker_image_name varchar(200) NOT NULL, + usage_time varchar(10) NOT NULL, + usage_time_unit varchar(10) NOT NULL, + start_date timestamp(0), + end_date timestamp(0), + delay_times varchar(2) , + cpu_limits varchar(10) NOT NULL, + cpu_seq varchar(10) , + memory_limits varchar(10) NOT NULL, + disc_limits varchar(10) NOT NULL, + remarks varchar(1000) , + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + release_flag varchar(1) , + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_info.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_info.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_info.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_info.docker_server_id IS '【 服务器id】'; +COMMENT ON COLUMN tbl_docker_apply_info.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_apply_info.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_apply_info.apply_desc IS '【 申请原因】'; +COMMENT ON COLUMN tbl_docker_apply_info.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_apply_info.service_type IS '【 服务类型】'; +COMMENT ON COLUMN tbl_docker_apply_info.docker_image_name IS '【 使用镜像】'; +COMMENT ON COLUMN tbl_docker_apply_info.usage_time IS '【 申请时效】'; +COMMENT ON COLUMN tbl_docker_apply_info.usage_time_unit IS '【 时间单位】'; +COMMENT ON COLUMN tbl_docker_apply_info.start_date IS '【开始时间】系统计算,到小时吧'; +COMMENT ON COLUMN tbl_docker_apply_info.end_date IS '【结束时间】系统计算,到小时吧'; +COMMENT ON COLUMN tbl_docker_apply_info.delay_times IS '【延期次数】系统计算'; +COMMENT ON COLUMN tbl_docker_apply_info.cpu_limits IS '【 CPU数量】'; +COMMENT ON COLUMN tbl_docker_apply_info.cpu_seq IS '【cpu序号】绝对分配时固定内核,比如只能用0,1内核'; +COMMENT ON COLUMN tbl_docker_apply_info.memory_limits IS '【 内存大小】'; +COMMENT ON COLUMN tbl_docker_apply_info.disc_limits IS '【 磁盘大小】'; +COMMENT ON COLUMN tbl_docker_apply_info.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_apply_info.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_info.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_info.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_info.release_flag IS '【是否发布】'; +COMMENT ON COLUMN tbl_docker_apply_info.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_apply_info.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_info.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_info.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_info.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_info.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_info.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_info.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_info.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_info.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_info.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_info IS '【 容器申请】'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_lib +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_lib; +CREATE TABLE tbl_docker_apply_lib ( + apply_lib_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_id int8 NOT NULL, + lib_type varchar(20) NOT NULL, + lib_desc text , + file_id int8 NOT NULL, + data_source_type varchar(1) NOT NULL, + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + plugin_names varchar(3000) , + handle_result varchar(2000) , + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_lib.apply_lib_id IS '【申请组件id】'; +COMMENT ON COLUMN tbl_docker_apply_lib.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_lib.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.lib_type IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.lib_desc IS '【内容说明】'; +COMMENT ON COLUMN tbl_docker_apply_lib.file_id IS '【 文件id】'; +COMMENT ON COLUMN tbl_docker_apply_lib.data_source_type IS '【数据来源】1系统提供的,2用户自己的'; +COMMENT ON COLUMN tbl_docker_apply_lib.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_lib.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_lib.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_lib.plugin_names IS '【组件真实名】打算记录一下里面的组件真实name'; +COMMENT ON COLUMN tbl_docker_apply_lib.handle_result IS '【处理结果】组件上传和安装具体结果描述'; +COMMENT ON COLUMN tbl_docker_apply_lib.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_apply_lib.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_lib.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_lib.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_lib.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_lib.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_lib IS '【容器使用自传组件】包含组件和数据'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_review +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_review; +CREATE TABLE tbl_docker_apply_review ( + review_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_remark varchar(1000) NOT NULL, + apply_id int8 NOT NULL, + lab_title varchar(100) NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + remarks varchar(1000) , + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_review.review_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_review.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_review.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_remark IS '【 申请原因】'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_id IS '【 实验室编号】'; +COMMENT ON COLUMN tbl_docker_apply_review.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_apply_review.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_apply_review.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_review.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_review.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_review.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_review.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_review.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_review.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_review.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_review.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_review.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_review.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_review IS '【 数据注入申请审核表】'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_review_dtl +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_review_dtl; +CREATE TABLE tbl_docker_apply_review_dtl ( + review_dtl_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + review_id int8 NOT NULL, + lib_type varchar(20) NOT NULL, + lib_desc text , + file_id int8 NOT NULL, + data_source_type varchar(1) NOT NULL, + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_dtl_id IS '【申请明细id】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.lib_type IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.lib_desc IS '【内容说明】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.file_id IS '【 文件id】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.data_source_type IS '【数据来源】1系统提供的,2用户自己的'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_review_dtl IS '【数据注入申请明细】包含组件和数据'; + +-- ---------------------------- +-- Table structure for tbl_docker_client_info +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_client_info; +CREATE TABLE tbl_docker_client_info ( + docker_server_id int4 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_server_name varchar(100) NOT NULL, + docker_server_ip varchar(100) NOT NULL, + docker_server_port varchar(100) , + docker_server_username varchar(100) , + docker_server_password varchar(100) , + cpu_limits varchar(10) , + memory_limits varchar(10) , + disc_limits varchar(10) , + used_cpu_limits varchar(10) , + used_memory_limits varchar(10) , + used_disc_limits varchar(10) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_id IS '【 服务器主键ID】'; +COMMENT ON COLUMN tbl_docker_client_info.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_client_info.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_name IS '【 服务器名称】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_ip IS '【 服务器IP】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_port IS '【 服务器port】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_username IS '【 服务器账户】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_password IS '【 服务器密码】'; +COMMENT ON COLUMN tbl_docker_client_info.cpu_limits IS '【 CPU数量】'; +COMMENT ON COLUMN tbl_docker_client_info.memory_limits IS '【 内存大小】'; +COMMENT ON COLUMN tbl_docker_client_info.disc_limits IS '【 磁盘大小】'; +COMMENT ON COLUMN tbl_docker_client_info.used_cpu_limits IS '【 使用CPU大小】'; +COMMENT ON COLUMN tbl_docker_client_info.used_memory_limits IS '【 使用内存大小】'; +COMMENT ON COLUMN tbl_docker_client_info.used_disc_limits IS '【 使用磁盘大小】'; +COMMENT ON COLUMN tbl_docker_client_info.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_client_info.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_client_info.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_client_info.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_client_info.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_client_info.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_client_info.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_client_info.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_client_info.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_client_info IS '【 服务器清单】'; + +-- ---------------------------- +-- Table structure for tbl_docker_config_hardware +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_config_hardware; +CREATE TABLE tbl_docker_config_hardware ( + config_id int8 NOT NULL AUTO_INCREMENT , + cpu int4 NOT NULL, + core_num int4 NOT NULL, + disk int4 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + order_num int4 DEFAULT 0, + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_config_hardware.config_id IS '【硬件配置id】'; +COMMENT ON COLUMN tbl_docker_config_hardware.cpu IS '【cpu大小】,单位G'; +COMMENT ON COLUMN tbl_docker_config_hardware.core_num IS '【内存】单位G'; +COMMENT ON COLUMN tbl_docker_config_hardware.disk IS '【磁盘大小】单位G'; +COMMENT ON COLUMN tbl_docker_config_hardware.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_config_hardware.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_config_hardware.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_config_hardware.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_config_hardware.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_config_hardware.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_config_hardware.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_config_hardware.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_config_hardware.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_config_hardware.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_config_hardware.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_config_hardware IS '【实验室硬件配置信息表】'; + +-- ---------------------------- +-- Table structure for tbl_docker_download_apply +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_download_apply; +CREATE TABLE tbl_docker_download_apply ( + download_apply_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_id int8 NOT NULL, + lab_title varchar(100) NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + apply_desc varchar(1000) NOT NULL, + file_name varchar(200) , + file_size varchar(20) , + file_last_time varchar(50) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_download_apply.download_apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_download_apply.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_id IS '【 关联主键ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_desc IS '【 申请原因】'; +COMMENT ON COLUMN tbl_docker_download_apply.file_name IS '【文件名】'; +COMMENT ON COLUMN tbl_docker_download_apply.file_size IS '【文件大小】'; +COMMENT ON COLUMN tbl_docker_download_apply.file_last_time IS '【文件更新时间】防止修改,最后下载的时候要校验'; +COMMENT ON COLUMN tbl_docker_download_apply.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_download_apply.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_download_apply.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_download_apply.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_download_apply.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_download_apply.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_download_apply.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_download_apply.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_download_apply.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_download_apply.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_download_apply.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_download_apply.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_download_apply.rsv3 IS '【备用字段2】'; +COMMENT ON TABLE tbl_docker_download_apply IS '【 下载文件申请】容器内的文件下载'; + +-- ---------------------------- +-- Table structure for tbl_docker_images +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_images; +CREATE TABLE tbl_docker_images ( + docker_image_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_image_name varchar(200) NOT NULL, + service_type varchar(100) NOT NULL, + docker_image_desc varchar(2000) NOT NULL, + file_id int8, + remarks varchar(1000) , + order_num int4 DEFAULT 0, + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_images.docker_image_id IS '【 镜像主键id】'; +COMMENT ON COLUMN tbl_docker_images.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_images.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_images.docker_image_name IS '【 镜像名称】'; +COMMENT ON COLUMN tbl_docker_images.service_type IS '【 服务类型】镜像里是可以有多个服务的'; +COMMENT ON COLUMN tbl_docker_images.docker_image_desc IS '【 镜像说明】'; +COMMENT ON COLUMN tbl_docker_images.file_id IS '【 组件id】'; +COMMENT ON COLUMN tbl_docker_images.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_images.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_images.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_images.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_images.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_images.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_images.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_images.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_images.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_images.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_images IS '【 容器可用镜像】'; + +-- ---------------------------- +-- Table structure for tbl_docker_port_list +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_port_list; +CREATE TABLE tbl_docker_port_list ( + docker_port_id int8 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_server_id int8 NOT NULL, + docker_server_port varchar(10) , + url_path varchar(100) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_port_list.docker_port_id IS '【 端口主键ID】'; +COMMENT ON COLUMN tbl_docker_port_list.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_port_list.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_port_list.docker_server_id IS '【 服务器id】'; +COMMENT ON COLUMN tbl_docker_port_list.docker_server_port IS '【端口号】'; +COMMENT ON COLUMN tbl_docker_port_list.url_path IS '【映射路径】和端口对应的域名'; +COMMENT ON COLUMN tbl_docker_port_list.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_port_list.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_port_list.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_port_list.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_port_list.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_port_list.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_port_list.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_port_list.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_port_list.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_port_list IS '【 服务器端口】把可用端口配置在这里,端口是固定的几个'; + +-- ---------------------------- +-- Table structure for tbl_docker_portainer_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_portainer_user; +CREATE TABLE tbl_docker_portainer_user ( + docker_account_id int8 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + api_http varchar(100) NOT NULL, + api_key varchar(500) , + admin_username varchar(32) , + admin_password varchar(100) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_portainer_user.docker_account_id IS '【 账户主键id】'; +COMMENT ON COLUMN tbl_docker_portainer_user.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_portainer_user.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_portainer_user.api_http IS '【 API地址】'; +COMMENT ON COLUMN tbl_docker_portainer_user.api_key IS '【 API密钥】'; +COMMENT ON COLUMN tbl_docker_portainer_user.admin_username IS '【 账户】'; +COMMENT ON COLUMN tbl_docker_portainer_user.admin_password IS '【 密码】'; +COMMENT ON COLUMN tbl_docker_portainer_user.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_portainer_user.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_portainer_user.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_portainer_user.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_portainer_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_portainer_user.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_portainer_user.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_portainer_user.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_portainer_user.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_portainer_user IS '【portainer管理账户信息】'; + +-- ---------------------------- +-- Table structure for tbl_docker_vpn +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_vpn; +CREATE TABLE tbl_docker_vpn ( + vpn_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + vpn_ip varchar(150) , + vpn_username varchar(100) , + vpn_password varchar(100) , + fortress_ip varchar(200) , + fortress_username varchar(100) , + fortress_password varchar(100) , + apply_id int8, + lab_title varchar(100) , + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + start_date timestamp(0), + end_date timestamp(0), + send_flag varchar(1) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_vpn.vpn_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_docker_vpn.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_docker_vpn.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_docker_vpn.vpn_ip IS '【VPN地址】'; +COMMENT ON COLUMN tbl_docker_vpn.vpn_username IS '【账户名】'; +COMMENT ON COLUMN tbl_docker_vpn.vpn_password IS '【密码】'; +COMMENT ON COLUMN tbl_docker_vpn.fortress_ip IS '【堡垒机地址】'; +COMMENT ON COLUMN tbl_docker_vpn.fortress_username IS '【堡垒机账户】'; +COMMENT ON COLUMN tbl_docker_vpn.fortress_password IS '【堡垒机密码】'; +COMMENT ON COLUMN tbl_docker_vpn.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_vpn.lab_title IS '【实验室名称】'; +COMMENT ON COLUMN tbl_docker_vpn.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_vpn.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_vpn.start_date IS '【生效时间】'; +COMMENT ON COLUMN tbl_docker_vpn.end_date IS '【到期时间】'; +COMMENT ON COLUMN tbl_docker_vpn.send_flag IS '【推送标志】'; +COMMENT ON COLUMN tbl_docker_vpn.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_docker_vpn.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_docker_vpn.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_docker_vpn.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_vpn.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_docker_vpn.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_docker_vpn.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_docker_vpn.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_docker_vpn.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_vpn.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_vpn.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_vpn IS '【VPN用户表】'; + +-- ---------------------------- +-- Table structure for tbl_docker_with_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_with_user; +CREATE TABLE tbl_docker_with_user ( + apply_id int8 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + lab_title varchar(100) NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + docker_container_id varchar(100) NOT NULL, + docker_server_id int8 NOT NULL, + remarks varchar(200) , + order_num int4 DEFAULT 0, + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_with_user.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_with_user.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_with_user.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_with_user.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_with_user.apply_user_id IS '【 用户id】'; +COMMENT ON COLUMN tbl_docker_with_user.apply_user_name IS '【 用户】'; +COMMENT ON COLUMN tbl_docker_with_user.docker_container_id IS '【 容器id】'; +COMMENT ON COLUMN tbl_docker_with_user.docker_server_id IS '【 服务器id】'; +COMMENT ON COLUMN tbl_docker_with_user.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_with_user.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_with_user.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_with_user.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_with_user.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_with_user.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_with_user.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_with_user.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_with_user.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_with_user.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_with_user.rsv3 IS '【备用字段2】'; +COMMENT ON TABLE tbl_docker_with_user IS '【 用户与容器信息】'; + +-- ---------------------------- +-- Table structure for tbl_docker_with_user_account +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_with_user_account; +CREATE TABLE tbl_docker_with_user_account ( + account_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_id int8 NOT NULL, + service_type varchar(50) NOT NULL, + login_url varchar(200) NOT NULL, + login_username varchar(100) , + login_password varchar(100) , + docker_port_id int8 NOT NULL, + remarks varchar(200) , + order_num int4 DEFAULT 0, + bus_status varchar(2) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_with_user_account.account_id IS '【 账户主键id】'; +COMMENT ON COLUMN tbl_docker_with_user_account.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_with_user_account.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.service_type IS '【 服务类型】'; +COMMENT ON COLUMN tbl_docker_with_user_account.login_url IS '【 访问地址】'; +COMMENT ON COLUMN tbl_docker_with_user_account.login_username IS '【 账户】'; +COMMENT ON COLUMN tbl_docker_with_user_account.login_password IS '【 密码】'; +COMMENT ON COLUMN tbl_docker_with_user_account.docker_port_id IS '【 端口主键ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_with_user_account.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_with_user_account.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_with_user_account.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_with_user_account.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_with_user_account.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_with_user_account.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_with_user_account.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_with_user_account IS '【 容器用户账户信息】设计成允许多个服务'; + +-- ---------------------------- +-- Table structure for tbl_org_api_auth +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_api_auth; +CREATE TABLE tbl_org_api_auth ( + id int8 NOT NULL AUTO_INCREMENT , + org_no varchar(255) NOT NULL, + api_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_org_api_auth.id IS '【ID】'; +COMMENT ON COLUMN tbl_org_api_auth.org_no IS '【机构号】'; +COMMENT ON COLUMN tbl_org_api_auth.api_id IS '【接口API ID】'; +COMMENT ON TABLE tbl_org_api_auth IS '【机构接口权限表】'; + +-- ---------------------------- +-- Table structure for tbl_org_config +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_config; +CREATE TABLE tbl_org_config ( + config_id int8 NOT NULL AUTO_INCREMENT , + org_no varchar(64) NOT NULL, + config_key varchar(64) , + config_desc varchar(500) , + config_value varchar(50) , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6), + del_flag char(1) NOT NULL DEFAULT '0', + status char(1) NOT NULL DEFAULT '0' +) +; +COMMENT ON COLUMN tbl_org_config.config_id IS 'ID'; +COMMENT ON COLUMN tbl_org_config.org_no IS '机构号'; +COMMENT ON COLUMN tbl_org_config.config_key IS '配置项'; +COMMENT ON COLUMN tbl_org_config.config_desc IS '配置名称'; +COMMENT ON COLUMN tbl_org_config.config_value IS '配置值'; +COMMENT ON COLUMN tbl_org_config.version_num IS '版本号'; +COMMENT ON COLUMN tbl_org_config.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_org_config.create_by IS '创建者'; +COMMENT ON COLUMN tbl_org_config.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_org_config.update_by IS '更新者'; +COMMENT ON COLUMN tbl_org_config.update_time IS '更新时间'; +COMMENT ON COLUMN tbl_org_config.del_flag IS '【删除标志】0代表存在 1代表删除'; +COMMENT ON COLUMN tbl_org_config.status IS '【状态】0正常 1停用'; +COMMENT ON TABLE tbl_org_config IS '【机构配置表】'; + +-- ---------------------------- +-- Table structure for tbl_org_info +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_info; +CREATE TABLE tbl_org_info ( + org_no varchar(64) NOT NULL, + org_name varchar(255) NOT NULL, + org_type varchar(2) NOT NULL, + org_desc varchar(255) , + salt varchar(255) NOT NULL, + encrypt varchar(1024) NOT NULL, + start_time date NOT NULL, + end_time date NOT NULL, + status char(1) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + create_by varchar(64) , + create_by_name varchar(100) , + create_time timestamp(0), + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + del_flag char(1) DEFAULT '0', + ip varchar(64) , + contract_tel varchar(100) , + data_begin date, + data_end date, + member_id varchar(64) +) +; +COMMENT ON COLUMN tbl_org_info.org_no IS '【机构号】'; +COMMENT ON COLUMN tbl_org_info.org_name IS '【机构名称】'; +COMMENT ON COLUMN tbl_org_info.org_type IS '【机构类型】'; +COMMENT ON COLUMN tbl_org_info.org_desc IS '【机构描述】'; +COMMENT ON COLUMN tbl_org_info.salt IS '【加盐】'; +COMMENT ON COLUMN tbl_org_info.encrypt IS '【加密】'; +COMMENT ON COLUMN tbl_org_info.start_time IS '【生效时间】'; +COMMENT ON COLUMN tbl_org_info.end_time IS '【到期时间】'; +COMMENT ON COLUMN tbl_org_info.status IS '【状态】0正常 1停用 2到期'; +COMMENT ON COLUMN tbl_org_info.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_org_info.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_org_info.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_org_info.create_by_name IS '【创建人】'; +COMMENT ON COLUMN tbl_org_info.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_org_info.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_org_info.update_by_name IS '【更新人】'; +COMMENT ON COLUMN tbl_org_info.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_org_info.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_org_info.ip IS '【ip白名单】'; +COMMENT ON COLUMN tbl_org_info.contract_tel IS '【联系人电话】'; +COMMENT ON COLUMN tbl_org_info.data_begin IS '【数据起始时间】'; +COMMENT ON COLUMN tbl_org_info.data_end IS '【数据结束时间】'; +COMMENT ON COLUMN tbl_org_info.member_id IS '【用户ID】'; +COMMENT ON TABLE tbl_org_info IS '【机构管理信息表】'; + +-- ---------------------------- +-- Table structure for tbl_org_statistics +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_statistics; +CREATE TABLE tbl_org_statistics ( + id int8 NOT NULL AUTO_INCREMENT , + org_no varchar(64) NOT NULL, + org_name varchar(255) , + api_id int4, + success_total int4, + fail_total int4, + api_name varchar(255) , + create_time timestamp(0), + create_by varchar(100) , + update_time timestamp(0), + update_by varchar(100) , + version_num int4 DEFAULT 0, + rec_token varchar(100) DEFAULT '1', + del_flag char(1) +) +; +COMMENT ON COLUMN tbl_org_statistics.org_no IS '机构号'; +COMMENT ON COLUMN tbl_org_statistics.org_name IS '机构名称'; +COMMENT ON COLUMN tbl_org_statistics.api_id IS 'API ID'; +COMMENT ON COLUMN tbl_org_statistics.success_total IS '成功次数'; +COMMENT ON COLUMN tbl_org_statistics.fail_total IS '失败次数'; +COMMENT ON COLUMN tbl_org_statistics.api_name IS '接口名称'; +COMMENT ON COLUMN tbl_org_statistics.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_org_statistics.create_by IS '创建人'; +COMMENT ON COLUMN tbl_org_statistics.update_time IS '更新时间'; +COMMENT ON COLUMN tbl_org_statistics.update_by IS '更新人'; +COMMENT ON COLUMN tbl_org_statistics.version_num IS '版本号'; +COMMENT ON COLUMN tbl_org_statistics.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_org_statistics.del_flag IS '是否删除【0否,1是】'; +COMMENT ON TABLE tbl_org_statistics IS '接口调用次数统计'; + +-- ---------------------------- +-- Table structure for tbl_portal_content +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_content; +CREATE TABLE tbl_portal_content ( + content_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + content_title varchar(200) , + content_text text , + content_type varchar(2) , + show_type varchar(2) , + remarks varchar(1000) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + sort int4, + show_index char(1) , + subtitle varchar(50) , + img_url varchar(255) +) +; +COMMENT ON COLUMN tbl_portal_content.content_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_portal_content.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_portal_content.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_portal_content.content_title IS '【标题】'; +COMMENT ON COLUMN tbl_portal_content.content_text IS '【内容】'; +COMMENT ON COLUMN tbl_portal_content.content_type IS '【类型】'; +COMMENT ON COLUMN tbl_portal_content.show_type IS '【展示类型】'; +COMMENT ON COLUMN tbl_portal_content.remarks IS '【文件备注】'; +COMMENT ON COLUMN tbl_portal_content.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_portal_content.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_portal_content.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_portal_content.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_portal_content.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_portal_content.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_portal_content.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_portal_content.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_portal_content.sort IS '【排序】'; +COMMENT ON COLUMN tbl_portal_content.show_index IS '【首页播报】0展示 1不展示'; +COMMENT ON COLUMN tbl_portal_content.subtitle IS '副标题'; +COMMENT ON COLUMN tbl_portal_content.img_url IS '图片地址'; +COMMENT ON TABLE tbl_portal_content IS '【门户内容表】'; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2023 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2023; +CREATE TABLE tbl_portal_logininfor_2023 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2024; +CREATE TABLE tbl_portal_logininfor_2024 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2025; +CREATE TABLE tbl_portal_logininfor_2025 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2026; +CREATE TABLE tbl_portal_logininfor_2026 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2027; +CREATE TABLE tbl_portal_logininfor_2027 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2028; +CREATE TABLE tbl_portal_logininfor_2028 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2029; +CREATE TABLE tbl_portal_logininfor_2029 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2030 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2030; +CREATE TABLE tbl_portal_logininfor_2030 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2031 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2031; +CREATE TABLE tbl_portal_logininfor_2031 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2032 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2032; +CREATE TABLE tbl_portal_logininfor_2032 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_copy1 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_copy1; +CREATE TABLE tbl_portal_logininfor_copy1 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.info_id IS '【访问ID】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.ipaddr IS '【登录IP地址】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.login_location IS '【登录地点】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.browser IS '【浏览器类型】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.os IS '【操作系统】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.status IS '【登录状态】0成功 1失败'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.msg IS '【提示消息】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.login_time IS '【访问时间】'; +COMMENT ON TABLE tbl_portal_logininfor_copy1 IS '【门户登录日志】'; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2023 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2023; +CREATE TABLE tbl_portal_oper_log_2023 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2024; +CREATE TABLE tbl_portal_oper_log_2024 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2025; +CREATE TABLE tbl_portal_oper_log_2025 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2026; +CREATE TABLE tbl_portal_oper_log_2026 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2027; +CREATE TABLE tbl_portal_oper_log_2027 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2028; +CREATE TABLE tbl_portal_oper_log_2028 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2029; +CREATE TABLE tbl_portal_oper_log_2029 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2030 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2030; +CREATE TABLE tbl_portal_oper_log_2030 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2031 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2031; +CREATE TABLE tbl_portal_oper_log_2031 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2032 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2032; +CREATE TABLE tbl_portal_oper_log_2032 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_copy1 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_copy1; +CREATE TABLE tbl_portal_oper_log_copy1 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_id IS '【日志主键】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.title IS '【模块标题】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.business_type IS '【业务类型】0其它 1新增 2修改 3删除'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.method IS '【方法名称】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.request_method IS '【请求方式】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.operator_type IS '【操作类别】0其它 1后台用户 2手机端用户'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_name IS '【操作人员】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_url IS '【请求URL】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_ip IS '【主机地址】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_location IS '【操作地点】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_param IS '【请求参数】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.json_result IS '【返回参数】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.status IS '【操作状态】0正常 1异常'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.error_msg IS '【错误消息】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_time IS '【操作时间】'; +COMMENT ON TABLE tbl_portal_oper_log_copy1 IS '【门户操作日志】'; + +-- ---------------------------- +-- Table structure for tbl_portal_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_user; +CREATE TABLE tbl_portal_user ( + user_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dept_id int8, + user_name varchar(30) NOT NULL, + nick_name varchar(30) NOT NULL, + user_type varchar(2) , + email varchar(200) , + phonenumber varchar(200) , + sex char(1) , + avatar varchar(100) , + password varchar(100) , + enterprise_name varchar(500) , + industry_category varchar(3) , + social_credit_code varchar(50) , + enterprise_industry varchar(500) , + enterprise_address varchar(500) , + status char(1) , + del_flag char(1) DEFAULT '0', + login_ip varchar(128) , + login_date timestamp(6), + is_locked char(1) , + login_error_count int4, + last_login_error_time timestamp(6), + remark varchar(500) , + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + first_flag varchar +) +; +COMMENT ON COLUMN tbl_portal_user.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_portal_user.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_portal_user.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_portal_user.dept_id IS '【所属机构】'; +COMMENT ON COLUMN tbl_portal_user.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_portal_user.nick_name IS '【用户昵称】'; +COMMENT ON COLUMN tbl_portal_user.user_type IS '【用户类型】00系统用户'; +COMMENT ON COLUMN tbl_portal_user.email IS '【用户邮箱】'; +COMMENT ON COLUMN tbl_portal_user.phonenumber IS '【手机号码】'; +COMMENT ON COLUMN tbl_portal_user.sex IS '【用户性别】0男 1女 2未知'; +COMMENT ON COLUMN tbl_portal_user.avatar IS '【头像地址】'; +COMMENT ON COLUMN tbl_portal_user.password IS '【密码】'; +COMMENT ON COLUMN tbl_portal_user.enterprise_name IS '【企业名称】'; +COMMENT ON COLUMN tbl_portal_user.industry_category IS '【行业类别】'; +COMMENT ON COLUMN tbl_portal_user.social_credit_code IS '【社会统一信用代码】'; +COMMENT ON COLUMN tbl_portal_user.enterprise_industry IS '【企业行业】'; +COMMENT ON COLUMN tbl_portal_user.enterprise_address IS '【enterprise_address】'; +COMMENT ON COLUMN tbl_portal_user.status IS '【帐号状态】0正常 1停用'; +COMMENT ON COLUMN tbl_portal_user.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_portal_user.login_ip IS '【最后登录IP】'; +COMMENT ON COLUMN tbl_portal_user.login_date IS '【最后登录时间】'; +COMMENT ON COLUMN tbl_portal_user.is_locked IS '【锁定状态】'; +COMMENT ON COLUMN tbl_portal_user.login_error_count IS '【登陆错误次数】'; +COMMENT ON COLUMN tbl_portal_user.last_login_error_time IS '【登陆错误时间】'; +COMMENT ON COLUMN tbl_portal_user.remark IS '【备注】'; +COMMENT ON COLUMN tbl_portal_user.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_portal_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_portal_user.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_portal_user.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_portal_user.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_portal_user.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_portal_user.first_flag IS '【首次登录标记】null或0表示首次,1非首次'; +COMMENT ON TABLE tbl_portal_user IS '【门户用户信息表】'; + +-- ---------------------------- +-- Table structure for tbl_portal_user_msg +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_user_msg; +CREATE TABLE tbl_portal_user_msg ( + msg_id int8 NOT NULL AUTO_INCREMENT , + user_id int8 NOT NULL, + nike_name varchar(100) , + msg_title varchar(200) , + msg_text text , + msg_type varchar(2) , + msg_status varchar(1) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_user_msg.msg_id IS '【主键id】'; +COMMENT ON COLUMN tbl_portal_user_msg.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_portal_user_msg.nike_name IS '【用户姓名】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_title IS '【消息标题】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_text IS '【消息内容】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_type IS '【消息类型】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_status IS '【消息状态】'; +COMMENT ON COLUMN tbl_portal_user_msg.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_portal_user_msg.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_portal_user_msg.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_portal_user_msg.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_portal_user_msg.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_portal_user_msg.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_portal_user_msg.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_portal_user_msg IS '【用户消息表】'; + +-- ---------------------------- +-- Table structure for tbl_prd_base_line +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_base_line; +CREATE TABLE tbl_prd_base_line ( + line_name varchar(200) NOT NULL, + line_code varchar(6) NOT NULL, + line_no varchar(5) +) +; +COMMENT ON COLUMN tbl_prd_base_line.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_base_line.line_code IS '6位线路编码'; +COMMENT ON COLUMN tbl_prd_base_line.line_no IS '五位线路编码'; + +-- ---------------------------- +-- Table structure for tbl_prd_base_line_station +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_base_line_station; +CREATE TABLE tbl_prd_base_line_station ( + line_code varchar(10) NOT NULL, + line_name varchar(200) NOT NULL, + up varchar(1) NOT NULL, + levels int4 NOT NULL, + level_name varchar(200) NOT NULL, + line_no varchar(10) +) +; +COMMENT ON COLUMN tbl_prd_base_line_station.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_base_line_station.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_base_line_station.up IS '方向'; +COMMENT ON COLUMN tbl_prd_base_line_station.levels IS '站序'; +COMMENT ON COLUMN tbl_prd_base_line_station.level_name IS '站点名称'; +COMMENT ON COLUMN tbl_prd_base_line_station.line_no IS '五位线路编码'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_metric_day; +CREATE TABLE tbl_prd_line_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + line_status varchar(10) NOT NULL, + company_code varchar(100) NOT NULL, + company_name varchar(100) NOT NULL, + service_type varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_status IS '线路状态 0表示暂停营运、1表示启用、2表示撤销'; +COMMENT ON COLUMN tbl_prd_line_metric_day.company_code IS '公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司)'; +COMMENT ON COLUMN tbl_prd_line_metric_day.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_prd_line_metric_day.service_type IS '营运模式 1:高峰线、3:全日线、4:夜宵线'; +COMMENT ON COLUMN tbl_prd_line_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_metric_day IS '统计时间段内的线路客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_metric_hour +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_metric_hour; +CREATE TABLE tbl_prd_line_metric_hour ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + line_status varchar(10) NOT NULL, + company_code varchar(100) NOT NULL, + company_name varchar(100) NOT NULL, + service_type varchar(10) NOT NULL, + metric_hour int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_status IS '线路状态 0表示暂停营运、1表示启用、2表示撤销'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.company_code IS '公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司)'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.service_type IS '营运模式 1:高峰线、3:全日线、4:夜宵线'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.metric_hour IS '指标小时'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_no IS '五位线路编码'; +COMMENT ON TABLE tbl_prd_line_metric_hour IS '统计时间段内的线路客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_metric_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_metric_month; +CREATE TABLE tbl_prd_line_metric_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + line_status varchar(10) NOT NULL, + company_code varchar(100) NOT NULL, + company_name varchar(100) NOT NULL, + service_type varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_status IS '线路状态 0表示暂停营运、1表示启用、2表示撤销'; +COMMENT ON COLUMN tbl_prd_line_metric_month.company_code IS '公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司)'; +COMMENT ON COLUMN tbl_prd_line_metric_month.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_prd_line_metric_month.service_type IS '营运模式 1:高峰线、3:全日线、4:夜宵线'; +COMMENT ON COLUMN tbl_prd_line_metric_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_line_metric_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_metric_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_metric_month IS '统计时间段内的线路客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_metric_day; +CREATE TABLE tbl_prd_line_station_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + level_name varchar(100) NOT NULL, + levels int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_metric_day IS '统计时间段内的线路站点客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_metric_hour +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_metric_hour; +CREATE TABLE tbl_prd_line_station_metric_hour ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + level_name varchar(100) NOT NULL, + metric_hour int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.metric_hour IS '指标小时'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_metric_hour IS '统计时间段内的线路站点客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_metric_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_metric_month; +CREATE TABLE tbl_prd_line_station_metric_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + level_name varchar(100) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_metric_month IS '统计时间段内的线路站点客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_trans_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_trans_day; +CREATE TABLE tbl_prd_line_station_trans_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_trans_day IS '统计时间段内的站点换乘量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_trans_hour +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_trans_hour; +CREATE TABLE tbl_prd_line_station_trans_hour ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_hour int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.metric_hour IS '指标小时'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_trans_hour IS '统计时间段内的站点换乘量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_trans_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_trans_month; +CREATE TABLE tbl_prd_line_station_trans_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_trans_month IS '统计时间段内的站点换乘量'; + +-- ---------------------------- +-- Table structure for tbl_prd_route_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_route_metric_day; +CREATE TABLE tbl_prd_route_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + license_plate varchar(100) NOT NULL, + driver_code varchar(100) NOT NULL, + bus_code varchar(100) , + start_station varchar(100) NOT NULL, + start_time timestamp(6) NOT NULL, + end_station varchar(100) NOT NULL, + arrival_time timestamp(6) NOT NULL, + waybill_type varchar(100) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_route_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_route_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_route_metric_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_route_metric_day.license_plate IS '车辆牌照'; +COMMENT ON COLUMN tbl_prd_route_metric_day.driver_code IS '司机工号'; +COMMENT ON COLUMN tbl_prd_route_metric_day.bus_code IS '车辆自编码'; +COMMENT ON COLUMN tbl_prd_route_metric_day.start_station IS '起点'; +COMMENT ON COLUMN tbl_prd_route_metric_day.start_time IS '发车时间'; +COMMENT ON COLUMN tbl_prd_route_metric_day.end_station IS '终点'; +COMMENT ON COLUMN tbl_prd_route_metric_day.arrival_time IS '到达时间'; +COMMENT ON COLUMN tbl_prd_route_metric_day.waybill_type IS '路单类型'; +COMMENT ON COLUMN tbl_prd_route_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_route_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_route_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_route_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_route_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_route_metric_day IS '统计时间段内的班次客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_metric_day; +CREATE TABLE tbl_prd_station_freq_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + line_status varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_status IS '线路状态'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_metric_day IS '统计时间段内的站点常乘客刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_metric_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_metric_month; +CREATE TABLE tbl_prd_station_freq_metric_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + line_status varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_status IS '线路状态'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_metric_month IS '统计时间段内的站点常乘客刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_trans_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_trans_day; +CREATE TABLE tbl_prd_station_freq_trans_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_trans_day IS '统计时间段内的站点常乘客换乘刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_trans_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_trans_month; +CREATE TABLE tbl_prd_station_freq_trans_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_trans_month IS '统计时间段内的站点常乘客换乘刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_sync_record +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_sync_record; +CREATE TABLE tbl_prd_sync_record ( + id int8 NOT NULL AUTO_INCREMENT , + path varchar(100) NOT NULL, + table_name varchar(100) NOT NULL, + count int8 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + txn_date date NOT NULL, + data_status varchar(2) NOT NULL DEFAULT '00' +) +; +COMMENT ON COLUMN tbl_prd_sync_record.id IS '主键ID'; +COMMENT ON COLUMN tbl_prd_sync_record.path IS '相对路径-包含文件名'; +COMMENT ON COLUMN tbl_prd_sync_record.table_name IS 'hive表名'; +COMMENT ON COLUMN tbl_prd_sync_record.count IS '文件总记录数'; +COMMENT ON COLUMN tbl_prd_sync_record.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_sync_record.txn_date IS '文件日期'; +COMMENT ON COLUMN tbl_prd_sync_record.data_status IS '数据状态'; + +-- ---------------------------- +-- Table structure for tbl_public_files +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_files; +CREATE TABLE tbl_public_files ( + file_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + uuid varchar(32) NOT NULL, + file_name varchar(500) NOT NULL, + file_extension varchar(50) NOT NULL, + file_size varchar(10) , + file_category_path varchar(200) , + file_type varchar(50) NOT NULL, + file_source_type varchar(20) NOT NULL, + sys_type varchar(20) NOT NULL, + remarks varchar(1000) , + file_busi_id varchar(100) DEFAULT 0, + file_busi_id2 varchar(100) , + file_busi_id3 varchar(100) , + upload_size varchar(20) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_public_files.file_id IS '【文件主键id】'; +COMMENT ON COLUMN tbl_public_files.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_public_files.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_public_files.uuid IS '【UUID】'; +COMMENT ON COLUMN tbl_public_files.file_name IS '【文件名称】'; +COMMENT ON COLUMN tbl_public_files.file_extension IS '【文件后缀名】'; +COMMENT ON COLUMN tbl_public_files.file_size IS '【文件大小】'; +COMMENT ON COLUMN tbl_public_files.file_category_path IS '【文件分类路径】'; +COMMENT ON COLUMN tbl_public_files.file_type IS '【文件类型】'; +COMMENT ON COLUMN tbl_public_files.file_source_type IS '【文件来源】'; +COMMENT ON COLUMN tbl_public_files.sys_type IS '【系统类型】'; +COMMENT ON COLUMN tbl_public_files.remarks IS '【文件备注】'; +COMMENT ON COLUMN tbl_public_files.file_busi_id IS '【关联业务ID】'; +COMMENT ON COLUMN tbl_public_files.file_busi_id2 IS '【关联业务ID2】'; +COMMENT ON COLUMN tbl_public_files.file_busi_id3 IS '【关联业务ID3】'; +COMMENT ON COLUMN tbl_public_files.upload_size IS '【已上传大小】如果要续传的话,那么记录上次中断的位置'; +COMMENT ON COLUMN tbl_public_files.data_status IS '【数据状态】上传时可先处理成98临时,方便清理无用文件'; +COMMENT ON COLUMN tbl_public_files.create_by IS '【创建用户ID】'; +COMMENT ON COLUMN tbl_public_files.create_by_name IS '【创建用户】'; +COMMENT ON COLUMN tbl_public_files.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_files.update_by IS '【更新用户ID】'; +COMMENT ON COLUMN tbl_public_files.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_files.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_files IS '【系统文件表】'; + +-- ---------------------------- +-- Table structure for tbl_public_files_progress +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_files_progress; +CREATE TABLE tbl_public_files_progress ( + file_progress_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + file_id int8 NOT NULL, + uuid varchar(32) NOT NULL, + upload_size varchar(20) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_public_files_progress.file_progress_id IS '【进度主键id】'; +COMMENT ON COLUMN tbl_public_files_progress.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_public_files_progress.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_public_files_progress.file_id IS '【文件主键id】'; +COMMENT ON COLUMN tbl_public_files_progress.uuid IS '【UUID】'; +COMMENT ON COLUMN tbl_public_files_progress.upload_size IS '【已上传大小】如果要续传的话,那么记录上次中断的位置'; +COMMENT ON COLUMN tbl_public_files_progress.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_public_files_progress.create_by IS '【创建用户ID】'; +COMMENT ON COLUMN tbl_public_files_progress.create_by_name IS '【创建用户】'; +COMMENT ON COLUMN tbl_public_files_progress.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_files_progress.update_by IS '【更新用户ID】'; +COMMENT ON COLUMN tbl_public_files_progress.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_files_progress.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_files_progress IS '【文件传输进度表】'; + +-- ---------------------------- +-- Table structure for tbl_public_msg_template +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_msg_template; +CREATE TABLE tbl_public_msg_template ( + template_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + msg_desc varchar(200) , + template_code varchar(100) NOT NULL, + msg_title varchar(200) NOT NULL, + msg_text text NOT NULL, + msg_type varchar(2) NOT NULL, + show_type varchar(2) NOT NULL, + template_type varchar(20) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_public_msg_template.template_id IS '【模板主键id】'; +COMMENT ON COLUMN tbl_public_msg_template.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_public_msg_template.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_public_msg_template.template_code IS '【手机号码】'; +COMMENT ON COLUMN tbl_public_msg_template.msg_title IS '【消息标题】'; +COMMENT ON COLUMN tbl_public_msg_template.msg_text IS '【消息内容】'; +COMMENT ON COLUMN tbl_public_msg_template.msg_type IS '【消息场景】'; +COMMENT ON COLUMN tbl_public_msg_template.show_type IS '【内容形式】'; +COMMENT ON COLUMN tbl_public_msg_template.template_type IS '【模板类型】'; +COMMENT ON COLUMN tbl_public_msg_template.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_public_msg_template.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_public_msg_template.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_public_msg_template.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_msg_template.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_public_msg_template.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_msg_template.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_msg_template IS '【消息模板表】'; + +-- ---------------------------- +-- Table structure for tbl_public_phone_msg_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_phone_msg_log; +CREATE TABLE tbl_public_phone_msg_log ( + msg_id int8 NOT NULL AUTO_INCREMENT , + phone_number varchar(300) NOT NULL, + msg_title varchar(200) , + msg_text text NOT NULL, + msg_type varchar(2) NOT NULL, + send_status varchar(1) NOT NULL, + user_id varchar(64) , + nike_name varchar(100) , + result_error varchar(2500) , + sys_type varchar(20) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_id IS '【主键id】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.phone_number IS '【手机号码】某场景可能有多个,但限制20个'; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_title IS '【消息标题】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_text IS '【消息内容】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_type IS '【消息类型】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.send_status IS '【发送状态】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.user_id IS '【接收用户id】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.nike_name IS '【接收用户姓名】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.result_error IS '【错误描述】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.sys_type IS '【系统类型】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_phone_msg_log IS '【短信记录表】'; + +-- ---------------------------- +-- Table structure for tbl_qa_centime_delay +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_centime_delay; +CREATE TABLE tbl_qa_centime_delay ( + id int8 NOT NULL AUTO_INCREMENT , + time_range varchar(20) NOT NULL, + delay_count int4 NOT NULL, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_centime_delay.id IS '主键'; +COMMENT ON COLUMN tbl_qa_centime_delay.time_range IS '时间范围'; +COMMENT ON COLUMN tbl_qa_centime_delay.delay_count IS '延迟数量'; +COMMENT ON COLUMN tbl_qa_centime_delay.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_centime_delay.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_centime_delay IS '延迟上送比率'; + +-- ---------------------------- +-- Table structure for tbl_qa_pos_match_rate +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_pos_match_rate; +CREATE TABLE tbl_qa_pos_match_rate ( + id int8 NOT NULL AUTO_INCREMENT , + tran_num int4 NOT NULL, + match_num int4 NOT NULL, + match_rate float8, + txn_date date NOT NULL, + create_time timestamp(6) DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_pos_match_rate.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.tran_num IS '交易数量'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.match_num IS '匹配数量'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.match_rate IS '匹配率'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_pos_match_rate IS 'Pos匹配率'; + +-- ---------------------------- +-- Table structure for tbl_qa_route_daily_count +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_route_daily_count; +CREATE TABLE tbl_qa_route_daily_count ( + id int8 NOT NULL AUTO_INCREMENT , + company_name varchar(50) NOT NULL, + route_count int4 NOT NULL, + txn_date date NOT NULL, + company_code varchar(20) NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_route_daily_count.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_route_daily_count.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_qa_route_daily_count.route_count IS '线路数量'; +COMMENT ON COLUMN tbl_qa_route_daily_count.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_route_daily_count.company_code IS '运营公司编码'; +COMMENT ON COLUMN tbl_qa_route_daily_count.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_route_daily_count IS '日营运线路条数'; + +-- ---------------------------- +-- Table structure for tbl_qa_route_miss +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_route_miss; +CREATE TABLE tbl_qa_route_miss ( + id int8 NOT NULL AUTO_INCREMENT , + miss_rate float8, + txn_date date NOT NULL, + route_count int4 NOT NULL, + bus_stop_count int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_route_miss.id IS '主键Id'; +COMMENT ON COLUMN tbl_qa_route_miss.miss_rate IS '缺失率'; +COMMENT ON COLUMN tbl_qa_route_miss.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_route_miss.route_count IS '电子路单数量班次'; +COMMENT ON COLUMN tbl_qa_route_miss.bus_stop_count IS '调离站班次数量'; +COMMENT ON COLUMN tbl_qa_route_miss.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_route_miss IS '班次缺失率'; + +-- ---------------------------- +-- Table structure for tbl_qa_route_turnover_time +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_route_turnover_time; +CREATE TABLE tbl_qa_route_turnover_time ( + id int8 NOT NULL AUTO_INCREMENT , + line_code varchar(10) NOT NULL, + line_name varchar(20) NOT NULL, + turnover_time float8 NOT NULL, + hlow_peak_name varchar(20) NOT NULL, + way_bill_type varchar(20) NOT NULL, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_route_turnover_time.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.line_code IS '线路编码'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.turnover_time IS '平均周转时间'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.hlow_peak_name IS '早晚高峰名称'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.way_bill_type IS '路单类型'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_route_turnover_time IS '班次周转时间'; + +-- ---------------------------- +-- Table structure for tbl_qa_station_miss +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_station_miss; +CREATE TABLE tbl_qa_station_miss ( + id int8 NOT NULL AUTO_INCREMENT , + line_code varchar(10) NOT NULL, + line_name varchar(20) NOT NULL, + license_plate varchar(20) , + driver_code varchar(20) , + start_time timestamp(6) NOT NULL, + arrival_time timestamp(6) NOT NULL, + start_station varchar(50) , + end_station varchar(50) , + up varchar(20) NOT NULL, + way_bill_type varchar(20) NOT NULL, + start_station_levels int4, + end_station_levels int4, + level_num int4, + bus_stop_num int4, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + miss_rate float8 +) +; +COMMENT ON COLUMN tbl_qa_station_miss.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_station_miss.line_code IS '线路编码'; +COMMENT ON COLUMN tbl_qa_station_miss.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_qa_station_miss.license_plate IS '车辆牌照'; +COMMENT ON COLUMN tbl_qa_station_miss.driver_code IS '驾驶员工号'; +COMMENT ON COLUMN tbl_qa_station_miss.start_time IS '发车时间'; +COMMENT ON COLUMN tbl_qa_station_miss.arrival_time IS '到达时间'; +COMMENT ON COLUMN tbl_qa_station_miss.start_station IS '起点'; +COMMENT ON COLUMN tbl_qa_station_miss.end_station IS '终点'; +COMMENT ON COLUMN tbl_qa_station_miss.up IS '上下行'; +COMMENT ON COLUMN tbl_qa_station_miss.way_bill_type IS '路单类型'; +COMMENT ON COLUMN tbl_qa_station_miss.start_station_levels IS '起点站级'; +COMMENT ON COLUMN tbl_qa_station_miss.end_station_levels IS '终点站级'; +COMMENT ON COLUMN tbl_qa_station_miss.level_num IS '班次站点数'; +COMMENT ON COLUMN tbl_qa_station_miss.bus_stop_num IS '车辆到离站数'; +COMMENT ON COLUMN tbl_qa_station_miss.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_station_miss.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_qa_station_miss.miss_rate IS '缺失率'; +COMMENT ON TABLE tbl_qa_station_miss IS '站点缺失率'; + +-- ---------------------------- +-- Table structure for tbl_qa_vehicle_daily_count +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_vehicle_daily_count; +CREATE TABLE tbl_qa_vehicle_daily_count ( + id int8 NOT NULL AUTO_INCREMENT , + company_code varchar(10) NOT NULL, + company_name varchar(20) NOT NULL, + vehicle_count int4 NOT NULL, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.company_code IS '公司编码'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.company_name IS '公司名称'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.vehicle_count IS '车辆数'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_vehicle_daily_count IS '日营运车辆数'; + +-- ---------------------------- +-- Table structure for tbl_sftp_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sftp_user; +CREATE TABLE tbl_sftp_user ( + sftp_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + sftp_username varchar(100) NOT NULL, + sftp_password varchar(100) NOT NULL, + contact_name varchar(100) , + contact_info varchar(100) , + sftp_perms varchar(50) , + sftp_path varchar(150) , + remarks varchar(500) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL DEFAULT '00', + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(6) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(6), + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_sftp_user.sftp_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sftp_user.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sftp_user.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_username IS '【账户名】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_password IS '【密码】'; +COMMENT ON COLUMN tbl_sftp_user.contact_name IS '【联系人】'; +COMMENT ON COLUMN tbl_sftp_user.contact_info IS '【联系方式】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_perms IS '【权限字符】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_path IS '【分配目录】'; +COMMENT ON COLUMN tbl_sftp_user.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_sftp_user.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_sftp_user.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sftp_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_sftp_user.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sftp_user.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sftp_user.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_sftp_user.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sftp_user.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_sftp_user.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_sftp_user.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_sftp_user IS '【SFTP用户表】'; + +-- ---------------------------- +-- Table structure for tbl_sftp_user_file +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sftp_user_file; +CREATE TABLE tbl_sftp_user_file ( + sftp_file_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + sftp_id int8 NOT NULL, + file_name varchar(500) NOT NULL, + file_path varchar(200) , + file_size varchar(20) , + remarks varchar(500) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL DEFAULT '00', + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(6) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(6), + sftp_username varchar(100) +) +; +COMMENT ON COLUMN tbl_sftp_user_file.sftp_file_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sftp_user_file.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sftp_user_file.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sftp_user_file.sftp_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sftp_user_file.file_name IS '【文件名】'; +COMMENT ON COLUMN tbl_sftp_user_file.file_path IS '【文件路径】'; +COMMENT ON COLUMN tbl_sftp_user_file.file_size IS '【文件大小】'; +COMMENT ON COLUMN tbl_sftp_user_file.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_sftp_user_file.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_sftp_user_file.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sftp_user_file.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_sftp_user_file.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sftp_user_file.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sftp_user_file.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_sftp_user_file.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sftp_user_file.sftp_username IS '【账户名】'; +COMMENT ON TABLE tbl_sftp_user_file IS '【SFTP用户文件表】'; + +-- ---------------------------- +-- Table structure for tbl_source_data_quality +-- ---------------------------- +DROP TABLE IF EXISTS tbl_source_data_quality; +CREATE TABLE tbl_source_data_quality ( + source_data_table_name varchar(100) , + source_data_table_code varchar(100) , + source_data_quality_name varchar(500) , + source_data_quality_define varchar(500) , + source_data_quality_desc varchar(500) , + source_data_quality_value numeric(18,3), + source_data_quality_date date +) +; +COMMENT ON COLUMN tbl_source_data_quality.source_data_table_name IS '元数据表名'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_table_code IS '元数据表code'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_name IS '指标名称'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_define IS '指标定义'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_desc IS '指标说明'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_value IS '指标数值'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_date IS '数据日期'; + +-- ---------------------------- +-- Table structure for tbl_sys_config +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_config; +CREATE TABLE tbl_sys_config ( + config_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + config_name varchar(100) , + config_key varchar(100) , + config_value varchar(500) , + config_type char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_config.config_id IS '【参数主键】'; +COMMENT ON COLUMN tbl_sys_config.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_config.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_config.config_name IS '【参数名称】'; +COMMENT ON COLUMN tbl_sys_config.config_key IS '【参数键名】'; +COMMENT ON COLUMN tbl_sys_config.config_value IS '【参数键值】'; +COMMENT ON COLUMN tbl_sys_config.config_type IS '【系统内置】Y是 N否'; +COMMENT ON COLUMN tbl_sys_config.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_config.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_config.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_config.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_config.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_config IS '【参数配置表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_dept +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_dept; +CREATE TABLE tbl_sys_dept ( + dept_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + parent_id int8, + ancestors varchar(50) , + dept_name varchar(30) NOT NULL, + order_num int4, + leader varchar(20) , + phone varchar(11) , + email varchar(50) , + status char(1) , + del_flag char(1) DEFAULT '0', + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_sys_dept.dept_id IS '【部门id】'; +COMMENT ON COLUMN tbl_sys_dept.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_dept.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_dept.parent_id IS '【父部门id】'; +COMMENT ON COLUMN tbl_sys_dept.ancestors IS '【祖级列表】'; +COMMENT ON COLUMN tbl_sys_dept.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_sys_dept.order_num IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_dept.leader IS '【负责人】'; +COMMENT ON COLUMN tbl_sys_dept.phone IS '【联系电话】'; +COMMENT ON COLUMN tbl_sys_dept.email IS '【邮箱】'; +COMMENT ON COLUMN tbl_sys_dept.status IS '【部门状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_dept.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_sys_dept.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_dept.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_dept.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_dept.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_sys_dept IS '【部门表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_dict_data +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_dict_data; +CREATE TABLE tbl_sys_dict_data ( + dict_code int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dict_sort int4, + dict_label varchar(100) , + dict_value varchar(100) , + dict_type varchar(100) NOT NULL, + css_class varchar(100) , + list_class varchar(100) , + is_default char(1) , + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_dict_data.dict_code IS '【字典编码】'; +COMMENT ON COLUMN tbl_sys_dict_data.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_dict_data.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_sort IS '【字典排序】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_label IS '【字典标签】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_value IS '【字典键值】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_type IS '【字典类型】'; +COMMENT ON COLUMN tbl_sys_dict_data.css_class IS '【样式属性】其他样式扩展'; +COMMENT ON COLUMN tbl_sys_dict_data.list_class IS '【表格回显样式】'; +COMMENT ON COLUMN tbl_sys_dict_data.is_default IS '【是否默认】Y是 N否'; +COMMENT ON COLUMN tbl_sys_dict_data.status IS '【状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_dict_data.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_dict_data.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_dict_data.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_dict_data.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_dict_data.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_dict_data IS '【字典数据表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_dict_type +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_dict_type; +CREATE TABLE tbl_sys_dict_type ( + dict_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dict_name varchar(100) , + dict_type varchar(100) NOT NULL, + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_dict_type.dict_id IS '【字典主键】'; +COMMENT ON COLUMN tbl_sys_dict_type.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_dict_type.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_dict_type.dict_name IS '【字典名称】'; +COMMENT ON COLUMN tbl_sys_dict_type.dict_type IS '【字典类型】'; +COMMENT ON COLUMN tbl_sys_dict_type.status IS '【状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_dict_type.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_dict_type.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_dict_type.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_dict_type.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_dict_type.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_dict_type IS '【字典类型表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_job +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_job; +CREATE TABLE tbl_sys_job ( + job_id int8 NOT NULL AUTO_INCREMENT , + job_name varchar(64) NOT NULL, + job_group varchar(64) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL, + invoke_target varchar(500) NOT NULL, + cron_expression varchar(255) , + misfire_policy varchar(20) , + concurrent char(1) , + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) , + parent_id int8, + level varchar(200) +) +; +COMMENT ON COLUMN tbl_sys_job.job_id IS '【任务ID】'; +COMMENT ON COLUMN tbl_sys_job.job_name IS '【任务名称】'; +COMMENT ON COLUMN tbl_sys_job.job_group IS '【任务组名】'; +COMMENT ON COLUMN tbl_sys_job.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_job.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_job.invoke_target IS '【调用目标字符串】'; +COMMENT ON COLUMN tbl_sys_job.cron_expression IS '【cron执行表达式】'; +COMMENT ON COLUMN tbl_sys_job.misfire_policy IS '【计划执行错误策略】1立即执行 2执行一次 3放弃执行'; +COMMENT ON COLUMN tbl_sys_job.concurrent IS '【是否并发执行】0允许 1禁止'; +COMMENT ON COLUMN tbl_sys_job.status IS '【状态】0正常 1暂停'; +COMMENT ON COLUMN tbl_sys_job.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_job.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_job.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_job.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_job.remark IS '【备注信息】'; +COMMENT ON COLUMN tbl_sys_job.parent_id IS '【父ID】'; +COMMENT ON COLUMN tbl_sys_job.level IS '【层级】'; +COMMENT ON TABLE tbl_sys_job IS '【定时任务调度表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_job_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_job_log; +CREATE TABLE tbl_sys_job_log ( + job_log_id int8 NOT NULL AUTO_INCREMENT , + job_name varchar(64) NOT NULL, + job_group varchar(64) NOT NULL, + invoke_target varchar(500) NOT NULL, + job_message varchar(500) , + status char(1) , + exception_info varchar(2000) , + create_time timestamp(6) +) +; +COMMENT ON COLUMN tbl_sys_job_log.job_log_id IS '【任务日志ID】'; +COMMENT ON COLUMN tbl_sys_job_log.job_name IS '【任务名称】'; +COMMENT ON COLUMN tbl_sys_job_log.job_group IS '【任务组名】'; +COMMENT ON COLUMN tbl_sys_job_log.invoke_target IS '【调用目标字符串】'; +COMMENT ON COLUMN tbl_sys_job_log.job_message IS '【日志信息】'; +COMMENT ON COLUMN tbl_sys_job_log.status IS '【执行状态】0正常 1失败'; +COMMENT ON COLUMN tbl_sys_job_log.exception_info IS '【异常信息】'; +COMMENT ON COLUMN tbl_sys_job_log.create_time IS '【创建时间】'; +COMMENT ON TABLE tbl_sys_job_log IS '【定时任务调度日志表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2024; +CREATE TABLE tbl_sys_logininfor_2024 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2025; +CREATE TABLE tbl_sys_logininfor_2025 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2026; +CREATE TABLE tbl_sys_logininfor_2026 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2027; +CREATE TABLE tbl_sys_logininfor_2027 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2028; +CREATE TABLE tbl_sys_logininfor_2028 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2029; +CREATE TABLE tbl_sys_logininfor_2029 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_default +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_default; +CREATE TABLE tbl_sys_logininfor_default ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_menu +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_menu; +CREATE TABLE tbl_sys_menu ( + menu_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + menu_name varchar(50) NOT NULL, + parent_id int8 DEFAULT 0, + order_num int4, + path varchar(200) , + component varchar(255) , + query_params varchar(255) , + is_frame char(1) , + is_cache char(1) , + url_path varchar(255) , + url_method varchar(20) , + url_opr_type varchar(20) , + url_check_flag char(1) , + menu_type char(1) , + visible char(1) , + status char(1) , + perms varchar(100) , + icon varchar(100) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_menu.menu_id IS '【菜单ID】'; +COMMENT ON COLUMN tbl_sys_menu.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_menu.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_menu.menu_name IS '【菜单名称】'; +COMMENT ON COLUMN tbl_sys_menu.parent_id IS '【父菜单ID】'; +COMMENT ON COLUMN tbl_sys_menu.order_num IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_menu.path IS '【路由地址】'; +COMMENT ON COLUMN tbl_sys_menu.component IS '【组件路径】'; +COMMENT ON COLUMN tbl_sys_menu.query_params IS '【路由参数】'; +COMMENT ON COLUMN tbl_sys_menu.is_frame IS '【是否为外链】0是 1否'; +COMMENT ON COLUMN tbl_sys_menu.is_cache IS '【是否缓存】0缓存 1不缓存'; +COMMENT ON COLUMN tbl_sys_menu.url_path IS '【url路径】'; +COMMENT ON COLUMN tbl_sys_menu.url_method IS '【URL请求方式】由于restful风格同名,因此需要GET,POST等'; +COMMENT ON COLUMN tbl_sys_menu.url_opr_type IS '【url操作类型】为了更便捷分配同类型资源,query:查询 ,add:新增,edit:编辑。。。'; +COMMENT ON COLUMN tbl_sys_menu.url_check_flag IS '【url网关校验标志】为空或0则不校验;1校验;'; +COMMENT ON COLUMN tbl_sys_menu.menu_type IS '【菜单类型】M目录 C菜单 F按钮'; +COMMENT ON COLUMN tbl_sys_menu.visible IS '【菜单显示状态】0显示 1隐藏'; +COMMENT ON COLUMN tbl_sys_menu.status IS '【菜单状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_menu.perms IS '【权限标识】'; +COMMENT ON COLUMN tbl_sys_menu.icon IS '【菜单图标】'; +COMMENT ON COLUMN tbl_sys_menu.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_menu.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_menu.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_menu.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_menu.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_menu IS '【菜单权限表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_notice +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_notice; +CREATE TABLE tbl_sys_notice ( + notice_id int4 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + notice_title varchar(50) NOT NULL, + notice_type char(1) NOT NULL, + notice_content text , + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(255) +) +; +COMMENT ON COLUMN tbl_sys_notice.notice_id IS '【公告ID】'; +COMMENT ON COLUMN tbl_sys_notice.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_notice.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_notice.notice_title IS '【公告标题】'; +COMMENT ON COLUMN tbl_sys_notice.notice_type IS '【公告类型】1通知 2公告'; +COMMENT ON COLUMN tbl_sys_notice.notice_content IS '【公告内容】'; +COMMENT ON COLUMN tbl_sys_notice.status IS '【公告状态】0正常 1关闭'; +COMMENT ON COLUMN tbl_sys_notice.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_notice.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_notice.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_notice.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_notice.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_notice IS '【通知公告表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2024; +CREATE TABLE tbl_sys_oper_log_2024 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2025; +CREATE TABLE tbl_sys_oper_log_2025 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2026; +CREATE TABLE tbl_sys_oper_log_2026 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2027; +CREATE TABLE tbl_sys_oper_log_2027 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2028; +CREATE TABLE tbl_sys_oper_log_2028 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2029; +CREATE TABLE tbl_sys_oper_log_2029 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_default +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_default; +CREATE TABLE tbl_sys_oper_log_default ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_post +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_post; +CREATE TABLE tbl_sys_post ( + post_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + post_code varchar(64) NOT NULL, + post_name varchar(50) NOT NULL, + post_sort int4 NOT NULL, + status char(1) NOT NULL, + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_post.post_id IS '【岗位ID】'; +COMMENT ON COLUMN tbl_sys_post.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_post.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_post.post_code IS '【岗位编码】'; +COMMENT ON COLUMN tbl_sys_post.post_name IS '【岗位名称】'; +COMMENT ON COLUMN tbl_sys_post.post_sort IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_post.status IS '【状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_post.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_post.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_post.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_post.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_post.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_post IS '【岗位信息表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_role +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_role; +CREATE TABLE tbl_sys_role ( + role_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + role_name varchar(30) NOT NULL, + role_key varchar(100) NOT NULL, + role_sort int4 NOT NULL DEFAULT 0, + data_scope varchar(1) , + menu_check_strictly varchar(1) , + dept_check_strictly varchar(1) , + status varchar(1) NOT NULL, + del_flag varchar(1) DEFAULT '0', + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_role.role_id IS '【角色ID】'; +COMMENT ON COLUMN tbl_sys_role.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_role.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_role.role_name IS '【角色名称】'; +COMMENT ON COLUMN tbl_sys_role.role_key IS '【角色权限字符串】'; +COMMENT ON COLUMN tbl_sys_role.role_sort IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_role.data_scope IS '【数据范围】1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限'; +COMMENT ON COLUMN tbl_sys_role.menu_check_strictly IS '【菜单树选择项是否关联显示】'; +COMMENT ON COLUMN tbl_sys_role.dept_check_strictly IS '【部门树选择项是否关联显示】'; +COMMENT ON COLUMN tbl_sys_role.status IS '【角色状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_role.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_sys_role.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_role.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_role.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_role.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_role.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_role IS '【角色信息表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_role_dept +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_role_dept; +CREATE TABLE tbl_sys_role_dept ( + role_id int8 NOT NULL, + dept_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_role_dept.role_id IS '【角色ID】'; +COMMENT ON COLUMN tbl_sys_role_dept.dept_id IS '【部门ID】'; +COMMENT ON TABLE tbl_sys_role_dept IS '【角色和部门关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_role_menu +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_role_menu; +CREATE TABLE tbl_sys_role_menu ( + role_id int8 NOT NULL, + menu_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_role_menu.role_id IS '【角色ID】'; +COMMENT ON COLUMN tbl_sys_role_menu.menu_id IS '【菜单ID】'; +COMMENT ON TABLE tbl_sys_role_menu IS '【角色和菜单关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user; +CREATE TABLE tbl_sys_user ( + user_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dept_id int8, + user_name varchar(30) NOT NULL, + nick_name varchar(30) NOT NULL, + user_type varchar(2) DEFAULT '00', + email varchar(50) , + phonenumber varchar(11) , + sex char(1) , + avatar varchar(100) , + password varchar(100) , + status char(1) , + del_flag char(1) DEFAULT '0', + login_ip varchar(128) , + login_date timestamp(6), + is_locked char(1) , + login_error_count int4, + last_login_error_time timestamp(6), + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_user.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sys_user.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_user.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_user.dept_id IS '【部门ID】'; +COMMENT ON COLUMN tbl_sys_user.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_sys_user.nick_name IS '【用户昵称】'; +COMMENT ON COLUMN tbl_sys_user.user_type IS '【用户类型】00系统用户'; +COMMENT ON COLUMN tbl_sys_user.email IS '【用户邮箱】'; +COMMENT ON COLUMN tbl_sys_user.phonenumber IS '【手机号码】'; +COMMENT ON COLUMN tbl_sys_user.sex IS '【用户性别】0男 1女 2未知'; +COMMENT ON COLUMN tbl_sys_user.avatar IS '【头像地址】'; +COMMENT ON COLUMN tbl_sys_user.password IS '【密码】'; +COMMENT ON COLUMN tbl_sys_user.status IS '【帐号状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_user.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_sys_user.login_ip IS '【最后登录IP】'; +COMMENT ON COLUMN tbl_sys_user.login_date IS '【最后登录时间】'; +COMMENT ON COLUMN tbl_sys_user.is_locked IS '【锁定状态】'; +COMMENT ON COLUMN tbl_sys_user.login_error_count IS '【登陆错误次数】'; +COMMENT ON COLUMN tbl_sys_user.last_login_error_time IS '【登陆错误时间】'; +COMMENT ON COLUMN tbl_sys_user.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_user.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_user.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_user.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_user.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_user IS '【用户信息表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user_post +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user_post; +CREATE TABLE tbl_sys_user_post ( + user_id int8 NOT NULL, + post_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_user_post.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sys_user_post.post_id IS '【岗位ID】'; +COMMENT ON TABLE tbl_sys_user_post IS '【用户与岗位关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user_role +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user_role; +CREATE TABLE tbl_sys_user_role ( + user_id int8 NOT NULL, + role_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_user_role.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sys_user_role.role_id IS '【角色ID】'; +COMMENT ON TABLE tbl_sys_user_role IS '【用户和角色关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user_zltest +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user_zltest; +CREATE TABLE tbl_sys_user_zltest ( + user_id int8, + version_num int4, + rec_token varchar(10) , + dept_id int8, + user_name varchar(30) , + nick_name varchar(30) , + user_type varchar(2) , + email varchar(50) , + phonenumber varchar(11) , + sex char(1) , + avatar varchar(100) , + password varchar(100) , + status char(1) , + del_flag char(1) , + login_ip varchar(128) , + login_date timestamp(6), + is_locked char(1) , + login_error_count int4, + last_login_error_time timestamp(6), + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_warning_contact +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_warning_contact; +CREATE TABLE tbl_sys_warning_contact ( + id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + warning_type varchar(32) NOT NULL, + contact_type varchar(32) NOT NULL, + contact varchar(32) NOT NULL, + status varchar(32) NOT NULL DEFAULT '00', + create_by varchar(32) , + create_time timestamp(0), + update_by varchar(32) , + update_time timestamp(0), + del_flag char(1) DEFAULT '0' +) +; +COMMENT ON COLUMN tbl_sys_warning_contact.id IS '【主键id】'; +COMMENT ON COLUMN tbl_sys_warning_contact.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_warning_contact.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_warning_contact.warning_type IS '【告警场景】'; +COMMENT ON COLUMN tbl_sys_warning_contact.contact_type IS '【类型】手机号:01 邮箱:02'; +COMMENT ON COLUMN tbl_sys_warning_contact.contact IS '【联系方式】'; +COMMENT ON COLUMN tbl_sys_warning_contact.status IS '【状态】正常:00 停用:01 删除:03'; +COMMENT ON COLUMN tbl_sys_warning_contact.create_by IS '【创建人】'; +COMMENT ON COLUMN tbl_sys_warning_contact.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_warning_contact.update_by IS '【更新人】'; +COMMENT ON COLUMN tbl_sys_warning_contact.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_warning_contact.del_flag IS '【删除标志】'; +COMMENT ON TABLE tbl_sys_warning_contact IS '【告警联系方式表】'; + +-- ---------------------------- +-- Table structure for tbl_zltest +-- ---------------------------- +DROP TABLE IF EXISTS tbl_zltest; +CREATE TABLE tbl_zltest ( + test_id varchar +) +; + +-- ---------------------------- +-- Table structure for test_89 +-- ---------------------------- +DROP TABLE IF EXISTS test_89; +CREATE TABLE test_89 ( + api_id int8, + status char(1) , + create_by varchar(50) , + create_time timestamp(0), + create_dept varchar(50) , + update_by varchar(50) , + update_time timestamp(0), + remark varchar(1000) , + api_name varchar(255) , + api_version varchar(60) , + api_url varchar(255) , + req_method varchar(10) , + res_type varchar(10) , + deny varchar(2000) , + limit_json text , + config_json text , + req_json text , + res_json text , + version_num int4, + rec_token varchar(100) , + del_flag char(1) , + api_code varchar(50) , + api_type char(1) , + source_id int8 +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor; +CREATE TABLE tbl_portal_logininfor ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +); +COMMENT ON COLUMN tbl_portal_logininfor.info_id IS '【访问ID】'; +COMMENT ON COLUMN tbl_portal_logininfor.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_portal_logininfor.ipaddr IS '【登录IP地址】'; +COMMENT ON COLUMN tbl_portal_logininfor.login_location IS '【登录地点】'; +COMMENT ON COLUMN tbl_portal_logininfor.browser IS '【浏览器类型】'; +COMMENT ON COLUMN tbl_portal_logininfor.os IS '【操作系统】'; +COMMENT ON COLUMN tbl_portal_logininfor.status IS '【登录状态】0成功 1失败'; +COMMENT ON COLUMN tbl_portal_logininfor.msg IS '【提示消息】'; +COMMENT ON COLUMN tbl_portal_logininfor.login_time IS '【访问时间】'; +COMMENT ON TABLE tbl_portal_logininfor IS '【门户登录日志】'; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log; +CREATE TABLE tbl_portal_oper_log ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_oper_log.oper_id IS '【日志主键】'; +COMMENT ON COLUMN tbl_portal_oper_log.title IS '【模块标题】'; +COMMENT ON COLUMN tbl_portal_oper_log.business_type IS '【业务类型】0其它 1新增 2修改 3删除'; +COMMENT ON COLUMN tbl_portal_oper_log.method IS '【方法名称】'; +COMMENT ON COLUMN tbl_portal_oper_log.request_method IS '【请求方式】'; +COMMENT ON COLUMN tbl_portal_oper_log.operator_type IS '【操作类别】0其它 1后台用户 2手机端用户'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_name IS '【操作人员】'; +COMMENT ON COLUMN tbl_portal_oper_log.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_url IS '【请求URL】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_ip IS '【主机地址】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_location IS '【操作地点】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_param IS '【请求参数】'; +COMMENT ON COLUMN tbl_portal_oper_log.json_result IS '【返回参数】'; +COMMENT ON COLUMN tbl_portal_oper_log.status IS '【操作状态】0正常 1异常'; +COMMENT ON COLUMN tbl_portal_oper_log.error_msg IS '【错误消息】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_time IS '【操作时间】'; +COMMENT ON TABLE tbl_portal_oper_log IS '【门户操作日志】'; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor; +CREATE TABLE tbl_sys_logininfor ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +); +COMMENT ON COLUMN tbl_sys_logininfor.info_id IS '【访问ID】'; +COMMENT ON COLUMN tbl_sys_logininfor.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_sys_logininfor.ipaddr IS '【登录IP地址】'; +COMMENT ON COLUMN tbl_sys_logininfor.login_location IS '【登录地点】'; +COMMENT ON COLUMN tbl_sys_logininfor.browser IS '【浏览器类型】'; +COMMENT ON COLUMN tbl_sys_logininfor.os IS '【操作系统】'; +COMMENT ON COLUMN tbl_sys_logininfor.status IS '【登录状态】0成功 1失败'; +COMMENT ON COLUMN tbl_sys_logininfor.msg IS '【提示消息】'; +COMMENT ON COLUMN tbl_sys_logininfor.login_time IS '【访问时间】'; +COMMENT ON TABLE tbl_sys_logininfor IS '【系统访问记录】'; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log; +CREATE TABLE tbl_sys_oper_log ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +); +COMMENT ON COLUMN tbl_sys_oper_log.oper_id IS '【日志主键】'; +COMMENT ON COLUMN tbl_sys_oper_log.title IS '【模块标题】'; +COMMENT ON COLUMN tbl_sys_oper_log.business_type IS '【业务类型】0其它 1新增 2修改 3删除'; +COMMENT ON COLUMN tbl_sys_oper_log.method IS '【方法名称】'; +COMMENT ON COLUMN tbl_sys_oper_log.request_method IS '【请求方式】'; +COMMENT ON COLUMN tbl_sys_oper_log.operator_type IS '【操作类别】0其它 1后台用户 2手机端用户'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_name IS '【操作人员】'; +COMMENT ON COLUMN tbl_sys_oper_log.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_url IS '【请求URL】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_ip IS '【主机地址】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_location IS '【操作地点】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_param IS '【请求参数】'; +COMMENT ON COLUMN tbl_sys_oper_log.json_result IS '【返回参数】'; +COMMENT ON COLUMN tbl_sys_oper_log.status IS '【操作状态】0正常 1异常'; +COMMENT ON COLUMN tbl_sys_oper_log.error_msg IS '【错误消息】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_time IS '【操作时间】'; +COMMENT ON TABLE tbl_sys_oper_log IS '【操作日志记录】'; + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- + +-- SELECT setval('demorange_int_seq', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('prd_line_station_trans_month', 9, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_asset_column', 33144, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_asset_table', 4304, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_asset_table_column', 55346, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_config', 1, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_institute', 4, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_institute_api_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_institute_auth', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_market_api', 149, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_market_api_log', 480, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_market_api_mask', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_authorize', 300, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_change_record', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_column', 269265, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_source', 58, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_source_conn', 21, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_table', 10289, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_quality_report', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_sql_console_export', 101, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_sql_log', 14700, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_info', 43, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_lib', 99, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_review', 31, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_review_dtl', 16, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_config_hardware', 31, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_download_apply', 31, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_images', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_vpn', 5, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_with_user_account', 56, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_gen_table', 34, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_gen_table_column', 414, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_lab_config_hardware', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_api_auth', 171, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_config', 164, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_gateway_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_statistics', 46, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_content', 55, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_logininfor', 352, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_oper_log', 99, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_user', 18, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_user_msg', 61, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_metric_day', 135492453, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_metric_hour', 1747381, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_metric_month', 33049, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_metric_day', 145553, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_metric_hour', 9, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_metric_month', 127360, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_trans_day', 337065, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_trans_hour', 2572505, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_trans_month', 294933, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_route_metric_day', 1494935, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_metric_day', 156294, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_metric_month', 299393, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_trans_day', 756913, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_trans_month', 478054, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_files', 386, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_files_progress', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_msg_template', 39, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_phone_msg_log', 151, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_centime_delay', 39, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_pos_match_rate', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_route_daily_count', 15, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_route_miss', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_route_turnover_time', 6456, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_station_miss', 260288, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_vehicle_daily_count', 10, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sftp_user', 32, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sftp_user_file', 40, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sql_console_file', 115, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sql_data_apply', 223, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_config', 6, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_dept', 12, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_dict_data', 330, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_dict_type', 86, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_job', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_job_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_logininfor', 3797, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_menu', 3292, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_notice', 10, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_oper_log', 3828, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_post', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_role', 20, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_user', 100026, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_warning_contact', 18, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_warning_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_test_t_t', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- ALTER SEQUENCE tbl_prd_sync_record_id_seq +-- OWNED BY tbl_prd_sync_record.id; +-- SELECT setval('tbl_prd_sync_record_id_seq', 286, true); + +-- ---------------------------- +-- Primary Key structure for table gen_table +-- ---------------------------- +ALTER TABLE gen_table ADD CONSTRAINT gen_table_pkey PRIMARY KEY (table_id); + +-- ---------------------------- +-- Primary Key structure for table gen_table_column +-- ---------------------------- +ALTER TABLE gen_table_column ADD CONSTRAINT gen_table_column_pkey PRIMARY KEY (column_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_batch_table_mapping +-- ---------------------------- +ALTER TABLE tbl_batch_table_mapping ADD CONSTRAINT pk_tbl_batch_table_mapping PRIMARY KEY (task_no); + +-- ---------------------------- +-- Primary Key structure for table tbl_batch_task +-- ---------------------------- +ALTER TABLE tbl_batch_task ADD CONSTRAINT pk_tbl_batch_task PRIMARY KEY (task_no); + +-- ---------------------------- +-- Indexes structure for table tbl_data_api +-- ---------------------------- +CREATE INDEX index_dataApi_apiType ON tbl_data_api ( + api_type +); +CREATE UNIQUE INDEX index_dataApi_apicode ON tbl_data_api ( + api_code +); +CREATE INDEX index_dataApi_sourceId ON tbl_data_api ( + source_id +); +CREATE INDEX index_dataApi_status ON tbl_data_api ( + status +); +CREATE INDEX index_dataApi_url ON tbl_data_api ( + api_url +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_api +-- ---------------------------- +ALTER TABLE tbl_data_api ADD CONSTRAINT market_api_pkey PRIMARY KEY (api_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_api_log +-- ---------------------------- +CREATE INDEX idx_tbl_data_api_log_1 ON tbl_data_api_log ( + api_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_api_log +-- ---------------------------- +ALTER TABLE tbl_data_api_log ADD CONSTRAINT market_api_log_pkey PRIMARY KEY (api_log_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_asset_column +-- ---------------------------- +CREATE INDEX idx_tbl_data_asset_column_1 ON tbl_data_asset_column ( + column_name +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_asset_column +-- ---------------------------- +ALTER TABLE tbl_data_asset_column ADD CONSTRAINT tbl_data_asset_column_pkey PRIMARY KEY (asset_column_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_asset_table +-- ---------------------------- +CREATE INDEX idx_tbl_data_asset_table_1 ON tbl_data_asset_table ( + source_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_asset_table +-- ---------------------------- +ALTER TABLE tbl_data_asset_table ADD CONSTRAINT tbl_data_asset_table_pkey PRIMARY KEY (asset_table_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_asset_table_column +-- ---------------------------- +CREATE INDEX idx_tbl_data_asset_table_column_1 ON tbl_data_asset_table_column ( + asset_table_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_asset_table_column +-- ---------------------------- +ALTER TABLE tbl_data_asset_table_column ADD CONSTRAINT tbl_data_asset_table_column_pkey PRIMARY KEY (asset_table_column_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_column +-- ---------------------------- +ALTER TABLE tbl_data_metadata_column ADD CONSTRAINT metadata_column_pkey PRIMARY KEY (column_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_metadata_source +-- ---------------------------- +CREATE INDEX idx_tbl_data_metadata_source_1 ON tbl_data_metadata_source ( + conn_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_source +-- ---------------------------- +ALTER TABLE tbl_data_metadata_source ADD CONSTRAINT metadata_source_pkey PRIMARY KEY (source_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_source_conn +-- ---------------------------- +ALTER TABLE tbl_data_metadata_source_conn ADD CONSTRAINT tbl_data_metadata_source_link_pkey PRIMARY KEY (conn_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_metadata_table +-- ---------------------------- +CREATE INDEX idx_tbl_data_metadata_table_1 ON tbl_data_metadata_table ( + source_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_table +-- ---------------------------- +ALTER TABLE tbl_data_metadata_table ADD CONSTRAINT metadata_table_pkey PRIMARY KEY (table_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_console_export +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_console_export_1 ON tbl_data_sql_console_export ( + user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_console_export +-- ---------------------------- +ALTER TABLE tbl_data_sql_console_export ADD CONSTRAINT tbl_data_sql_console_export_pkey PRIMARY KEY (export_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_console_file +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_console_file_1 ON tbl_data_sql_console_file ( + source_id +); +CREATE INDEX idx_tbl_data_sql_console_file_2 ON tbl_data_sql_console_file ( + user_id +); +CREATE INDEX idx_tbl_data_sql_console_file_3 ON tbl_data_sql_console_file ( + pid +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_console_file +-- ---------------------------- +ALTER TABLE tbl_data_sql_console_file ADD CONSTRAINT tbl_sql_console_file_pkey PRIMARY KEY (file_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_data_apply +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_data_apply_1 ON tbl_data_sql_data_apply ( + apply_no +); +CREATE INDEX idx_tbl_data_sql_data_apply_2 ON tbl_data_sql_data_apply ( + user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_data_apply +-- ---------------------------- +ALTER TABLE tbl_data_sql_data_apply ADD CONSTRAINT tbl_sql_data_apply_pkey PRIMARY KEY (apply_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_data_auth +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_data_auth_1 ON tbl_data_sql_data_auth ( + user_id +); +CREATE INDEX idx_tbl_data_sql_data_auth_2 ON tbl_data_sql_data_auth ( + user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_data_auth +-- ---------------------------- +ALTER TABLE tbl_data_sql_data_auth ADD CONSTRAINT metadata_authorize_pkey PRIMARY KEY (object_id, user_id, apply_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_log +-- ---------------------------- +ALTER TABLE tbl_data_sql_log ADD CONSTRAINT tbl_data_sql_log_pkey PRIMARY KEY (sql_log_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_info +-- ---------------------------- +CREATE INDEX idx_docker_apply_info_1 ON tbl_docker_apply_info ( + apply_user_id , + service_type +); +CREATE INDEX idx_docker_apply_info_3 ON tbl_docker_apply_info ( + bus_status +); +CREATE INDEX idx_docker_apply_info_4 ON tbl_docker_apply_info ( + create_by +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_info +-- ---------------------------- +ALTER TABLE tbl_docker_apply_info ADD CONSTRAINT pk_tbl_docker_apply_info PRIMARY KEY (apply_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_lib +-- ---------------------------- +CREATE INDEX idx_docker_apply_lib_1 ON tbl_docker_apply_lib ( + apply_id +); +CREATE INDEX idx_docker_apply_lib_2 ON tbl_docker_apply_lib ( + file_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_lib +-- ---------------------------- +ALTER TABLE tbl_docker_apply_lib ADD CONSTRAINT pk_tbl_docker_apply_lib PRIMARY KEY (apply_lib_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_review +-- ---------------------------- +CREATE INDEX index_docker_apply_review_1 ON tbl_docker_apply_review ( + apply_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_review +-- ---------------------------- +ALTER TABLE tbl_docker_apply_review ADD CONSTRAINT pk_tbl_docker_apply_review PRIMARY KEY (review_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_review_dtl +-- ---------------------------- +CREATE INDEX index_docker_apply_review_dtl_1 ON tbl_docker_apply_review_dtl ( + review_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_review_dtl +-- ---------------------------- +ALTER TABLE tbl_docker_apply_review_dtl ADD CONSTRAINT pk_tbl_docker_apply_review_dtl PRIMARY KEY (review_dtl_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_client_info +-- ---------------------------- +ALTER TABLE tbl_docker_client_info ADD CONSTRAINT pk_tbl_docker_client_info PRIMARY KEY (docker_server_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_config_hardware +-- ---------------------------- +ALTER TABLE tbl_docker_config_hardware ADD CONSTRAINT pk_tbl_docker_config_hardware PRIMARY KEY (config_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_download_apply +-- ---------------------------- +CREATE INDEX idx_docker_download_apply_1 ON tbl_docker_download_apply ( + apply_id +); +CREATE INDEX idx_docker_download_apply_2 ON tbl_docker_download_apply ( + apply_user_id +); +CREATE INDEX index__docker_download_apply_1 ON tbl_docker_download_apply ( + apply_user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_download_apply +-- ---------------------------- +ALTER TABLE tbl_docker_download_apply ADD CONSTRAINT pk_tbl_docker_download_apply PRIMARY KEY (download_apply_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_images +-- ---------------------------- +ALTER TABLE tbl_docker_images ADD CONSTRAINT pk_tbl_docker_images PRIMARY KEY (docker_image_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_port_list +-- ---------------------------- +ALTER TABLE tbl_docker_port_list ADD CONSTRAINT pk_tbl_docker_port_list PRIMARY KEY (docker_port_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_portainer_user +-- ---------------------------- +ALTER TABLE tbl_docker_portainer_user ADD CONSTRAINT pk_tbl_docker_portainer_user PRIMARY KEY (docker_account_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_vpn +-- ---------------------------- +ALTER TABLE tbl_docker_vpn ADD CONSTRAINT pk_tbl_docker_vpn PRIMARY KEY (vpn_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_with_user +-- ---------------------------- +CREATE INDEX idx_docker_with_user_1 ON tbl_docker_with_user ( + apply_user_id +); +CREATE INDEX idx_docker_with_user_2 ON tbl_docker_with_user ( + bus_status +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_with_user +-- ---------------------------- +ALTER TABLE tbl_docker_with_user ADD CONSTRAINT pk_tbl_docker_with_user PRIMARY KEY (apply_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_with_user_account +-- ---------------------------- +CREATE INDEX idx_docker_with_user_account_1 ON tbl_docker_with_user_account ( + apply_id +); +CREATE INDEX idx_docker_with_user_account_2 ON tbl_docker_with_user_account ( + bus_status +); +CREATE INDEX index__docker_with_user_account_1 ON tbl_docker_with_user_account ( + apply_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_with_user_account +-- ---------------------------- +ALTER TABLE tbl_docker_with_user_account ADD CONSTRAINT pk_tbl_docker_with_user_account PRIMARY KEY (account_id); + +-- ---------------------------- +-- Indexes structure for table tbl_org_api_auth +-- ---------------------------- +CREATE INDEX idx_tbl_org_api_auth_1 ON tbl_org_api_auth ( + org_no +); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_api_auth +-- ---------------------------- +ALTER TABLE tbl_org_api_auth ADD CONSTRAINT tbl_instit_api_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Indexes structure for table tbl_org_config +-- ---------------------------- +CREATE INDEX idx_tbl_org_config_1 ON tbl_org_config ( + org_no +); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_config +-- ---------------------------- +ALTER TABLE tbl_org_config ADD CONSTRAINT tbl_org_config_pkey PRIMARY KEY (config_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_info +-- ---------------------------- +ALTER TABLE tbl_org_info ADD CONSTRAINT pk_org_info PRIMARY KEY (org_no); + +-- ---------------------------- +-- Indexes structure for table tbl_org_statistics +-- ---------------------------- +CREATE INDEX idx_tbl_org_statistics_1 ON tbl_org_statistics ( + org_no , + api_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_statistics +-- ---------------------------- +ALTER TABLE tbl_org_statistics ADD CONSTRAINT pk_tbl_org_statistics PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_content +-- ---------------------------- +ALTER TABLE tbl_portal_content ADD CONSTRAINT pk_tbl_portal_content PRIMARY KEY (content_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_logininfor_copy1 +-- ---------------------------- +ALTER TABLE tbl_portal_logininfor_copy1 ADD CONSTRAINT tbl_portal_logininfor_copy1_pkey PRIMARY KEY (info_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_oper_log_copy1 +-- ---------------------------- +ALTER TABLE tbl_portal_oper_log_copy1 ADD CONSTRAINT tbl_portal_oper_log_copy1_pkey PRIMARY KEY (oper_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_user +-- ---------------------------- +ALTER TABLE tbl_portal_user ADD CONSTRAINT pk_tbl_portal_user PRIMARY KEY (user_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_user_msg +-- ---------------------------- +ALTER TABLE tbl_portal_user_msg ADD CONSTRAINT pk_tbl_portal_user_msg PRIMARY KEY (msg_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_base_line +-- ---------------------------- +ALTER TABLE tbl_prd_base_line ADD CONSTRAINT tbl_prd_line_info_pkey PRIMARY KEY (line_name, line_code); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_base_line_station +-- ---------------------------- +ALTER TABLE tbl_prd_base_line_station ADD CONSTRAINT tbl_prd_line_station_info_pkey PRIMARY KEY (line_code, levels); + +-- ---------------------------- +-- Indexes structure for table tbl_prd_line_metric_day +-- ---------------------------- +CREATE INDEX metric_day_index ON tbl_prd_line_metric_day ( + metric_date +); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_line_metric_day ADD CONSTRAINT tbl_prd_line_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_metric_hour +-- ---------------------------- +ALTER TABLE tbl_prd_line_metric_hour ADD CONSTRAINT tbl_prd_line_metric_hour_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_metric_month +-- ---------------------------- +ALTER TABLE tbl_prd_line_metric_month ADD CONSTRAINT tbl_prd_line_metric_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_metric_day ADD CONSTRAINT tbl_prd_line_station_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_metric_hour +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_metric_hour ADD CONSTRAINT tbl_prd_line_station_metric_hour_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_metric_month +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_metric_month ADD CONSTRAINT tbl_prd_line_station_metric_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_trans_day +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_trans_day ADD CONSTRAINT tbl_prd_line_station_trans_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_trans_hour +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_trans_hour ADD CONSTRAINT tbl_prd_line_station_trans_hour_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_trans_month +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_trans_month ADD CONSTRAINT tbl_prd_line_station_trans_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_route_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_route_metric_day ADD CONSTRAINT tbl_prd_route_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_metric_day ADD CONSTRAINT tbl_prd_station_freq_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_metric_month +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_metric_month ADD CONSTRAINT tbl_prd_station_freq_metric_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_trans_day +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_trans_day ADD CONSTRAINT tbl_prd_station_freq_trans_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_trans_month +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_trans_month ADD CONSTRAINT tbl_prd_station_freq_trans_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_sync_record +-- ---------------------------- +ALTER TABLE tbl_prd_sync_record ADD CONSTRAINT tbl_prd_sync_record_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Indexes structure for table tbl_public_files +-- ---------------------------- +CREATE INDEX idx_public_files_1 ON tbl_public_files ( + uuid +); +CREATE INDEX idx_public_files_2 ON tbl_public_files ( + create_by , + file_source_type +); +CREATE INDEX idx_public_files_3 ON tbl_public_files ( + file_busi_id , + file_source_type +); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_files +-- ---------------------------- +ALTER TABLE tbl_public_files ADD CONSTRAINT pk_tbl_public_files PRIMARY KEY (file_id); + +-- ---------------------------- +-- Indexes structure for table tbl_public_files_progress +-- ---------------------------- +CREATE INDEX idx_sys_files_progress_1 ON tbl_public_files_progress ( + file_id , + uuid +); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_files_progress +-- ---------------------------- +ALTER TABLE tbl_public_files_progress ADD CONSTRAINT pk_tbl_public_files_progress PRIMARY KEY (file_progress_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_msg_template +-- ---------------------------- +ALTER TABLE tbl_public_msg_template ADD CONSTRAINT pk_tbl_public_msg_template PRIMARY KEY (template_id); + +-- ---------------------------- +-- Indexes structure for table tbl_public_phone_msg_log +-- ---------------------------- +CREATE INDEX idx_public_phone_msg_log_1 ON tbl_public_phone_msg_log ( + phone_number +); +CREATE INDEX idx_public_phone_msg_log_2 ON tbl_public_phone_msg_log ( + msg_type +); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_phone_msg_log +-- ---------------------------- +ALTER TABLE tbl_public_phone_msg_log ADD CONSTRAINT pk_tbl_public_phone_msg_log PRIMARY KEY (msg_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_centime_delay +-- ---------------------------- +ALTER TABLE tbl_qa_centime_delay ADD CONSTRAINT tbl_qa_centime_delay_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_pos_match_rate +-- ---------------------------- +ALTER TABLE tbl_qa_pos_match_rate ADD CONSTRAINT tbl_qa_pos_match_rate_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_route_daily_count +-- ---------------------------- +ALTER TABLE tbl_qa_route_daily_count ADD CONSTRAINT tbl_qa_route_daily_count_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_route_miss +-- ---------------------------- +ALTER TABLE tbl_qa_route_miss ADD CONSTRAINT tbl_qa_route_miss_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_route_turnover_time +-- ---------------------------- +ALTER TABLE tbl_qa_route_turnover_time ADD CONSTRAINT tbl_qa_route_turnover_time_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_station_miss +-- ---------------------------- +ALTER TABLE tbl_qa_station_miss ADD CONSTRAINT tbl_qa_station_miss_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_vehicle_daily_count +-- ---------------------------- +ALTER TABLE tbl_qa_vehicle_daily_count ADD CONSTRAINT tbl_qa_vehicle_daily_count_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sftp_user +-- ---------------------------- +ALTER TABLE tbl_sftp_user ADD CONSTRAINT pk_tbl_sftp_user PRIMARY KEY (sftp_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sftp_user_file +-- ---------------------------- +ALTER TABLE tbl_sftp_user_file ADD CONSTRAINT pk_tbl_sftp_user_file PRIMARY KEY (sftp_file_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_config +-- ---------------------------- +ALTER TABLE tbl_sys_config ADD CONSTRAINT pk_tbl_sys_config PRIMARY KEY (config_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_dept +-- ---------------------------- +ALTER TABLE tbl_sys_dept ADD CONSTRAINT pk_tbl_sys_dept PRIMARY KEY (dept_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_dict_data +-- ---------------------------- +CREATE INDEX idx_sys_dict_data_1 ON tbl_sys_dict_data ( + dict_type +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_dict_data +-- ---------------------------- +ALTER TABLE tbl_sys_dict_data ADD CONSTRAINT pk_tbl_sys_dict_data PRIMARY KEY (dict_code); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_dict_type +-- ---------------------------- +ALTER TABLE tbl_sys_dict_type ADD CONSTRAINT pk_tbl_sys_dict_type PRIMARY KEY (dict_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_job +-- ---------------------------- +ALTER TABLE tbl_sys_job ADD CONSTRAINT pk_tbl_sys_job PRIMARY KEY (job_id, job_name, job_group); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_job_log +-- ---------------------------- +ALTER TABLE tbl_sys_job_log ADD CONSTRAINT pk_tbl_sys_job_log PRIMARY KEY (job_log_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_logininfor_2024 +-- ---------------------------- +-- ---------------------------- +-- Indexes structure for table tbl_sys_logininfor_default +-- ---------------------------- +CREATE UNIQUE INDEX tbl_sys_logininfor_default_pkey ON tbl_sys_logininfor_default ( + info_id , + login_time +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_logininfor_default +-- ---------------------------- +ALTER TABLE tbl_sys_logininfor_default ADD CONSTRAINT tbl_sys_logininfor_default_pkey PRIMARY KEY (info_id, login_time); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_menu +-- ---------------------------- +ALTER TABLE tbl_sys_menu ADD CONSTRAINT pk_tbl_sys_menu PRIMARY KEY (menu_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_notice +-- ---------------------------- +ALTER TABLE tbl_sys_notice ADD CONSTRAINT pk_tbl_sys_notice PRIMARY KEY (notice_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_oper_log_2024 +-- ---------------------------- +-- ---------------------------- +-- Indexes structure for table tbl_sys_oper_log_default +-- ---------------------------- +CREATE UNIQUE INDEX tbl_sys_oper_log_default_pkey ON tbl_sys_oper_log_default ( + oper_id , + oper_time +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_oper_log_default +-- ---------------------------- +ALTER TABLE tbl_sys_oper_log_default ADD CONSTRAINT tbl_sys_oper_log_default_pkey PRIMARY KEY (oper_id, oper_time); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_post +-- ---------------------------- +ALTER TABLE tbl_sys_post ADD CONSTRAINT pk_tbl_sys_post PRIMARY KEY (post_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_role +-- ---------------------------- +ALTER TABLE tbl_sys_role ADD CONSTRAINT pk_tbl_sys_role PRIMARY KEY (role_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_role_dept +-- ---------------------------- +ALTER TABLE tbl_sys_role_dept ADD CONSTRAINT pk_tbl_sys_role_dept PRIMARY KEY (role_id, dept_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_role_menu +-- ---------------------------- +ALTER TABLE tbl_sys_role_menu ADD CONSTRAINT pk_tbl_sys_role_menu PRIMARY KEY (role_id, menu_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_user +-- ---------------------------- +CREATE INDEX idx_sys_user_1 ON tbl_sys_user ( + dept_id +); +CREATE INDEX idx_sys_user_2 ON tbl_sys_user ( + phonenumber +); +CREATE INDEX idx_tbl_sys_user_1 ON tbl_sys_user ( + dept_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_user +-- ---------------------------- +ALTER TABLE tbl_sys_user ADD CONSTRAINT pk_tbl_sys_user PRIMARY KEY (user_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_user_post +-- ---------------------------- +CREATE INDEX idx_tbl_sys_user_post_1 ON tbl_sys_user_post ( + post_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_user_post +-- ---------------------------- +ALTER TABLE tbl_sys_user_post ADD CONSTRAINT pk_tbl_sys_user_post PRIMARY KEY (user_id, post_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_user_role +-- ---------------------------- +ALTER TABLE tbl_sys_user_role ADD CONSTRAINT pk_tbl_sys_user_role PRIMARY KEY (user_id, role_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_warning_contact +-- ---------------------------- +ALTER TABLE tbl_sys_warning_contact ADD CONSTRAINT pk_tbl_sys_warning_contact PRIMARY KEY (id); diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/pom.xml new file mode 100644 index 00000000..6f37e207 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15/pom.xml @@ -0,0 +1,163 @@ + + + 4.0.0 + pom + + + org.springframework.boot + spring-boot-starter-parent + 2.6.7 + + + com.jiuyv.sptcc.agile + agile-data + 0.2.15 + agile-data + agile-data + + + UTF-8 + UTF-8 + 1.8 + 1.8 + 1.8 + 3.1.1 + 3.1.0 + 3.1.0 + 2021.0.2 + 3.3 + 6.2.3.Final + 3.1.0 + 1.3.0 + 0.2.15 + 0.1.13 + 0.1.6 + 1.4.6 + 2.8.5 + 0.1.55 + 20.3 + 3.14.9 + 6.3 + 1.2.11 + -Xdoclint:none + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + ${mybatis.version} + + + + com.jiuyv.sptcc.agile + agile-data-api + ${agile.service.api} + + + + com.jiuyv.sptcc.agile + agile-common + ${agile-common} + + + + com.jiuyv.sptcc.agile + agile-mobile-message-api + ${message-api.version} + + + + + + + + + agile-data-api + agile-data-service + + + + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15 + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.15 + + + + + nexus-releases + Internal Releases + http://172.16.12.11:8082/repository/maven-releases/ + + + + nexus-snapshots + Internal Snapshots + http://172.16.12.11:8082/repository/maven-snapshots/ + + + + + + + jiuyv + jiuyv + http://172.16.12.11:8082/repository/maven-public/ + + true + always + + + + + aliyun-releases + Internal Releases + http://maven.aliyun.com/nexus/content/groups/public + + + + spring-milestone-releases + Internal Releases + https://repo.spring.io/milestone + + + + + jiuyv + jiuyu Plugin Repository + http://172.16.12.11:8082/repository/maven-public/ + + true + always + + + + aliyun-releases + Internal Releases + http://maven.aliyun.com/nexus/content/groups/public + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + none + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/pom.xml new file mode 100644 index 00000000..315a93a3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/pom.xml @@ -0,0 +1,73 @@ + + + + agile-data + com.jiuyv.sptcc.agile + 0.2.16 + + 4.0.0 + jar + + agile-data-api + + + 8 + 8 + + true + + + + + + com.fasterxml.jackson.core + jackson-annotations + + + org.hibernate.validator + hibernate-validator + compile + + + + org.springframework + spring-web + + + + org.springframework + spring-context + + + + com.jiuyv.sptcc.agile + agile-common + + + + io.github.openfeign + feign-core + + + + org.apache.tomcat.embed + tomcat-embed-core + + + org.junit.jupiter + junit-jupiter-api + test + + + org.springframework + spring-test + test + + + org.springframework.boot + spring-boot-test + test + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/OrgAuthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/OrgAuthApi.java new file mode 100644 index 00000000..6fd7e300 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/OrgAuthApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * @ClassName : OrgAuthApi + * @Description : 获取机构权限列表 + * @Author : sky + * @Date: 2023-07-13 11:45 + */ +public interface OrgAuthApi { + + String PREFIX_PATH = "/public/agile-data/auth"; + + @PostMapping(PREFIX_PATH + "/info") + R getOrgAuth(OrgAuthReq req); + /** + * 接口权限验证 + * @param request 入参 + */ + @PostMapping(PREFIX_PATH + "/auth") + R check(OrgAuthRequest request); + + /** + * 获取密钥 + * @param orgCode + * @return + */ + @GetMapping(PREFIX_PATH+"/getKey") + R getKey(@RequestParam("orgCode") String orgCode); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java new file mode 100644 index 00000000..2e43162b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.dataservice.api.batch; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.batch.DateVo; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +public interface BatchApi { + + String PREFIX_PATH = "/public/agile-data"; + + /** + * 机构到期提醒 + * + * @param date + * @return + */ + @PostMapping(PREFIX_PATH + "/orgInfo/expire") + R expire(@RequestParam(value = "date",required = false) String date); + + /** + * 机构到期下架 + * + * @param date + * @return + */ + @PostMapping(PREFIX_PATH + "/orgInfo/down") + R down(@RequestParam(value = "date",required = false) String date); + + + /** + * pos匹配率异常告警 + * @param dateVo + * @return + */ + @PostMapping(PREFIX_PATH + "/pos/posRate") + R posCheck(DateVo dateVo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/ApiLogApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/ApiLogApi.java new file mode 100644 index 00000000..0799737f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/ApiLogApi.java @@ -0,0 +1,28 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiLogRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiLogResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @ClassName : ApiLogApi + * @Description : 日志接口 + * @Author : sky + * @Date: 2023-09-22 10:25 + */ +public interface ApiLogApi { + + + String PREFIX_PATH = "/public/agile-data/apilog"; + + + @PostMapping(PREFIX_PATH + "/page") + R> list(ApiLogRequest request); + + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("id") Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/DataApiFeign.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/DataApiFeign.java new file mode 100644 index 00000000..6ec1b3c6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/DataApiFeign.java @@ -0,0 +1,145 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import feign.Response; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 敏捷API + * + * @author yulei + */ +public interface DataApiFeign { + + String PREFIX_PATH = "/public/agile-data/agileApi"; + + + @GetMapping(PREFIX_PATH + "/getPrefixPath") + R getApiPrefixPath(); + + /** + * 获取详情 + * + * @param id + * @return + */ + @PostMapping(PREFIX_PATH + "/getDate") + R getDataApiById(@RequestParam("id") Long id); + + /** + * 获取数据源的API列表 + * + * @param sourceId + * @return + */ + @GetMapping(PREFIX_PATH + "/sourceList") + R> getDataApiList(@RequestParam("sourceId") Long sourceId); + + /** + * 获取分页列表 + * + * @param apiQuery + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> getDataApiPage(ApiPageRequest apiQuery); + + /** + * 新增API + * + * @param dataApi + * @return + */ + @PostMapping(PREFIX_PATH + "/add") + R saveDataApi(ApiAddRequest dataApi); + + /** + * 修改API + * + * @param dataApi + * @return + */ + @PostMapping(PREFIX_PATH + "/update") + R updateDataApi(ApiUpdateRequest dataApi); + + /** + * 删除API + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/delete") + R deleteDataApiById(@RequestBody @Validated ApiDelRequest request); + + /** + * 复制API + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/copy") + R copyDataApi(ApiCopyRequest request); + + /** + * 注册API + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/register") + R registerDataApi(ApiStatusRequest request); + + /** + * 发布API + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/release") + R releaseDataApi(ApiStatusRequest dto); + + /** + * 注销API + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/cancel") + R cancelDataApi(ApiStatusRequest dto); + + /** + * 下架API + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/down") + R downDataApi(ApiStatusRequest dto); + + /** + * 获取api树状结构数据 + * + * @return + */ + @PostMapping(PREFIX_PATH + "/tree") + R> apiTree(); + + /** + * 生成接口文档 + * + * @param id + * @return + */ + @GetMapping(PREFIX_PATH + "/word/down") + Response wordDataApi(@RequestParam("id") Long id) throws Exception; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgCfgConsoleApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgCfgConsoleApi.java new file mode 100644 index 00000000..5dde2c4a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgCfgConsoleApi.java @@ -0,0 +1,75 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 机构配置接口 + * + * @ClassName : OrgConfigApi + * @Description : + * @Author : sky + * @Date: 2023-09-07 15:44 + */ +public interface OrgCfgConsoleApi { + + String PREFIX_PATH = "/public/agile-data/orgConfig"; + + /** + * 分页查询列表 + * + * @param query + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(OrgConfigQueryRequest query); + + /** + * 查询详细 + * + * @param configId + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R queryDetail(@RequestParam("configId") Long configId); + + /** + * 新增 + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/add") + R add(OrgConfigAddRequest dto); + + /** + * 修改 + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/edit") + R edit(OrgConfigEditRequest dto); + + /** + * 删除 + * + * @param configId + * @return + */ + @PostMapping(PREFIX_PATH + "/delete") + R delete(@RequestParam("configId") Long configId); + + + @GetMapping(PREFIX_PATH + "/getOrgCfg") + R> getConfig(@RequestParam("orgCode") String orgCode); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgInfoConsoleApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgInfoConsoleApi.java new file mode 100644 index 00000000..c17163cc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgInfoConsoleApi.java @@ -0,0 +1,108 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 机构管控台服务接口 + * + * @ClassName : OrgInfoApi + * @Description : + * @Author : sky + * @Date: 2023-09-07 15:51 + */ +public interface OrgInfoConsoleApi { + + String PREFIX_PATH = "/public/agile-data/orgInfo"; + + /** + * 分页查询 + * + * @param query + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(OrgInfoQueryReq query); + + /** + * 详情 + * + * @param orgNo + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R getInfo(@RequestParam("orgNo") String orgNo); + + /** + * 新增接口 + * + * @param addReq + * @return + */ + @PostMapping(PREFIX_PATH + "/add") + R add(OrgInfoAddReq addReq); + + /** + * 编辑接口 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/edit") + R edit(OrgInfoEditReq request); + + /** + * 删除接口 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/remove") + R remove(OrgDelReq request); + + /** + * 启用机构 + */ + @PostMapping(PREFIX_PATH + "/run") + R run(OrgInfoStatusReq request); + + /** + * 停用机构 + */ + @PostMapping(PREFIX_PATH + "/stop") + R stop(OrgInfoStatusReq request); + + /** + * 获取密钥 + * + * @return + */ + @GetMapping(PREFIX_PATH + "/key") + R getGenerateKeyHex(); + + /** + * 授权 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/auth") + R orgApiAuth(OrgApiAuthRequest request); + + /** + * 获取权限信息 + * + * @param orgNo + * @return + */ + @GetMapping(PREFIX_PATH + "/auth/list") + R orgApiAuthInfo(@RequestParam("orgNo") String orgNo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgStcsConsoleApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgStcsConsoleApi.java new file mode 100644 index 00000000..50985f92 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgStcsConsoleApi.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiStatisticsResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 机构接口调用次数统计 + * + * @ClassName : OrgStcsConsoleApi + * @Author : sky + * @Date: 2023-09-07 16:02 + */ +public interface OrgStcsConsoleApi { + + String PREFIX_PATH = "/public/agile-data/orgStcs"; + + @PostMapping(PREFIX_PATH + "/list") + R> queryByPage(OrgStatisticsQueryReq request); + + /** + * 查询用户接口调用统计列表 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/userApiStatistics") + R> getUserApiStatistics(ApiUserRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/DataApiFeignApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/DataApiFeignApi.java new file mode 100644 index 00000000..91144fbb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/DataApiFeignApi.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.api.portal; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +public interface DataApiFeignApi { + + String PREFIX_PATH = "/public/agile-data/agileApi"; + + /** + * 查询用户接口列表 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/userApiList") + R> getUserApiList(ApiUserRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/SdkDownload.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/SdkDownload.java new file mode 100644 index 00000000..f56a2997 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/SdkDownload.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.api.portal; + +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; + +/** + * @ClassName : SdkDownload + * @Description : + * @Author : sky + * @Date: 2023-09-21 10:42 + */ +public interface SdkDownload { + + String PREFIX_PATH = "/public/agile-data/port"; + + /** + * sdk 文件下载 + * + * @return + */ + @GetMapping(PREFIX_PATH + "/download/sdk") + ResponseEntity download(); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/DownloadApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/DownloadApi.java new file mode 100644 index 00000000..c3433710 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/DownloadApi.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import feign.Response; +import org.springframework.web.bind.annotation.PostMapping; + +import java.io.IOException; + + +/** + * sftp文件下载 + * + * @ClassName : DownloadApi + * @Description : + * @Author : sky + * @Date: 2023-09-13 13:21 + */ +public interface DownloadApi { + + String PREFIX_PATH = "/public/agile-data/product"; + + @PostMapping(PREFIX_PATH + "/download") + Response download(DownLoadRequest request) throws IOException; + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineInfoApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineInfoApi.java new file mode 100644 index 00000000..313112d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineInfoApi.java @@ -0,0 +1,68 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineInfoReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineStationInfoReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineInfoRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineStationInfoRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 线路站点基础信息表 + * + * @ClassName : LineInfoApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 18:51 + */ +public interface LineInfoApi { + + String PREFIX_PATH = "/public/agile-data/lineInfo"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineInfoReq request); + + + /** + * 根据线路名称获取线路编码 + * + * @param lineName + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("lineName") String lineName); + + + /** + * 获取站点列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/stationList") + R> stationList(LineStationInfoReq request); + + + /** + * 根据站点名称获取站点信息 + * + * @param lineName + * @return + */ + @GetMapping(PREFIX_PATH + "/stationDetail") + R stationDetail(@RequestParam("lineName") String lineName); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricDayApi.java new file mode 100644 index 00000000..1a2c3791 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricDayApi.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : LineMetricDay + * @Description : + * @Author : sky + * @Date: 2023-09-18 15:17 + */ +public interface LineMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/lineDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineDayPageReq request); + + + /** + * 机构获取线路日客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(LineDayReqRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricHourApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricHourApi.java new file mode 100644 index 00000000..4d6e86e2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricHourApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : LineMetricDay + * @Description : + * @Author : sky + * @Date: 2023-09-18 15:17 + */ +public interface LineMetricHourApi { + + String PREFIX_PATH = "/public/agile-data/linHour"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineHourPageReq request); + + + + /** + * 机构获取线路小时客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(LineHourRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricMonthApi.java new file mode 100644 index 00000000..a7e7dac8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricMonthApi.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : LineMetricDay + * @Description : + * @Author : sky + * @Date: 2023-09-18 15:17 + */ +public interface LineMetricMonthApi { + + String PREFIX_PATH = "/public/agile-data/linMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineMetricMonthReq request); + + + /** + * 机构获取线路月客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(LineMonthRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/RouteMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/RouteMetricDayApi.java new file mode 100644 index 00000000..fc92e38f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/RouteMetricDayApi.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.RouteMetricDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @ClassName : RouteMetricDayApi + * @Description : 班线 + * @Author : sky + * @Date: 2023-09-19 13:56 + */ +public interface RouteMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/routeMetricDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteMetricDayReq request); + + /** + * 查看详情 + * + * @param id + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("id") Long id); + + + + /** + * 机构获取班次日客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(RouteDayRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricDayApi.java new file mode 100644 index 00000000..8576595e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricDayApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * 常乘客站点换乘客流量 + * + * @ClassName : StationFreqMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 14:03 + */ +public interface StationFreqMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/stationFreqMetricDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationFreqMetricDayReq request); + + + /** + * 机构获站点常乘客日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqDayRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricMonthApi.java new file mode 100644 index 00000000..0c8861d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricMonthApi.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * 常乘客站点客流量月统计 + * + * @ClassName : StationFreqMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 14:03 + */ +public interface StationFreqMetricMonthApi { + + String PREFIX_PATH = "/public/agile-data/stationFreqMetricMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list( StationFreqMetricMonthReq request); + + + /** + * 机构获站点常乘客月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqMonthRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransDayApi.java new file mode 100644 index 00000000..b704b641 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransDayApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @ClassName : StationFreqTransDay + * @Description : 常乘客换乘客流量日统计 + * @Author : sky + * @Date: 2023-09-19 14:14 + */ +public interface StationFreqTransDayApi { + + + String PREFIX_PATH = "/public/agile-data/stationFreqTransDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationFreqTransDayReq request); + + + /** + * 机构获取站点换乘日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqTransDayRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransMonthApi.java new file mode 100644 index 00000000..0db5dfa7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransMonthApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @ClassName : StationFreqTransDay + * @Description : 常乘客换乘客流量月统计 + * @Author : sky + * @Date: 2023-09-19 14:14 + */ +public interface StationFreqTransMonthApi { + + + String PREFIX_PATH = "/public/agile-data/stationFreqTransMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationFreqTransMonthReq request); + + + /** + * 机构获取站点换乘月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqTransMonthRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricDayApi.java new file mode 100644 index 00000000..4bca773f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricDayApi.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 13:33 + */ +public interface StationMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/StationMetricDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricDayReq request); + + /** + * 机构获取站点日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationDayRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricHourApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricHourApi.java new file mode 100644 index 00000000..1de15825 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricHourApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 13:33 + */ +public interface StationMetricHourApi { + + String PREFIX_PATH = "/public/agile-data/StationMetricHour"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricHourReq request); + + + /** + * 机构获取站点小时路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationHourRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricMonthApi.java new file mode 100644 index 00000000..a1626d6d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricMonthApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 13:33 + */ +public interface StationMetricMonthApi { + + String PREFIX_PATH = "/public/agile-data/StationMetricMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricMonthReq request); + + + /** + * 机构获取站点月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationMonthRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransDayApi.java new file mode 100644 index 00000000..9fdc8566 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransDayApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationTransDayApi + * @Description : 换乘 + * @Author : sky + * @Date: 2023-09-19 13:45 + */ +public interface StationTransDayApi { + + + String PREFIX_PATH = "/public/agile-data/StationTransDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationTransDayReq request); + + + /** + * 机构获取站点换乘日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationTransDayRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransHourApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransHourApi.java new file mode 100644 index 00000000..70fd2d24 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransHourApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationTransDayApi + * @Description : 换乘 + * @Author : sky + * @Date: 2023-09-19 13:45 + */ +public interface StationTransHourApi { + + + String PREFIX_PATH = "/public/agile-data/StationTransHour"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricHourReq request); + + + /** + * 机构获取站点换乘小时路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationTransHourRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransMonthApi.java new file mode 100644 index 00000000..4eaf6132 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransMonthApi.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationTransDayApi + * @Description : 换乘 + * @Author : sky + * @Date: 2023-09-19 13:45 + */ +public interface StationTransMonthApi { + + String PREFIX_PATH = "/public/agile-data/StationTransMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationTransMonthReq request); + + + /** + * 机构获取站点换乘月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationTransMonthRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/CentimeDelayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/CentimeDelayApi.java new file mode 100644 index 00000000..81dc92af --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/CentimeDelayApi.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.CentimeDelayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 延迟上送 + * + * @Author : sky + * @Date: 2023-09-20 17:35 + */ +public interface CentimeDelayApi { + + String PREFIX_PATH = "/public/agile-data/quality/centimeDelay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(CentimeDelayReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/PosMatchRateApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/PosMatchRateApi.java new file mode 100644 index 00000000..7fa22436 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/PosMatchRateApi.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.PosMatchRateRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * Pos匹配率 + * + * @ClassName : PosMatchRateApi + * @Description : + * @Author : sky + * @Date: 2023-09-20 17:25 + */ +public interface PosMatchRateApi { + + + String PREFIX_PATH = "/public/agile-data/quality/posMatchRate"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(PosMatchRateReq request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteDailyCountApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteDailyCountApi.java new file mode 100644 index 00000000..af82e804 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteDailyCountApi.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteDailyRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 日运营线路数 + * + * @ClassName : RouteDailyCountApi + * @Description : 日运营线路数 + * @Author : sky + * @Date: 2023-09-20 17:19 + */ +public interface RouteDailyCountApi { + + String PREFIX_PATH = "/public/agile-data/quality/routeDailyCount"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteDailyReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteMissApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteMissApi.java new file mode 100644 index 00000000..705e158b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteMissApi.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteMissRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 班次缺失率 + * + * @Author : sky + * @Date: 2023-09-20 16:58 + */ +public interface RouteMissApi { + + String PREFIX_PATH = "/public/agile-data/quality/routeMiss"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteMissReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteTurnoverTimeApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteTurnoverTimeApi.java new file mode 100644 index 00000000..5f23deb8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteTurnoverTimeApi.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteTurnoverRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 班次周转时间 + * + * @ClassName : RouteTurnoverTimeApi + * @Description : 班次周转时间 + * @Author : sky + * @Date: 2023-09-20 16:44 + */ +public interface RouteTurnoverTimeApi { + + String PREFIX_PATH = "/public/agile-data/quality/routeTurnover"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteTurnoverReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/StationMissApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/StationMissApi.java new file mode 100644 index 00000000..3965e2d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/StationMissApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.StationMissRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 站点缺失率 + * + * @ClassName : StationMissApi + * @Description : + * @Author : sky + * @Date: 2023-09-20 16:33 + */ +public interface StationMissApi { + + + String PREFIX_PATH = "/public/agile-data/quality/stationMiss"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMissReq request); + + + /** + * 获取列表信息 + * + * @param id + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("id") Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/VehicleDailyApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/VehicleDailyApi.java new file mode 100644 index 00000000..0e831b5b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/VehicleDailyApi.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDailyRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDayResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : VehicleDailyApi + * @Description : 运营车辆数 + * @Author : sky + * @Date: 2023-09-20 15:05 + */ +public interface VehicleDailyApi { + + String PREFIX_PATH = "/public/agile-data/quality/vehicleDaily"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R list(VehicleDailyReq request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java new file mode 100644 index 00000000..31a760d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum AlgorithmCrypto implements IDictEnum { + + BASE64("1", "BASE64加密"), + MD5("2", "MD5加密"), + SHA_1("3", "SHA_1加密"), + SHA_256("4", "SHA_256加密"), + AES("5", "AES加密"); + // DES("6", "DES加密"); + + private final String key; + + private final String val; + + AlgorithmCrypto(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + public String getVal() { + return val; + } + + public static AlgorithmCrypto getAlgorithmCrypto(String algorithmCrypt) { + for (AlgorithmCrypto type : AlgorithmCrypto.values()) { + if (type.key.equals(algorithmCrypt)) { + return type; + } + } + return BASE64; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApiCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApiCrypto.java new file mode 100644 index 00000000..bf51fe5e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApiCrypto.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public class ApiCrypto { + + public enum ApiState implements IDictEnum{ + WAIT("1","待注册"), + REGISTER("2","已注册"), + RELEASE("3","已发布"); + + ApiState(String code, String msg) { + this.code = code; + this.msg = msg; + } + private final String code; + private final String msg; + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApicodeEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApicodeEnum.java new file mode 100644 index 00000000..50b429ab --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApicodeEnum.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + + +public enum ApicodeEnum implements IDictEnum { + + LINE_HOUR("lineHour", "线路小时客流指标"), + LINE_DAY("lineDay", "线路每日客流指标"), + LINE_MONTH("lineMonth", "线路每月客流指标"), + STATION_HOUR("stationHour", "站点小时客流指标"), + STATION_DAY("stationDay", "站点每日客流指标"), + STATION_MONTH("stationMonth", "站点每月客流指标"), + STATION_TRANS_HOUR("stationTransHour", "站点换乘小时指标"), + STATION_TRANS_DAY("stationTransDay", "站点换乘日指标"), + STATION_TRNAS_MONTH("stationTransMonth", "站点换乘月指标"), + STATION_FREQ_DAY("stationFreqDay", "站点常乘客日指标"), + STATION_FREQ_MONTH("stationFreqMonth", "站点常乘客月指标"), + STATION_FREQ_TRANS_DAY("stationFreqTransDay", "站点常乘客换乘日指标"), + STATION_FREQ_TRANS_MONTH("stationFreqTransMonth", "站点常乘客换乘月指标"), + ROUTE_DAY("routeDay", "班次客流量"), + DWONLOAD("download", "下载接口"); + + private final String code; + + private final String msg; + + + ApicodeEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ConfigCrypot.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ConfigCrypot.java new file mode 100644 index 00000000..4ef814c8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ConfigCrypot.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public class ConfigCrypot { + + public enum ConfigStatus implements IDictEnum{ + + STOP("1","停用"), + NORMAL("0","正常"); + + ConfigStatus(String code, String msg) { + this.code = code; + this.msg = msg; + } + + private String code; + + private String msg; + + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 机构配置参数 + * + * @ClassName : OrgCfnKeyEnum + * @Description : + * @Author : sky + * @Date: 2023-09-22 17:44 + */ + public enum OrgCfnKeyEnum implements IDictEnum { + + DATA_BEGIN("data_begin", "数据起始时间"), + DATA_END("data_end", "数据结束时间"), + DOWN_RIGHT("downLoadRigth","文件下载权限") + ; + + private final String code; + + private final String msg; + + OrgCfnKeyEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataApiEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataApiEnum.java new file mode 100644 index 00000000..b326abad --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataApiEnum.java @@ -0,0 +1,486 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +import java.math.BigDecimal; +import java.text.ParseException; +import java.text.SimpleDateFormat; + +/** + * @ClassName : DataApiEnum + * @Description : + * @Author : sky + * @Date: 2023-09-04 17:44 + */ +public class DataApiEnum { + + /** + * API状态 + */ + public enum API_STATUS implements IDictEnum { + WAIT("1", "待注册"), + REGISTER("2", "已注册"), + RELEASE("3", "已发布"), + DOWN("4", "下架"); + private final String code; + private final String msg; + + API_STATUS(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * API类型 + */ + public enum API_TYPE implements IDictEnum { + AGILE("1", "敏捷API"), + SYSTEM("2", "系统API"); + private final String code; + private final String msg; + + API_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + public enum ResType implements IDictEnum{ + + JSON("JSON", "json类型"); + + private final String code; + + private final String msg; + + ResType(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 脱敏类型 + */ + public enum CIPHER_TYPE implements IDictEnum { + + REGEX("1", "正则替换"), + ALGORITHM("2", "加密算法"); + + private final String code; + + private final String msg; + + CIPHER_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static CIPHER_TYPE getCipherType(String cipherType) { + for (CIPHER_TYPE type : CIPHER_TYPE.values()) { + if (type.code.equals(cipherType)) { + return type; + } + } + return REGEX; + } + + public String getKey() { + return code; + } + + public String getVal() { + return msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 加密规则类型 + */ + public enum ALGORITHM_CRYPTO implements IDictEnum { + + BASE64("1", "BASE64加密"), + MD5("2", "MD5加密"), + SHA_1("3", "SHA_1加密"), + SHA_256("4", "SHA_256加密"), + AES("5", "AES加密"); + + private final String code; + + private final String msg; + + ALGORITHM_CRYPTO(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static ALGORITHM_CRYPTO getAlgorithmCrypto(String algorithmCrypt) { + for (ALGORITHM_CRYPTO type : ALGORITHM_CRYPTO.values()) { + if (type.code.equals(algorithmCrypt)) { + return type; + } + } + return BASE64; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 正则规则类型 + */ + public enum REGEX_CRYPTO implements IDictEnum { + + CHINESE_NAME("1", "中文姓名"), + ID_CARD("2", "身份证号"), + FIXED_PHONE("3", "固定电话"), + MOBILE_PHONE("4", "手机号码"), + ADDRESS("5", "地址"), + EMAIL("6", "电子邮箱"), + BANK_CARD("7", "银行卡号"), + CNAPS_CODE("8", "公司开户银行联号"); + + private final String code; + + private final String msg; + + REGEX_CRYPTO(String code, String msg) { + this.code = code; + this.msg = msg; + } + + + public static REGEX_CRYPTO getRegexCrypto(String regexCrypt) { + for (REGEX_CRYPTO type : REGEX_CRYPTO.values()) { + if (type.code.equals(regexCrypt)) { + return type; + } + } + return CHINESE_NAME; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 配置方式 + */ + public enum CONFIG_TYPE implements IDictEnum { + + FORM("1", "表引导模式"), + SCRIPT("2", "脚本模式"); + + private final String code; + + private final String msg; + + CONFIG_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 参数类型 + */ + public enum ParamType implements IDictEnum { + + STRING("String", "字符串"), + INTEGER("Integer", "整型"), + DECIMAL("Number", "浮点型"), + DATE("Date", "时间"), + LIST("List", "集合"), + LONG("Long","长整型"); + + private final String code; + + private final String msg; + + ParamType(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static Object parse(ParamType paramType, Object obj) throws ParseException { + if (obj == null) { + return null; + } + switch (paramType) { + case STRING: + return obj.toString(); + + case DECIMAL: + return new BigDecimal(obj.toString()).doubleValue(); + + case INTEGER: + return java.lang.Integer.parseInt(obj.toString()); + + case LIST: + return (java.util.List) obj; + + case LONG: + return Long.valueOf(obj.toString()); + + case DATE: + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + return sdf.parse(obj.toString()); + } + return null; + } + + public static ParamType getParamType(String paramType) { + for (ParamType type : ParamType.values()) { + if (type.code.equals(paramType)) { + return type; + } + } + return STRING; + } + + public static String parse(String paramType){ + //Integer + //Long + //number + //Date + //List + //string + return null; + } + + @Override + public java.lang.String getCode() { + return code; + } + + @Override + public java.lang.String getMsg() { + return msg; + } + } + + /** + * 请求方式 + */ + public enum REQ_METHOD implements IDictEnum { + + GET("GET", "get請求"), + POST("POST", "post請求"); + + private final String code; + + private final String msg; + + REQ_METHOD(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * SQL操作符 + */ + public enum WHERE_TYPE implements IDictEnum{ + + EQUALS("=", "=", "等于"), + NOT_EQUALS("!=", "!=", "不等于"), + LIKE("LIKE", "LIKE", "全模糊查询"), + LIKE_LEFT("LIKE%", "LIKE", "左模糊查询"), + LIKE_RIGHT("%LIKE", "LIKE", "右模糊查询"), + GREATER_THAN(">", ">", "大于"), + GREATER_THAN_EQUALS(">=", ">=", "大于等于"), + LESS_THAN("<", "<", "小于"), + LESS_THAN_EQUALS("<=", "<=", "小于等于"), + NULL("isNull", "IS NULL", "是否为空"), + NOT_NULL("isNotNull", "IS NOT NULL", "是否不为空"), + IN("in", "IN", "IN"); + + private final String type; + + private final String key; + + private final String desc; + + WHERE_TYPE(String type, String key, String desc) { + this.type = type; + this.key = key; + this.desc = desc; + } + + public static WHERE_TYPE getWhereType(String whereType) { + for (WHERE_TYPE type : WHERE_TYPE.values()) { + if (type.type.equals(whereType)) { + return type; + } + } + return EQUALS; + } + + public String getType() { + return type; + } + + public String getKey() { + return key; + } + + public String getDesc() { + return desc; + } + + @Override + public String getCode() { + return type; + } + + @Override + public String getMsg() { + return desc; + } + } + + /** + * 请求方式 + */ + public enum PARAM_NULL implements IDictEnum { + + NULL("1", "可以为空"), + NOT_NULL("0", "不能为空"); + + private final String code; + + private final String msg; + + PARAM_NULL(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + public enum CipherType implements IDictEnum { + + REGEX("1", "正则替换"), + ALGORITHM("2", "加密算法"); + + private final String key; + + private final String val; + + CipherType(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + public String getVal() { + return val; + } + + public static CipherType getCipherType(String cipherType) { + for (CipherType type : CipherType.values()) { + if (type.key.equals(cipherType)) { + return type; + } + } + return REGEX; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataStatusEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataStatusEnum.java new file mode 100644 index 00000000..991fda2e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataStatusEnum.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum DataStatusEnum implements IDictEnum{ + SUCCESS("00", "成功"), + + FAILED("01", "失败"), + OTHER("99", "其他"), + ; + private final String code; + private final String msg; + + DataStatusEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/EnableState.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/EnableState.java new file mode 100644 index 00000000..884566a0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/EnableState.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum EnableState implements IDictEnum { + + DISABLE("1", "失败"), + ENABLE("0", "成功"); + + private final String code; + private final String msg; + EnableState(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/FileTypeEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/FileTypeEnum.java new file mode 100644 index 00000000..215c3fba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/FileTypeEnum.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +/** + * 文件类型枚举 + * @ClassName : FileType + * @Author : sky + * @Date: 2023-09-13 13:25 + */ +public enum FileTypeEnum implements IDictEnum { + /** + * 文件类型,文件名称 + */ + LINE_HOUR("lineHour", "获取线路小时客流指标"), + LINE_DAY("lineDay", "获取线路每日客流指标"), + LINE_MONTH("lineMonth", "获取线路每月客流指标"), + STATION_HOUR("stationHour","获取线路站点小时客流指标"), + STATION_DAY("stationDay", "获取线路站点每日客流指标"), + STATION_MONTH("stationMonth", "获取线路站点每月客流指标"), + STATION_TRANS_HOUR("stationTransHour","获取线路站点小时换乘指标"), + STATION_TRANS_DAY("stationTransDay", "获取线路站点每日换乘指标"), + STATION_TRNAS_MONTH("stationTrnasMonth", "站点换乘月指标"), + STATION_FREQ_DAY("stationFreqDay", "站点常乘客日指标"), + STATION_FREQ_MONTH("stationFreqMonth","站点常乘客日指标"), + STATION_FREQ_TRANS_DAY("stationFreqTransDay","站点常乘客换乘月日指标"), + STATION_FREQ_TRANS_MONTH("stationFreqTransMonth", "站点常乘客换乘月指标"), + ROUTE("routeMetricDay","班次客流量"), + ; + + FileTypeEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + private String code; + + private String msg; + + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + + public static FileTypeEnum getEnum(String fileType) { + if (fileType == null) { + return null; + } + FileTypeEnum[] values = FileTypeEnum.values(); + for (FileTypeEnum value : values) { + if (value.getCode().equals(fileType)) { + return value; + } + } + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/IDictEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/IDictEnum.java new file mode 100644 index 00000000..38399448 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/IDictEnum.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +/** + * 字段代码通用枚举接口 + * 便于统一方式处理 + * + * @author zhouliang + */ +public interface IDictEnum { + + public String getCode(); + + public String getMsg(); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/OrgCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/OrgCrypto.java new file mode 100644 index 00000000..faf64efd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/OrgCrypto.java @@ -0,0 +1,124 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public class OrgCrypto { + /** + * @ClassName : OrgInfoStatus + * @Description : + * @Author : sky + * @Date: 2023-07-13 17:02 + */ + public enum OrgInfoStatusCrypto implements IDictEnum { + DOWN("1", "停用"), + UP("0", "正常"), + DUE("2", "到期"); + + private final String key; + + private final String val; + + OrgInfoStatusCrypto(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } + } + + /** + * @ClassName : OrgStatus + * @Description : 机构状态枚举类 + * @Author : sky + * @Date: 2023-09-07 11:31 + */ + public enum OrgStatus implements IDictEnum { + + NORMAL("0", "正常"), + STOP("1", "停用"), + END("2", "到期"); + + private final String code; + + private final String msg; + + OrgStatus(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * @ClassName : OrgType + * @Description : + * @Author : sky + * @Date: 2023-09-07 20:51 + */ + public enum OrgType implements IDictEnum { + + /** + * 01.国家机关; + * 02.全额事业单位; + * 03.差额事业单位; + * 04.自收自支事业单位; + * 05.有限责任公司; + * 06.股份有限公司; + * 07.合伙企业; + * 08.办事处(代表处、联络处); + * 09.社会团体; + * 10.独资企业; + * 11.民办非企业单位; + * 12.其他 + */ + GJJG("01", "国家机关"), + SYDW("02", "事业单位"), + YXGS("05", "有限责任公司"), + GFGS("06", "股份有限公司"), + HHQY("07", "合伙企业"), + BSC("08", "办事处(代表处、联络处)"), + SHTT("09", "社会团体"), + DZQY("10", "独资企业"), + MBFQYDW("11", "民办非企业单位"), + OTHER("12", "其他"), + ; + + private final String code; + + private final String msg; + + OrgType(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/RegexCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/RegexCrypto.java new file mode 100644 index 00000000..b132b435 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/RegexCrypto.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum RegexCrypto implements IDictEnum { + + CHINESE_NAME("1", "中文姓名"), + ID_CARD("2", "身份证号"), + FIXED_PHONE("3", "固定电话"), + MOBILE_PHONE("4", "手机号码"), + ADDRESS("5", "地址"), + EMAIL("6", "电子邮箱"), + BANK_CARD("7", "银行卡号"), + CNAPS_CODE("8", "公司开户银行联号"); + + private final String key; + + private final String val; + + RegexCrypto(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + public String getVal() { + return val; + } + + public static RegexCrypto getRegexCrypto(String regexCrypt) { + for (RegexCrypto type : RegexCrypto.values()) { + if (type.key.equals(regexCrypt)) { + return type; + } + } + return CHINESE_NAME; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/WhereType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/WhereType.java new file mode 100644 index 00000000..6f2a0d70 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/WhereType.java @@ -0,0 +1,60 @@ +// package com.jiuyv.sptcc.agile.dataservice.dto.enums; +// +// public enum WhereType implements IDictEnum { +// +// EQUALS("1", "=", "等于"), +// NOT_EQUALS("2", "!=", "不等于"), +// LIKE("3", "LIKE", "全模糊查询"), +// LIKE_LEFT("4", "LIKE", "左模糊查询"), +// LIKE_RIGHT("5", "LIKE", "右模糊查询"), +// GREATER_THAN("6", ">", "大于"), +// GREATER_THAN_EQUALS("7", ">=", "大于等于"), +// LESS_THAN("8", "<", "小于"), +// LESS_THAN_EQUALS("9", "<=", "小于等于"), +// NULL("10", "IS NULL", "是否为空"), +// NOT_NULL("11", "IS NOT NULL", "是否不为空"), +// IN("12", "IN", "IN"); +// +// private final String type; +// +// private final String key; +// +// private final String desc; +// +// WhereType(String type, String key, String desc) { +// this.type = type; +// this.key = key; +// this.desc = desc; +// } +// +// public String getType() { +// return type; +// } +// +// public String getKey() { +// return key; +// } +// +// public String getDesc() { +// return desc; +// } +// +// public static WhereType getWhereType(String whereType) { +// for (WhereType type : WhereType.values()) { +// if (type.type.equals(whereType)) { +// return type; +// } +// } +// return EQUALS; +// } +// +// @Override +// public String getCode() { +// return key; +// } +// +// @Override +// public String getMsg() { +// return desc; +// } +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/DbSchema.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/DbSchema.java new file mode 100644 index 00000000..d334f04b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/DbSchema.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 数据源连接信息Model + */ +public class DbSchema implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主机 + */ + @NotBlank(message = "主机不能为空") + private String host; + + /** + * 端口 + */ + @NotNull(message = "端口不能为空") + private Integer port; + + /** + * 用户名 + */ + @NotBlank(message = "用户名不能为空") + private String username; + + /** + * 密码 + */ + @NotBlank(message = "密码不能为空") + private String password; + + /** + * 数据库 + */ + private String dbName; + + /** + * 服务名 + */ + private String sid; + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public Integer getPort() { + return port; + } + + public void setPort(Integer port) { + this.port = port; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getDbName() { + return dbName; + } + + public void setDbName(String dbName) { + this.dbName = dbName; + } + + public String getSid() { + return sid; + } + + public void setSid(String sid) { + this.sid = sid; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ExecuteConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ExecuteConfig.java new file mode 100644 index 00000000..929b34b9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ExecuteConfig.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.List; + +/** + * 执行配置信息Model + */ +public class ExecuteConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + + /** + * 数据源 + */ + @NotNull(message = "数据源不能为空") + private Long sourceId; + + /** + * 配置方式 + */ + @NotBlank(message = "配置方式不能为空") + @EnumCheckValue(value = DataApiEnum.CONFIG_TYPE.class) + private String configType; + + /** + * 数据库表主键 + */ + private Long tableId; + + /** + * 数据库表 + */ + private String tableName; + + /** + * 表字段列表 + */ + @Valid + private List fieldParams; + + /** + * 解析SQL + */ + private String sqlText; + + public Long getSourceId() { + return sourceId; + } + + public void setSourceId(Long sourceId) { + this.sourceId = sourceId; + } + + public String getConfigType() { + return configType; + } + + public void setConfigType(String configType) { + this.configType = configType; + } + + public Long getTableId() { + return tableId; + } + + public void setTableId(Long tableId) { + this.tableId = tableId; + } + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public List getFieldParams() { + return fieldParams; + } + + public void setFieldParams(List fieldParams) { + this.fieldParams = fieldParams; + } + + public String getSqlText() { + return sqlText; + } + + public void setSqlText(String sqlText) { + this.sqlText = sqlText; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldParam.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldParam.java new file mode 100644 index 00000000..804d4c84 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldParam.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import java.io.Serializable; + +/** + * 字段信息Model + */ +public class FieldParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 列名 + */ + private String columnName; + + /** + * 数据类型 + */ + private String dataType; + + /** + * 数据长度 + */ + private Integer dataLength; + + /** + * 数据精度 + */ + private Integer dataPrecision; + + /** + * 数据小数位 + */ + private Integer dataScale; + + /** + * 是否主键 + */ + private String columnKey; + + /** + * 是否允许为空 + */ + private String columnNullable; + + /** + * 列的序号 + */ + private Integer columnPosition; + + /** + * 列默认值 + */ + private String dataDefault; + + /** + * 列注释 + */ + private String columnComment; + + /** + * 作为请求参数 + */ + private String reqable; + + /** + * 作为返回参数 + */ + private String resable; + + public String getColumnName() { + return columnName; + } + + public void setColumnName(String columnName) { + this.columnName = columnName; + } + + public String getDataType() { + return dataType; + } + + public void setDataType(String dataType) { + this.dataType = dataType; + } + + public Integer getDataLength() { + return dataLength; + } + + public void setDataLength(Integer dataLength) { + this.dataLength = dataLength; + } + + public Integer getDataPrecision() { + return dataPrecision; + } + + public void setDataPrecision(Integer dataPrecision) { + this.dataPrecision = dataPrecision; + } + + public Integer getDataScale() { + return dataScale; + } + + public void setDataScale(Integer dataScale) { + this.dataScale = dataScale; + } + + public String getColumnKey() { + return columnKey; + } + + public void setColumnKey(String columnKey) { + this.columnKey = columnKey; + } + + public String getColumnNullable() { + return columnNullable; + } + + public void setColumnNullable(String columnNullable) { + this.columnNullable = columnNullable; + } + + public Integer getColumnPosition() { + return columnPosition; + } + + public void setColumnPosition(Integer columnPosition) { + this.columnPosition = columnPosition; + } + + public String getDataDefault() { + return dataDefault; + } + + public void setDataDefault(String dataDefault) { + this.dataDefault = dataDefault; + } + + public String getColumnComment() { + return columnComment; + } + + public void setColumnComment(String columnComment) { + this.columnComment = columnComment; + } + + public String getReqable() { + return reqable; + } + + public void setReqable(String reqable) { + this.reqable = reqable; + } + + public String getResable() { + return resable; + } + + public void setResable(String resable) { + this.resable = resable; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldRule.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldRule.java new file mode 100644 index 00000000..69e4d33a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldRule.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 字段信息Model + */ +public class FieldRule implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 字段名称 + */ + @NotBlank(message = "字段名称不能为空") + private String fieldName; + /** + * 脱敏类型 + */ + @NotNull(message = "脱敏类型不能为空") + private String cipherType; + /** + * 规则类型 + */ + @NotNull(message = "规则类型不能为空") + private String cryptType; + + public String getFieldName() { + return fieldName; + } + + public void setFieldName(String fieldName) { + this.fieldName = fieldName; + } + + public String getCipherType() { + return cipherType; + } + + public void setCipherType(String cipherType) { + this.cipherType = cipherType; + } + + public String getCryptType() { + return cryptType; + } + + public void setCryptType(String cryptType) { + this.cryptType = cryptType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/RateLimit.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/RateLimit.java new file mode 100644 index 00000000..41938541 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/RateLimit.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 限流信息Model + */ +public class RateLimit implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 是否限流:0:否,1:是 + */ + @NotNull(message = "是否限流不能为空") + private String enable; + + /** + * 请求次数默认5次 + */ + private Integer times = 5; + + /** + * 请求时间范围默认60秒 + */ + private Integer seconds = 60; + + public String getEnable() { + return enable; + } + + public void setEnable(String enable) { + this.enable = enable; + } + + public Integer getTimes() { + return times; + } + + public void setTimes(Integer times) { + this.times = times; + } + + public Integer getSeconds() { + return seconds; + } + + public void setSeconds(Integer seconds) { + this.seconds = seconds; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqParam.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqParam.java new file mode 100644 index 00000000..428a2125 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqParam.java @@ -0,0 +1,116 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 请求参数信息Model + */ +public class ReqParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 参数名称 + */ + @NotBlank(message = "参数名称不能为空") + private String paramName; + + /** + * 是否为空 + */ + @NotNull(message = "是否为空不能为空") + private String nullable; + + /** + * 描述 + */ + @NotBlank(message = "描述不能为空") + private String paramComment; + + /** + * 操作符 + */ + @NotNull(message = "操作符不能为空") + @EnumCheckValue(value = DataApiEnum.WHERE_TYPE.class,isNullable = true) + private String whereType; + + /** + * 参数类型 + */ + @NotNull(message = "参数类型不能为空") + @EnumCheckValue(DataApiEnum.ParamType.class) + private String paramType; + + /** + * 示例值 + */ + @NotBlank(message = "示例值不能为空") + private String exampleValue; + + /** + * 默认值 + */ + @NotBlank(message = "默认值不能为空") + private String defaultValue; + + public String getParamName() { + return paramName; + } + + public void setParamName(String paramName) { + this.paramName = paramName; + } + + public String getNullable() { + return nullable; + } + + public void setNullable(String nullable) { + this.nullable = nullable; + } + + public String getParamComment() { + return paramComment; + } + + public void setParamComment(String paramComment) { + this.paramComment = paramComment; + } + + public String getWhereType() { + return whereType; + } + + public void setWhereType(String whereType) { + this.whereType = whereType; + } + + public String getParamType() { + return paramType; + } + + public void setParamType(String paramType) { + this.paramType = paramType; + } + + public String getExampleValue() { + return exampleValue; + } + + public void setExampleValue(String exampleValue) { + this.exampleValue = exampleValue; + } + + public String getDefaultValue() { + return defaultValue; + } + + public void setDefaultValue(String defaultValue) { + this.defaultValue = defaultValue; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqVo.java new file mode 100644 index 00000000..c633bbf7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqVo.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import java.io.Serializable; + +/** + * API请求参数 + * + * @author yulei + */ +public class ReqVo implements Serializable { + + + /** + * 报文内容 + */ + private String body; + + /** + * 签名 + */ + private String sign; + + public String getBody() { + return body; + } + + public void setBody(String body) { + this.body = body; + } + + public String getSign() { + return sign; + } + + public void setSign(String sign) { + this.sign = sign; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiAddRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiAddRequest.java new file mode 100644 index 00000000..ea31c1cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiAddRequest.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; + +import java.io.Serializable; + +/** + *

+ * 数据API信息表 实体DTO + *

+ */ +public class ApiAddRequest extends ApiDtoBase implements Serializable { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiCopyRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiCopyRequest.java new file mode 100644 index 00000000..9c38a1ea --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiCopyRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @ClassName : ApiCopyRequest + * @Description : + * @Author : sky + * @Date: 2023-09-04 19:05 + */ +public class ApiCopyRequest extends User implements Serializable { + + @NotNull(message = "apiId不能为空") + private Long apiId; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiDelRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiDelRequest.java new file mode 100644 index 00000000..01d21583 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiDelRequest.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @ClassName : ApiCopyRequest + * @Description : + * @Author : sky + * @Date: 2023-09-04 19:05 + */ +public class ApiDelRequest extends User implements Serializable { + + @NotNull(message = "apiId不能为空") + private Long apiId; + + @NotBlank(message = "recToken不能为空") + private String recToken; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiLogRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiLogRequest.java new file mode 100644 index 00000000..ded50001 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiLogRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.io.Serializable; + +/** + *

+ * api调用日志信息表 查询实体 + *

+ */ +public class ApiLogRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + + private String apiName; + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiPageRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiPageRequest.java new file mode 100644 index 00000000..4ccc1689 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiPageRequest.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.io.Serializable; + +/** + *

+ * 数据API信息表 查询实体 + *

+ */ +public class ApiPageRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + + private String apiName; + + @EnumCheckValue(value = ApiCrypto.ApiState.class,isNullable = true) + private String status; + + private String sourceId; + + @EnumCheckValue(value = DataApiEnum.API_TYPE.class,isNullable = true) + private String apiType = DataApiEnum.API_TYPE.AGILE.getCode(); + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getSourceId() { + return sourceId; + } + + public void setSourceId(String sourceId) { + this.sourceId = sourceId; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiStatusRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiStatusRequest.java new file mode 100644 index 00000000..ca3cda00 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiStatusRequest.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * API更改状态参数DTO + * + * @author yulei + **/ +public class ApiStatusRequest extends User implements Serializable { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空") + private Long apiId; + + /** + * 验证token + */ + @NotBlank(message = "recToken不能为空") + private String recToken; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUpdateRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUpdateRequest.java new file mode 100644 index 00000000..926a3430 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUpdateRequest.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + *

+ * 数据API信息表 实体DTO + *

+ */ +public class ApiUpdateRequest extends ApiDtoBase implements Serializable { + + private static final long serialVersionUID = 1L; + + @NotNull(message = "appId不能为空") + private Long apiId; + /** + * 验证token + */ + @NotBlank(message = "recToken不能为空") + private String recToken; + + @NotNull(message = "版本号不能为空") + private Long versionNum; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUserRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUserRequest.java new file mode 100644 index 00000000..232e5a8f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUserRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotNull; + +/** + * @ClassName : ApiUserRequest + * @Description : + * @Author : sky + * @Date: 2023-09-12 11:42 + */ +public class ApiUserRequest extends PageSize { + + @NotNull(message = "会员Id不能为空") + private String memberId; + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/Range.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/Range.java new file mode 100644 index 00000000..b032766c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/Range.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.base; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 范围查询 + * + * @ClassName : Range + * @Description : + * @Author : sky + * @Date: 2023-09-19 16:29 + */ +public class Range extends PageSize { + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date beginDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endDate; + + public Date getBeginDate() { + return beginDate; + } + + public void setBeginDate(Date beginDate) { + this.beginDate = beginDate; + } + + public Date getEndDate() { + return endDate; + } + + public void setEndDate(Date endDate) { + this.endDate = endDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/User.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/User.java new file mode 100644 index 00000000..66d9a2de --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/User.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.base; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +/** + * @ClassName : User + * @Description : + * @Author : sky + * @Date: 2023-09-04 18:27 + */ +public class User { + + @NotBlank(message = "用户名不能为空") + private String userName; + + @NotNull(message = "用户Id不能为空") + private Long userId; + + private String deptId; + + private String nickName; + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } + + public String getDeptId() { + return deptId; + } + + public void setDeptId(String deptId) { + this.deptId = deptId; + } + + public String getNickName() { + return nickName; + } + + public void setNickName(String nickName) { + this.nickName = nickName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/batch/DateVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/batch/DateVo.java new file mode 100644 index 00000000..c3ea6141 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/batch/DateVo.java @@ -0,0 +1,17 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.batch; + +public class DateVo { + + /** + * 请求日期 + */ + private String date; + + public String getDate() { + return date; + } + + public void setDate(String date) { + this.date = date; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/console/OrgApiAuthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/console/OrgApiAuthRequest.java new file mode 100644 index 00000000..e4569266 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/console/OrgApiAuthRequest.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 组织接口权限DTO + * + * @author yulei + **/ +public class OrgApiAuthRequest extends User implements Serializable { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * APIID + */ + @NotNull(message = "APIDS不能为空") + private Long[] apiIds; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Long[] getApiIds() { + return apiIds; + } + + public void setApiIds(Long[] apiIds) { + this.apiIds = apiIds; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/ApiDtoBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/ApiDtoBase.java new file mode 100644 index 00000000..be1baba8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/ApiDtoBase.java @@ -0,0 +1,228 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.extend; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import org.hibernate.validator.constraints.Length; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.Size; +import java.io.Serializable; +import java.util.List; + +/** + * @ClassName : ApiDtoBase + * @Description : + * @Author : sky + * @Date: 2023-09-04 18:41 + */ +public class ApiDtoBase extends User implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * API名称 + */ + @NotBlank(message = "API名称不能为空") + @Length(max = 100) + private String apiName; + + /** + * API版本 + */ + @NotBlank(message = "API版本不能为空") + @Length(max = 60) + private String apiVersion; + + /** + * API路径 + */ + @NotBlank(message = "API路径不能为空") + @Length(max = 100) + private String apiUrl; + + /** + * 请求方式 + */ + @EnumCheckValue(value = DataApiEnum.REQ_METHOD.class) + private String reqMethod; + + /** + * 返回格式 + */ + @NotBlank(message = "返回格式不能为空") + @EnumCheckValue(value = DataApiEnum.ResType.class) + private String resType; + + /** + * IP黑名单多个用英文,隔开 + */ + private String deny; + + /** + * 限流配置 + */ + @Valid + private RateLimit rateLimit; + + /** + * 执行配置 + */ + @Valid + private ExecuteConfig executeConfig; + + /** + * 请求参数 + */ + @Valid + @NotEmpty(message = "请求参数不能为空") + @Size(min = 1, message = "请求参数长度不能少于{min}位") + private List reqParams; + + /** + * 返回参数 + */ + @Valid + @NotEmpty(message = "返回字段不能为空") + @Size(min = 1, message = "返回字段长度不能少于{min}位") + private List resParams; + + /** + * 状态 + */ + @EnumCheckValue(value = DataApiEnum.API_STATUS.class,isNullable = true) + private String status = DataApiEnum.API_STATUS.WAIT.getCode(); + + /** + * 备注 + */ + @Length(max = 500) + private String remark; + + /** + * apiCode + */ + @NotBlank(message = "apiCode不能为空") + @Length(max = 20) + private String apiCode; + + private String apiType = DataApiEnum.API_TYPE.AGILE.getCode(); + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public String getDeny() { + return deny; + } + + public void setDeny(String deny) { + this.deny = deny; + } + + public RateLimit getRateLimit() { + return rateLimit; + } + + public void setRateLimit(RateLimit rateLimit) { + this.rateLimit = rateLimit; + } + + public ExecuteConfig getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(ExecuteConfig executeConfig) { + this.executeConfig = executeConfig; + } + + public List getReqParams() { + return reqParams; + } + + public void setReqParams(List reqParams) { + this.reqParams = reqParams; + } + + public List getResParams() { + return resParams; + } + + public void setResParams(List resParams) { + this.resParams = resParams; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgConfigBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgConfigBase.java new file mode 100644 index 00000000..ff93894d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgConfigBase.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.extend; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; + +/** + * 机构配置基础信息 + * + * @ClassName : OrgConfigBase + * @Author : sky + * @Date: 2023-09-06 16:23 + */ +public class OrgConfigBase extends User { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + @Length(max = 32) + private String orgNo; + + /** + * data:config:start:time + * data:config:end:time + * 配置项 + */ + @NotBlank(message = "配置key不能为空") + @Length(max = 40) + @EnumCheckValue(value = ConfigCrypot.OrgCfnKeyEnum.class) + private String configKey; + + /** + * 配置说明 + */ + @NotBlank(message = "配置说明不能为空") + @Length(max = 100) + private String configDesc; + + /** + * 配置值 + */ + @NotBlank(message = "配置值不能为空") + @Length(max = 40) + private String configValue; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 状态 + */ + @EnumCheckValue(value = ConfigCrypot.ConfigStatus.class, isNullable = true) + private String status; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigDesc() { + return configDesc; + } + + public void setConfigDesc(String configDesc) { + this.configDesc = configDesc; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgInfoBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgInfoBase.java new file mode 100644 index 00000000..12602634 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgInfoBase.java @@ -0,0 +1,192 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.extend; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 机构信息VO + * + * @author yulei + **/ +public class OrgInfoBase extends User implements Serializable { + + /** + * 会员号 + */ + private String memberId; + + /** + * 【机构名称】 + */ + @NotBlank(message = "机构名称不能为空") + @Length(max = 100) + private String orgName; + + /** + * 【机构类型】 + */ + @NotBlank(message = "机构类型不能为空") + @EnumCheckValue(OrgCrypto.OrgType.class) + private String orgType; + + /** + * 【机构描述】 + */ + @Length(max = 150) + private String orgDesc; + + /** + * 【加盐】 + */ + @NotBlank(message = "加盐不能为空") + @Length(max = 200) + private String salt; + + /** + * 【加密】 + */ + @NotBlank(message = "加密不能为空") + @Length(max = 1000) + private String encrypt; + + /** + * 【生效时间】 + */ + @NotNull(message = "生效时间不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @NotNull(message = "到期时间不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + /** + * 【ip白名单】 + */ + @Length(max = 32) + private String ip; + + /** + * 【联系人电话】 + */ + @NotBlank(message = "联系人电话不能为空") + @Length(max = 20) + private String contractTel; + + @EnumCheckValue(value = OrgCrypto.OrgStatus.class,isNullable = true) + private String status; + + /** + * 备注 + */ + @Length(max = 200) + private String remark; + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthReq.java new file mode 100644 index 00000000..ee1f72cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthReq.java @@ -0,0 +1,78 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +/** + * @ClassName : AuthReq + * @Description : 权限接口请求类 + * @Author : sky + * @Date: 2023-07-13 13:28 + */ +public class OrgAuthReq implements Serializable { + + /** + * 秘钥版本号 + */ + private String keyVersion; + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + @Length(max = 64) + private String orgCode; + + private String subOrgCode; + + @NotBlank(message = "交易码不能为空") + private String apiCode; + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") + private Date requsetTime; + + public String getKeyVersion() { + return keyVersion; + } + + public void setKeyVersion(String keyVersion) { + this.keyVersion = keyVersion; + } + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public Date getRequsetTime() { + return requsetTime; + } + + public void setRequsetTime(Date requsetTime) { + this.requsetTime = requsetTime; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthRequest.java new file mode 100644 index 00000000..955df034 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthRequest.java @@ -0,0 +1,72 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +public class OrgAuthRequest implements Serializable { + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + @Length(max = 64) + private String orgCode; + + @NotBlank(message = "交易码不能为空") + private String apiCode; + + @NotBlank(message = "机构ip不能为空") + private String ip; + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") + private Date requsetTime; + /** + * 数据时间 + */ + private Date dataDate; + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public Date getRequsetTime() { + return requsetTime; + } + + public void setRequsetTime(Date requsetTime) { + this.requsetTime = requsetTime; + } + + public Date getDataDate() { + return dataDate; + } + + public void setDataDate(Date dataDate) { + this.dataDate = dataDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigAddRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigAddRequest.java new file mode 100644 index 00000000..b8655502 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigAddRequest.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgConfigBase; + +import java.io.Serializable; + +/** + * 机构信息DTO + * + * @author yulei + **/ +public class OrgConfigAddRequest extends OrgConfigBase implements Serializable { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigEditRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigEditRequest.java new file mode 100644 index 00000000..ab21d0c4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigEditRequest.java @@ -0,0 +1,58 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgConfigBase; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 机构信息DTO + * + * @author yulei + **/ +public class OrgConfigEditRequest extends OrgConfigBase implements Serializable { + + /** + * 主键ID + */ + @NotNull(message = "配置ID不能为空") + private Long configId; + + /** + * 随机码 + */ + @NotBlank(message = "随机码不能为空") + private String recToken; + + @EnumCheckValue(value = OrgCrypto.OrgStatus.class) + private String status = OrgCrypto.OrgStatus.STOP.getCode(); + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + @Override + public String getStatus() { + return status; + } + + @Override + public void setStatus(String status) { + this.status = status; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigQueryRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigQueryRequest.java new file mode 100644 index 00000000..e1abb404 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigQueryRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.io.Serializable; + +/** + * 机构配置信息查询 + * + * @author yulei + **/ +public class OrgConfigQueryRequest extends PageSize implements Serializable { + + /** + * 机构号 + */ + private String orgNo; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgDelReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgDelReq.java new file mode 100644 index 00000000..3181ca1d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgDelReq.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; + +/** + * 删除请求 + * + * @ClassName : OrgDelReq + * @Description : + * @Author : sky + * @Date: 2023-09-07 14:05 + */ +public class OrgDelReq extends User { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 随机码 + */ + @NotBlank(message = "随机码不能为空") + private String recToken; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoAddReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoAddReq.java new file mode 100644 index 00000000..79119818 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoAddReq.java @@ -0,0 +1,13 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase; + +/** + * 机构管理信息DTO + * + * @author shu_k + **/ +public class OrgInfoAddReq extends OrgInfoBase { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoEditReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoEditReq.java new file mode 100644 index 00000000..4a96cd00 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoEditReq.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase; + +import javax.validation.constraints.NotBlank; + +/** + * 机构管理信息DTO + * + * @author shu_k + **/ +public class OrgInfoEditReq extends OrgInfoBase { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 随机码 + */ + @NotBlank(message = "随机码不能为空") + private String recToken; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoQueryReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoQueryReq.java new file mode 100644 index 00000000..51943881 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoQueryReq.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +/** + * 机构管理信息查询条件 + * + * @author shu_k + **/ +public class OrgInfoQueryReq extends PageSize { + + /** + * 【机构号】 + */ + private String orgNo; + + /** + * 【机构名称】 + */ + private String orgName; + + /** + * 【机构类型】 + */ + private String orgType; + + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + + /** + * 会员号 + */ + private String mermberId; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getMermberId() { + return mermberId; + } + + public void setMermberId(String mermberId) { + this.mermberId = mermberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoStatusReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoStatusReq.java new file mode 100644 index 00000000..0cafb3c0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoStatusReq.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 机构更改状态DTO + * + * @author shu_k + **/ +public class OrgInfoStatusReq extends User implements Serializable { + + @NotBlank(message = "orgNo不能为空") + private String orgNo; + + /** + * 验证token + */ + @NotBlank(message = "recToken不能为空") + private String recToken; + + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgStatisticsQueryReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgStatisticsQueryReq.java new file mode 100644 index 00000000..8a80c9f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgStatisticsQueryReq.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +/** + * 接口调用次数统计查询条件 + * + * @author shu_k + **/ +public class OrgStatisticsQueryReq extends PageSize { + + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名 + */ + private String orgName; + + /** + * 接口名称 + */ + private String apiName; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/DownLoadRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/DownLoadRequest.java new file mode 100644 index 00000000..0db95388 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/DownLoadRequest.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.FileTypeEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.util.Date; + +/** + * @ClassName : downLoadRequest + * @Description : 下载文件请求报文 + * @Author : sky + * @Date: 2023-09-13 13:24 + */ +public class DownLoadRequest { + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + @NotNull + private Date date; + + @EnumCheckValue(value = FileTypeEnum.class) + private String fileType; + @NotBlank + private String orgNo; + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + + public String getFileType() { + return fileType; + } + + public void setFileType(String fileType) { + this.fileType = fileType; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineDayPageReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineDayPageReq.java new file mode 100644 index 00000000..a0b31ed2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineDayPageReq.java @@ -0,0 +1,97 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 线路分页查询请求类 + * + * @ClassName : LineDayPageReq + * @Description : 分页查询 + * @Author : sky + * @Date: 2023-09-18 15:19 + */ +public class LineDayPageReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineHourPageReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineHourPageReq.java new file mode 100644 index 00000000..69331bc4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineHourPageReq.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 线路分页查询请求类 + * + * @ClassName : LineDayPageReq + * @Description : 分页查询 + * @Author : sky + * @Date: 2023-09-18 15:19 + */ +public class LineHourPageReq extends Range { + + + /** + * 线路名称 + */ + private String lineName; + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + + private Long hour; + + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getHour() { + return hour; + } + + public void setHour(Long hour) { + this.hour = hour; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineInfoReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineInfoReq.java new file mode 100644 index 00000000..44fd25a6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineInfoReq.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + + +/** + * 线路基础信息列表请求对象 + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineInfoReq { + /** + * 线路名称 + */ + private String lineName; + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineMetricMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineMetricMonthReq.java new file mode 100644 index 00000000..08f6fcca --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineMetricMonthReq.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricMonthReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineStationInfoReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineStationInfoReq.java new file mode 100644 index 00000000..cfd98316 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineStationInfoReq.java @@ -0,0 +1,46 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +/** + * 站点基础信息对象 tbl_prd_base_line_station + * + * @author ruoyi + * @date 2023-09-19 + */ +public class LineStationInfoReq { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 方向 + */ + private String up; + /** + * 站序 + */ + private Long levels; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/RouteMetricDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/RouteMetricDayReq.java new file mode 100644 index 00000000..d2a83006 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/RouteMetricDayReq.java @@ -0,0 +1,135 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteMetricDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 起点 + */ + private String startStation; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 终点 + */ + private String endStation; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 路单类型 + */ + private String waybillType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getWaybillType() { + return waybillType; + } + + public void setWaybillType(String waybillType) { + this.waybillType = waybillType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricDayReq.java new file mode 100644 index 00000000..997376f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricDayReq.java @@ -0,0 +1,93 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricMonthReq.java new file mode 100644 index 00000000..3df9e634 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricMonthReq.java @@ -0,0 +1,89 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_station_freq_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricMonthReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + + @Override + public String toString() { + return "StationFreqMetricMonthReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", metricMonth='" + metricMonth + '\'' + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransDayReq.java new file mode 100644 index 00000000..9068861c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransDayReq.java @@ -0,0 +1,102 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + @Override + public String toString() { + return "StationFreqTransDayReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", metricDate=" + metricDate + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransMonthReq.java new file mode 100644 index 00000000..39b6df5c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransMonthReq.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonthReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricDayReq.java new file mode 100644 index 00000000..2fb8f4ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricDayReq.java @@ -0,0 +1,79 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricHourReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricHourReq.java new file mode 100644 index 00000000..445a7c96 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricHourReq.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricHourReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 时间 + */ + private Integer hour; + + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Integer getHour() { + return hour; + } + + public void setHour(Integer hour) { + this.hour = hour; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricMonthReq.java new file mode 100644 index 00000000..b0fbb261 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricMonthReq.java @@ -0,0 +1,90 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricMonthReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + + @Override + public String toString() { + return "StationMetricMonthReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", metricMonth='" + metricMonth + '\'' + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransDayReq.java new file mode 100644 index 00000000..04b55aa8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransDayReq.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransDayReq extends PageSize { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + @Override + public String toString() { + return "StationTransDayReq{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransHourReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransHourReq.java new file mode 100644 index 00000000..aae32954 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransHourReq.java @@ -0,0 +1,119 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransHourReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 时间 + */ + private Integer hour; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Integer getHour() { + return hour; + } + + public void setHour(Integer hour) { + this.hour = hour; + } + + @Override + public String toString() { + return "StationTransHourReq{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", hour=" + hour + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransMonthReq.java new file mode 100644 index 00000000..8170a0cd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransMonthReq.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransMonthReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + + @Override + public String toString() { + return "StationTransMonthReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth=" + metricMonth + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineDayReqRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineDayReqRequest.java new file mode 100644 index 00000000..fece24e0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineDayReqRequest.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +public class LineDayReqRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineHourRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineHourRequest.java new file mode 100644 index 00000000..7fa20838 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineHourRequest.java @@ -0,0 +1,50 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 线路分页查询请求类 + * + * @ClassName : LineDayPageReq + * @Description : 分页查询 + * @Author : sky + * @Date: 2023-09-18 15:19 + */ +public class LineHourRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineMonthRequest.java new file mode 100644 index 00000000..d75dcc77 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineMonthRequest.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMonthRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 指标月份 + */ + @NotNull(message = "月份不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/RouteDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/RouteDayRequest.java new file mode 100644 index 00000000..767cda5d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/RouteDayRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationDayRequest.java new file mode 100644 index 00000000..16c5f0cf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationDayRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqDayRequest.java new file mode 100644 index 00000000..f1453961 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqDayRequest.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqMonthRequest.java new file mode 100644 index 00000000..36f8ddd2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqMonthRequest.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMonthRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransDayRequest.java new file mode 100644 index 00000000..569db922 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransDayRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransMonthRequest.java new file mode 100644 index 00000000..e376c30d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransMonthRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonthRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationHourRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationHourRequest.java new file mode 100644 index 00000000..6b051f3a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationHourRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationHourRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationMonthRequest.java new file mode 100644 index 00000000..5d23069f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationMonthRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMonthRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransDayRequest.java new file mode 100644 index 00000000..eb2702f6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransDayRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransDayRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransHourRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransHourRequest.java new file mode 100644 index 00000000..a21b360c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransHourRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransHourRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransMonthRequest.java new file mode 100644 index 00000000..18686e44 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransMonthRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransMonthRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "月份不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/CentimeDelayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/CentimeDelayReq.java new file mode 100644 index 00000000..d3133471 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/CentimeDelayReq.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 延迟上送比率对象 tbl_qa_centime_delay + * + * @author shu_k + * @date 2023-09-20 + */ +public class CentimeDelayReq extends Range { + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/PosMatchRateReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/PosMatchRateReq.java new file mode 100644 index 00000000..9aedeff1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/PosMatchRateReq.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * Pos匹配率对象 tbl_qa_pos_match_rate + * + * @author shu_k + * @date 2023-09-20 + */ +public class PosMatchRateReq extends Range { + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteDailyReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteDailyReq.java new file mode 100644 index 00000000..a4eba18b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteDailyReq.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运线路条数对象 tbl_qa_route_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteDailyReq extends Range { + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 运营公司编码 + */ + private String companyCode; + + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteMissReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteMissReq.java new file mode 100644 index 00000000..04a9448a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteMissReq.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次缺失率对象 tbl_qa_route_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteMissReq extends Range { + + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteTurnoverReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteTurnoverReq.java new file mode 100644 index 00000000..ed7f817a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteTurnoverReq.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次周转时间对象 tbl_qa_route_turnover_time + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteTurnoverReq extends Range { + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 早晚高峰名称 + */ + private String hlowPeakName; + + /** + * 路单类型 + */ + private String wayBillType; + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getHlowPeakName() { + return hlowPeakName; + } + + public void setHlowPeakName(String hlowPeakName) { + this.hlowPeakName = hlowPeakName; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/StationMissReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/StationMissReq.java new file mode 100644 index 00000000..a2db38a9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/StationMissReq.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点缺失率对象 tbl_qa_station_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class StationMissReq extends Range { + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 上下行 + */ + private String up; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/VehicleDailyReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/VehicleDailyReq.java new file mode 100644 index 00000000..438233e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/VehicleDailyReq.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运车辆数对象 tbl_qa_vehicle_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class VehicleDailyReq extends Range { + + /** + * 公司编码 + */ + private String companyCode; + + /** + * 公司名称 + */ + private String companyName; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/ResParam.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/ResParam.java new file mode 100644 index 00000000..da217215 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/ResParam.java @@ -0,0 +1,111 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 返回参数信息Model + */ +public class ResParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 字段名称 + */ + @NotBlank(message = "字段名称不能为空") + private String fieldName; + + /** + * 描述 + */ + @NotBlank(message = "描述不能为空") + private String fieldComment; + + /** + * 数据类型 + */ + @NotNull(message = "数据类型不能为空") + private String dataType; + + /** + * 示例值 + */ + @NotBlank(message = "示例值不能为空") + private String exampleValue; + + /** + * 字段别名 + */ + private String fieldAliasName; + + /** + * 脱敏类型 + */ + @EnumCheckValue(value = DataApiEnum.CIPHER_TYPE.class,isNullable = true) + private String cipherType; + /** + * 规则类型 + */ + private String cryptType; + + public String getFieldName() { + return fieldName; + } + + public void setFieldName(String fieldName) { + this.fieldName = fieldName; + } + + public String getFieldComment() { + return fieldComment; + } + + public void setFieldComment(String fieldComment) { + this.fieldComment = fieldComment; + } + + public String getDataType() { + return dataType; + } + + public void setDataType(String dataType) { + this.dataType = dataType; + } + + public String getExampleValue() { + return exampleValue; + } + + public void setExampleValue(String exampleValue) { + this.exampleValue = exampleValue; + } + + public String getFieldAliasName() { + return fieldAliasName; + } + + public void setFieldAliasName(String fieldAliasName) { + this.fieldAliasName = fieldAliasName; + } + + public String getCipherType() { + return cipherType; + } + + public void setCipherType(String cipherType) { + this.cipherType = cipherType; + } + + public String getCryptType() { + return cryptType; + } + + public void setCryptType(String cryptType) { + this.cryptType = cryptType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/RespVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/RespVo.java new file mode 100644 index 00000000..4ab0454a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/RespVo.java @@ -0,0 +1,55 @@ +// package com.jiuyv.sptcc.agile.dataservice.dto.response; +// +// import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +// +// import java.io.Serializable; +// +///** +// * API返回参数 +// * +// * @author yulei +// */ +// public class RespVo implements Serializable { +// +// /** 返回码*/ +// private Integer respCode; +// +// /** 返回说明 */ +// private String respDesc; +// +// public RespVo() { +// } +// +// public RespVo(Integer code, String message) { +// this.respCode = code; +// this.respDesc = message; +// } +// +// public static RespVo ok(){ +// return new RespVo(ResultCode.SUCCESS.getCode(),ResultCode.SUCCESS.getMessage()); +// } +// +// public Integer getRespCode() { +// return respCode; +// } +// +// public void setRespCode(Integer respCode) { +// this.respCode = respCode; +// } +// +// public String getRespDesc() { +// return respDesc; +// } +// +// public void setRespDesc(String respDesc) { +// this.respDesc = respDesc; +// } +// +// @Override +// public String toString() { +// return "RespVo{" + +// "respCode='" + respCode + '\'' + +// ", respDesc='" + respDesc + '\'' + +// '}'; +// } +//} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/TreeSelect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/TreeSelect.java new file mode 100644 index 00000000..12568280 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/TreeSelect.java @@ -0,0 +1,59 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response; + +import com.fasterxml.jackson.annotation.JsonInclude; + +import java.io.Serializable; +import java.util.List; + +/** + * Treeselect树结构实体类 + * + * @author shy_k + */ +public class TreeSelect implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 节点ID + */ + private Long id; + + /** + * 节点名称 + */ + private String label; + + /** + * 子节点 + */ + @JsonInclude(JsonInclude.Include.NON_EMPTY) + private List children; + + public TreeSelect() { + + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLabel() { + return label; + } + + public void setLabel(String label) { + this.label = label; + } + + public List getChildren() { + return children; + } + + public void setChildren(List children) { + this.children = children; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiLogResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiLogResponse.java new file mode 100644 index 00000000..2d9fda1e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiLogResponse.java @@ -0,0 +1,127 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * api调用日志信息响应 + * + * @author yulei + */ +public class ApiLogResponse implements Serializable { + + private static final long serialVersionUID = 1L; + + private Long apiLogId; + private Long apiId; + private String apiName; + private String callerId; + private String callerIp; + private String callerUrl; + private Integer callerSize; + private String callerParams; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date callerDate; + private Long time; + private String msg; + private String status; + + public Long getApiLogId() { + return apiLogId; + } + + public void setApiLogId(Long apiLogId) { + this.apiLogId = apiLogId; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getCallerId() { + return callerId; + } + + public void setCallerId(String callerId) { + this.callerId = callerId; + } + + public String getCallerIp() { + return callerIp; + } + + public void setCallerIp(String callerIp) { + this.callerIp = callerIp; + } + + public String getCallerUrl() { + return callerUrl; + } + + public void setCallerUrl(String callerUrl) { + this.callerUrl = callerUrl; + } + + public Integer getCallerSize() { + return callerSize; + } + + public void setCallerSize(Integer callerSize) { + this.callerSize = callerSize; + } + + public String getCallerParams() { + return callerParams; + } + + public void setCallerParams(String callerParams) { + this.callerParams = callerParams; + } + + public Date getCallerDate() { + return callerDate; + } + + public void setCallerDate(Date callerDate) { + this.callerDate = callerDate; + } + + public Long getTime() { + return time; + } + + public void setTime(Long time) { + this.time = time; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiResponse.java new file mode 100644 index 00000000..5151e4d1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiResponse.java @@ -0,0 +1,225 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + *

+ * 数据API信息表 实体VO + *

+ */ +public class ApiResponse implements Serializable { + + private static final long serialVersionUID = 1L; + + private Long apiId; + private String status; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** 创建者id(或账户) */ + private String createBy; + /** 更新者姓名 */ + + /** 更新者id(或账户) */ + private String updateBy; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + private String remark; + private String apiName; + private String apiVersion; + private String apiUrl; + private String reqMethod; + private String deny; + private String resType; + private RateLimit rateLimit; + private ExecuteConfig executeConfig; + private List reqParams; + private List resParams; + /** + * 随机码 + */ + private String recToken; + + private String apiType; + + private String apiCode; + + private Long versionNum; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getDeny() { + return deny; + } + + public void setDeny(String deny) { + this.deny = deny; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public RateLimit getRateLimit() { + return rateLimit; + } + + public void setRateLimit(RateLimit rateLimit) { + this.rateLimit = rateLimit; + } + + public ExecuteConfig getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(ExecuteConfig executeConfig) { + this.executeConfig = executeConfig; + } + + public List getReqParams() { + return reqParams; + } + + public void setReqParams(List reqParams) { + this.reqParams = reqParams; + } + + public List getResParams() { + return resParams; + } + + public void setResParams(List resParams) { + this.resParams = resParams; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiResponse.java new file mode 100644 index 00000000..4a6c9cbd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiResponse.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +public class DataApiResponse implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名称 + */ + private String orgName; + + /** + * 接口id + */ + private Long apiId; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 接口描述 + */ + private String remark; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** + * 【生效时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResp.java new file mode 100644 index 00000000..d01dcdd7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResp.java @@ -0,0 +1,111 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import java.io.Serializable; +import java.util.Date; + +public class DataApiStatisticsResp implements Serializable { + private static final long serialVersionUID = 1L; + /** + * + */ + private Object id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名称 + */ + private String orgName; + + /** + * API ID + */ + private Object apiId; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 成功次数 + */ + private Object successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 更新时间 + */ + private Date updateTime; + + public Object getId() { + return id; + } + + public void setId(Object id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Object getApiId() { + return apiId; + } + + public void setApiId(Object apiId) { + this.apiId = apiId; + } + + public Object getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Object successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResponse.java new file mode 100644 index 00000000..1078dca4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResponse.java @@ -0,0 +1,111 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import java.io.Serializable; +import java.util.Date; + +public class DataApiStatisticsResponse implements Serializable { + private static final long serialVersionUID = 1L; + /** + * + */ + private Object id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名称 + */ + private String orgName; + + /** + * API ID + */ + private Object apiId; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 成功次数 + */ + private Object successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 更新时间 + */ + private Date updateTime; + + public Object getId() { + return id; + } + + public void setId(Object id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Object getApiId() { + return apiId; + } + + public void setApiId(Object apiId) { + this.apiId = apiId; + } + + public Object getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Object successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgApiAuthVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgApiAuthVo.java new file mode 100644 index 00000000..10b1306a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgApiAuthVo.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.console; + + +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; + +import java.io.Serializable; +import java.util.List; + +/** + * @author yulei + **/ +public class OrgApiAuthVo implements Serializable { + + + private Long[] checkedKeys; + + private List treeSelectList; + + public Long[] getCheckedKeys() { + return checkedKeys; + } + + public void setCheckedKeys(Long[] checkedKeys) { + this.checkedKeys = checkedKeys; + } + + public List getTreeSelectList() { + return treeSelectList; + } + + public void setTreeSelectList(List treeSelectList) { + this.treeSelectList = treeSelectList; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgStatisticsVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgStatisticsVo.java new file mode 100644 index 00000000..c68cfc4c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgStatisticsVo.java @@ -0,0 +1,141 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.console; + +import java.io.Serializable; + +/** + * 接口调用次数统计VO + * + * @author yulei + **/ +public class OrgStatisticsVo implements Serializable { + + /** + * id + */ + private String id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名 + */ + private String orgName; + + /** + * 接口id + */ + private String apiId; + + /** + * 成功次数 + */ + private Integer successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 版本号 + */ + private String versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 是否删除【0否,1是】 + */ + private String delFlag; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getApiId() { + return apiId; + } + + public void setApiId(String apiId) { + this.apiId = apiId; + } + + public Integer getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Integer successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgAuthResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgAuthResp.java new file mode 100644 index 00000000..1dcfdc66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgAuthResp.java @@ -0,0 +1,318 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * @ClassName : OrgAuthResp + * @Description : 机构权限返回类 + * @Author : sky + * @Date: 2023-07-13 13:31 + */ +public class OrgAuthResp implements Serializable { + + /** + * orgCode : 机构代码. ORG_CODE: VARCHAR(32) + */ + private String orgCode; + + /** + * subOrgCode 接入二级机构号 SUB_ORG_CODE: VARCHAR(32) + */ + private String subOrgCode; + + /** + * 【机构名称】 + */ + private String orgName; + /** + * 【机构类型】 + */ + private String orgType; + /** + * 【加盐】 + */ + private String salt; + /** + * 【加密】 + */ + private String encrypt; + /** + * 【ip白名单】 + */ + private String ip; + /** + * 数据起始时间 + */ + private Date dataBegin; + /** + * 数据结束时间 + */ + private Date dataEnd; + + private List apiList; + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public Date getDataBegin() { + return dataBegin; + } + + public void setDataBegin(Date dataBegin) { + this.dataBegin = dataBegin; + } + + public Date getDataEnd() { + return dataEnd; + } + + public void setDataEnd(Date dataEnd) { + this.dataEnd = dataEnd; + } + + public List getApiList() { + return apiList; + } + + public void setApiList(List apiList) { + this.apiList = apiList; + } + + public static class Api { + + /** + * 主键 + */ + private Long apiId; + + /** + * 状态(0不启用,1启用) + */ + private String status; + + /** + * 备注 + */ + private String remark; + + /** + * API名称 + */ + private String apiName; + + /** + * API版本 + */ + private String apiVersion; + + /** + * API路径 + */ + private String apiUrl; + + /** + * 请求类型 + */ + private String reqMethod; + + /** + * 返回格式 + */ + private String resType; + + /** + * 执行配置 + */ + private String executeConfig; + + /** + * 请求参数 + */ + private String reqParams; + + /** + * 返回字段 + */ + private String resParams; + + /** + * 接口交易码 + */ + private String apiCode; + /** + * 类型:1敏捷API 2系统API + */ + private String apiType; + /** + * 数据源id + */ + private String sourceId; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public String getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(String executeConfig) { + this.executeConfig = executeConfig; + } + + public String getReqParams() { + return reqParams; + } + + public void setReqParams(String reqParams) { + this.reqParams = reqParams; + } + + public String getResParams() { + return resParams; + } + + public void setResParams(String resParams) { + this.resParams = resParams; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } + + public String getSourceId() { + return sourceId; + } + + public void setSourceId(String sourceId) { + this.sourceId = sourceId; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgConfigResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgConfigResponse.java new file mode 100644 index 00000000..cb312f4b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgConfigResponse.java @@ -0,0 +1,141 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +import java.io.Serializable; + +/** + * 机构配置信息Vo + * + * @author yulei + **/ +public class OrgConfigResponse implements Serializable { + + /** + * 主键ID + */ + private Long configId; + + /** + * 机构号 + */ + private String orgNo; + + /** + * data:config:start:time + * data:config:end:time + * 配置项 + */ + private String configKey; + + /** + * 配置说明 + */ + private String configDesc; + + /** + * 配置值 + */ + private String configValue; + + /** + * 版本号 + */ + private Long versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 状态 + */ + private String status; + + + private String orgName; + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigDesc() { + return configDesc; + } + + public void setConfigDesc(String configDesc) { + this.configDesc = configDesc; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgInfoResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgInfoResp.java new file mode 100644 index 00000000..149932a4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgInfoResp.java @@ -0,0 +1,285 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 机构信息VO + * + * @author yulei + **/ +public class OrgInfoResp implements Serializable { + + /** + * 【机构号】 + */ + private String orgNo; + + /** + * 【机构名称】 + */ + private String orgName; + + /** + * 【机构类型】 + */ + private String orgType; + + /** + * 【机构描述】 + */ + private String orgDesc; + + /** + * 【加盐】 + */ + private String salt; + + /** + * 【加密】 + */ + private String encrypt; + + /** + * 【生效时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + + /** + * 【版本号】 + */ + private String versionNum; + + /** + * 【随机码】 + */ + private String recToken; + + /** + * 【删除标志】0代表存在 2代表删除 + */ + private String delFlag; + + + /** + * 【ip白名单】 + */ + private String ip; + + /** + * 【联系人电话】 + */ + private String contractTel; + + /** + * 【门户用户号】 + */ + private String memberId; + /** + * 接口id集合 + */ + private Long[] apiIds; + + /** + * 创建者id(或账户) + */ + private String createBy; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** 创建者姓名 */ + private String createByName; + + /** 更新者姓名 */ + private String updateByName; + + private Date createTime; + + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } + + public Long[] getApiIds() { + return apiIds; + } + + public void setApiIds(Long[] apiIds) { + this.apiIds = apiIds; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgKeyResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgKeyResponse.java new file mode 100644 index 00000000..6948ca19 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgKeyResponse.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +public class OrgKeyResponse { + + private String salt; + private String encrypt; + + private OrgAuthResp.Api api; + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public OrgAuthResp.Api getApi() { + return api; + } + + public void setApi(OrgAuthResp.Api api) { + this.api = api; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineDayPageRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineDayPageRes.java new file mode 100644 index 00000000..2b49b6ab --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineDayPageRes.java @@ -0,0 +1,163 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * @ClassName : LineDayPageRes + * @Description : 线路日客流返回列表报文 + * @Author : sky + * @Date: 2023-09-18 15:22 + */ +public class LineDayPageRes { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "LineDayPageRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", lineStatus='" + lineStatus + '\'' + + ", companyCode='" + companyCode + '\'' + + ", companyName='" + companyName + '\'' + + ", serviceType='" + serviceType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineInfoRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineInfoRes.java new file mode 100644 index 00000000..a75bfbf0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineInfoRes.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + + +import java.util.List; + +/** + * 线路基础信息对象 tbl_prd_base_line + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineInfoRes { + + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + public static class Line { + /** + * 线路名称 + */ + private String lineName; + + /** + * 6位线路编码 + */ + private String lineCode; + + /** + * 五位线路编码 + */ + private String lineNo; + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLineNo() { + return lineNo; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricHourRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricHourRes.java new file mode 100644 index 00000000..1bf986ef --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricHourRes.java @@ -0,0 +1,190 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 线路小时客流量统计对象 tbl_prd_line_metric_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricHourRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标小时 + */ + private Long metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * $column.columnComment + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Long getMetricHour() { + return metricHour; + } + + public void setMetricHour(Long metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "LineMetricHourRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", lineStatus='" + lineStatus + '\'' + + ", companyCode='" + companyCode + '\'' + + ", companyName='" + companyName + '\'' + + ", serviceType='" + serviceType + '\'' + + ", metricHour=" + metricHour + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricMonthRes.java new file mode 100644 index 00000000..5b08bcc4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricMonthRes.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricMonthRes { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "LineMetricMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", lineStatus='" + lineStatus + '\'' + + ", companyCode='" + companyCode + '\'' + + ", companyName='" + companyName + '\'' + + ", serviceType='" + serviceType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineStationInfoRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineStationInfoRes.java new file mode 100644 index 00000000..f85f4527 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineStationInfoRes.java @@ -0,0 +1,88 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +/** + * 站点基础信息对象 tbl_prd_base_line_station + * + * @author ruoyi + * @date 2023-09-19 + */ +public class LineStationInfoRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 方向 + */ + private String up; + + /** + * 站序 + */ + private Long levels; + + /** + * 站点名称 + */ + private String levelName; + + /** + * 五位线路编码 + */ + private String lineNo; + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + public void setUp(String up) { + this.up = up; + } + + public String getUp() { + return up; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Long getLevels() { + return levels; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public String getLevelName() { + return levelName; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLineNo() { + return lineNo; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/RouteMetricDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/RouteMetricDayRes.java new file mode 100644 index 00000000..dfcdbcca --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/RouteMetricDayRes.java @@ -0,0 +1,234 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteMetricDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 司机工号 + */ + private String driverCode; + + /** + * 起点 + */ + private String startStation; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date startTime; + + /** + * 终点 + */ + private String endStation; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 路单类型 + */ + private String waybillType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getWaybillType() { + return waybillType; + } + + public void setWaybillType(String waybillType) { + this.waybillType = waybillType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "RouteMetricDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", licensePlate='" + licensePlate + '\'' + + ", driverCode='" + driverCode + '\'' + + ", startStation='" + startStation + '\'' + + ", startTime=" + startTime + + ", endStation='" + endStation + '\'' + + ", arrivalTime=" + arrivalTime + + ", waybillType='" + waybillType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricDayRes.java new file mode 100644 index 00000000..1ee7b6bf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricDayRes.java @@ -0,0 +1,175 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqMetricDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", lineStatus='" + lineStatus + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricMonthRes.java new file mode 100644 index 00000000..87eba0ce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricMonthRes.java @@ -0,0 +1,175 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_station_freq_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricMonthRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqMetricMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", lineStatus='" + lineStatus + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransDayRes.java new file mode 100644 index 00000000..5d09220b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransDayRes.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqTransDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransMonthRes.java new file mode 100644 index 00000000..cb28dc87 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransMonthRes.java @@ -0,0 +1,178 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonthRes implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqTransMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricDayRes.java new file mode 100644 index 00000000..154c0c41 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricDayRes.java @@ -0,0 +1,161 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationMetricDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levelName='" + levelName + '\'' + + ", levels=" + levels + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricHourRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricHourRes.java new file mode 100644 index 00000000..c2354430 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricHourRes.java @@ -0,0 +1,187 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricHourRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 换乘方式 + */ + private String exchangeType; + /** + * 指标小时 + */ + private Integer metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationMetricHourRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", levelName='" + levelName + '\'' + + ", metricHour=" + metricHour + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricMonthRes.java new file mode 100644 index 00000000..c6ada8ee --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricMonthRes.java @@ -0,0 +1,160 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricMonthRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationMetricMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", levelName='" + levelName + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransDayRes.java new file mode 100644 index 00000000..c43e2977 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransDayRes.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationTransDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransHourRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransHourRes.java new file mode 100644 index 00000000..6d1f0981 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransHourRes.java @@ -0,0 +1,172 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransHourRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标小时 + */ + private Long metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getMetricHour() { + return metricHour; + } + + public void setMetricHour(Long metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransMonthRes.java new file mode 100644 index 00000000..edb7d72b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransMonthRes.java @@ -0,0 +1,175 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransMonthRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationTransMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/CentimeDelayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/CentimeDelayRes.java new file mode 100644 index 00000000..fd619e33 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/CentimeDelayRes.java @@ -0,0 +1,80 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 延迟上送比率对象 tbl_qa_centime_delay + * + * @author shu_k + * @date 2023-09-20 + */ +public class CentimeDelayRes { + + /** + * 主键 + */ + private Long id; + + /** + * 时间范围 + */ + private String timeRange; + + /** + * 延迟数量 + */ + private Long delayCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getTimeRange() { + return timeRange; + } + + public void setTimeRange(String timeRange) { + this.timeRange = timeRange; + } + + public Long getDelayCount() { + return delayCount; + } + + public void setDelayCount(Long delayCount) { + this.delayCount = delayCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/PosMatchRateRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/PosMatchRateRes.java new file mode 100644 index 00000000..06ea31f2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/PosMatchRateRes.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * Pos匹配率对象 tbl_qa_pos_match_rate + * + * @author shu_k + * @date 2023-09-20 + */ +public class PosMatchRateRes { + + /** + * 主键ID + */ + private Long id; + + /** + * 交易数量 + */ + private Long tranNum; + + /** + * 匹配数量 + */ + private Long matchNum; + + /** + * 匹配率 + */ + private BigDecimal matchRate; + + /** + * 匹配率 + */ + private Long differNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getTranNum() { + return tranNum; + } + + public void setTranNum(Long tranNum) { + this.tranNum = tranNum; + } + + public Long getMatchNum() { + return matchNum; + } + + public void setMatchNum(Long matchNum) { + this.matchNum = matchNum; + } + + public BigDecimal getMatchRate() { + return matchRate; + } + + public Long getDifferNum() { + return differNum; + } + + public void setDifferNum(Long differNum) { + this.differNum = differNum; + } + + public void setMatchRate(BigDecimal matchRate) { + this.matchRate = matchRate; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteDailyRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteDailyRes.java new file mode 100644 index 00000000..12f0495e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteDailyRes.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运线路条数对象 tbl_qa_route_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteDailyRes { + + /** + * 主键ID + */ + private Long id; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 线路数量 + */ + private Long routeCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 运营公司编码 + */ + private String companyCode; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getRouteCount() { + return routeCount; + } + + public void setRouteCount(Long routeCount) { + this.routeCount = routeCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteMissRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteMissRes.java new file mode 100644 index 00000000..0e4c5b56 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteMissRes.java @@ -0,0 +1,104 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 班次缺失率对象 tbl_qa_route_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteMissRes { + + /** + * 主键Id + */ + private Long id; + + /** + * 缺失率 + */ + private BigDecimal missRate; + + private Long differNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 电子路单数量班次 + */ + private Long routeCount; + + /** + * 调离站班次数量 + */ + private Long busStopCount; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public void setId(Long id) { + this.id = id; + } + + public Long getId() { + return id; + } + + public void setMissRate(BigDecimal missRate) { + this.missRate = missRate; + } + + public BigDecimal getMissRate() { + return missRate; + } + + public Long getDifferNum() { + return differNum; + } + + public void setDifferNum(Long differNum) { + this.differNum = differNum; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setRouteCount(Long routeCount) { + this.routeCount = routeCount; + } + + public Long getRouteCount() { + return routeCount; + } + + public void setBusStopCount(Long busStopCount) { + this.busStopCount = busStopCount; + } + + public Long getBusStopCount() { + return busStopCount; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteTurnoverRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteTurnoverRes.java new file mode 100644 index 00000000..86df561a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteTurnoverRes.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次周转时间对象 tbl_qa_route_turnover_time + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteTurnoverRes { + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 平均周转时间 + */ + private Long turnoverTime; + + /** + * 早晚高峰名称 + */ + private String hlowPeakName; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public Long getTurnoverTime() { + return turnoverTime; + } + + public void setTurnoverTime(Long turnoverTime) { + this.turnoverTime = turnoverTime; + } + + public String getHlowPeakName() { + return hlowPeakName; + } + + public void setHlowPeakName(String hlowPeakName) { + this.hlowPeakName = hlowPeakName; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/StationMissRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/StationMissRes.java new file mode 100644 index 00000000..bcbddf07 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/StationMissRes.java @@ -0,0 +1,259 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 站点缺失率对象 tbl_qa_station_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class StationMissRes { + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 驾驶员工号 + */ + private String driverCode; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date startTime; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 起点 + */ + private String startStation; + + /** + * 终点 + */ + private String endStation; + + /** + * 上下行 + */ + private String up; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 起点站级 + */ + private Long startStationLevels; + + /** + * 终点站级 + */ + private Long endStationLevels; + + /** + * 班次站点数 + */ + private Long levelNum; + + /** + * 车辆到离站数 + */ + private Long busStopNum; + + private Long differNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + /** + * 站点缺失率 + */ + private BigDecimal missRate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Long getStartStationLevels() { + return startStationLevels; + } + + public void setStartStationLevels(Long startStationLevels) { + this.startStationLevels = startStationLevels; + } + + public Long getEndStationLevels() { + return endStationLevels; + } + + public void setEndStationLevels(Long endStationLevels) { + this.endStationLevels = endStationLevels; + } + + public Long getLevelNum() { + return levelNum; + } + + public void setLevelNum(Long levelNum) { + this.levelNum = levelNum; + } + + public Long getBusStopNum() { + return busStopNum; + } + + public void setBusStopNum(Long busStopNum) { + this.busStopNum = busStopNum; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public BigDecimal getMissRate() { + return missRate; + } + + public void setMissRate(BigDecimal missRate) { + this.missRate = missRate; + } + + public Long getDifferNum() { + return differNum; + } + + public void setDifferNum(Long differNum) { + this.differNum = differNum; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDailyRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDailyRes.java new file mode 100644 index 00000000..1b5dbe5a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDailyRes.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运车辆数对象 tbl_qa_vehicle_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class VehicleDailyRes { + + /** + * 主键ID + */ + private Long id; + + /** + * 公司编码 + */ + private String companyCode; + + /** + * 公司名称 + */ + private String companyName; + + /** + * 车辆数 + */ + private Long vehicleCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getVehicleCount() { + return vehicleCount; + } + + public void setVehicleCount(Long vehicleCount) { + this.vehicleCount = vehicleCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDayResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDayResponse.java new file mode 100644 index 00000000..27d78046 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDayResponse.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.jiuyv.sptccc.agile.common.core.page.PageResult; + +public class VehicleDayResponse { + + /** + * 获取总车辆数据 + */ + private Long totalBus; + + private PageResult page; + + public Long getTotalBus() { + return totalBus; + } + + public void setTotalBus(Long totalBus) { + this.totalBus = totalBus; + } + + public PageResult getPage() { + return page; + } + + public void setPage(PageResult page) { + this.page = page; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/BaseResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/BaseResp.java new file mode 100644 index 00000000..3e67d4aa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/BaseResp.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.web; + +import java.time.LocalDateTime; + +/** + * 返回基础类 + * + * @author yulei + **/ +public class BaseResp { + + private String code; + + private String msg; + + private Integer version; + + private String seqNo; + + public String getSeqNo() { + return seqNo; + } + + public void setSeqNo(String seqNo) { + this.seqNo = seqNo; + } + + public Integer getVersion() { + return version; + } + + public void setVersion(Integer version) { + this.version = version; + } + + public LocalDateTime getRequestTime() { + return requestTime; + } + + public void setRequestTime(LocalDateTime requestTime) { + this.requestTime = requestTime; + } + + private LocalDateTime requestTime; + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/ResultCode.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/ResultCode.java new file mode 100644 index 00000000..49bceb66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/ResultCode.java @@ -0,0 +1,281 @@ +package com.jiuyv.sptcc.agile.dataservice.web; + +import com.jiuyv.sptccc.agile.common.core.IErrorCode; + +/** + * 常用API返回对象 + * Created by macro on 2019/4/19. + */ +public enum ResultCode implements IErrorCode { + /** success : 成功. */ + SUCCESS("success", "操作成功"), + PROCESS("process", "订单处理中,请稍后查询"), + + FAILED("failed", "操作失败,请刷新重试"), + VALIDATE_FAILED("input_not_valid", "输入不合法"), + SYS_ERROR("sys_error","系统异常"), + /** date_not_exist : 数据不存在*/ + DATE_NOT_EXIST("date_not_exist","数据不存在"), + /** update_failed : 更新失败*/ + UPDATE_FAILED("update_failed","更新失败,版本过期"), + /** + * 接口权限相关 + */ + FORBIDDEN("forbidden","禁止访问"), + /**该机构不存在 */ + ORG_NOT_FOUND("org_not_found","该机构不存在"), + /** org_date_time_error: 启动时间不在有效时间范围内*/ + ORG_DATE_TIME_ERROR("org_date_time_error","启动时间不在有效时间范围内"), + + /** org_ip_while_list: 该ip不在允许的白名单范围*/ + ORG_IP_WHILE_LIST("org_ip_while_list","该ip不在允许的白名单范围"), + API_NOT_RIGHT("api_not_right","api接口没有权限"), + API_BECOME_DUE("api_become_due","api接口到期,请重新授权"), + + API_HAS_ORG("api_has_org","该api已绑定了机构"), + API_ERROR_STATUS("api_error_status","数据状态不对"), + API_NOT_RELEASE("api_not_release","api接口已注销"), + API_HAS_RELEASE("api_has_release","api接口已注册"), + API_DELETE_ERROR("api_delete_error","只能删除下架和待注册API"), + API_IS_DOWN("api_is_down","机构权限为上架"), + API_CODE_HAS_USED("api_code_has_used","交易码已被使用"), + /**api_path_has_used : 该注册地址已被使用*/ + API_PATH_HAS_USED("api_path_has_used","该注册地址已被使用"), + /**api_register_check_error :注册校验异常 */ + API_REGISTER_CHECK_ERROR("api_register_check_error","注册校验异常"), + + /**api_is_used :该API已经被机构使用,不能删除 */ + API_IS_USED("api_is_used","该API已经被机构使用,不能删除"), + + /**data_time_no_right :没有改范围的数据权限 */ + DATA_TIME_NO_RIGHT("data_time_no_right","没有该范围的数据权限"), + + REPEAT_SUBMIT("duplicate_req_id", "请勿重复提交"), + AUTHORIZATION_LIMIT("authorization limit", "权限限制"), + ILLEGALLY("illegally request", "不合法请求"), + /** input_not_valid : 输入不合法. */ + INPUT_NOT_VALID("input_not_valid", "输入不合法"), + /** duplicate_req_id : 重复请求. */ + DUPLICATE_REQ_ID("duplicate_req_id","重复请求"), + + BUSINESS_ERROR("business_error","调用返回非成功"), + + /** sql_lock_exception : 乐观锁异常*/ + SQL_EXCEPTION("sql_lock_exception","乐观锁异常"), + + /** batch_exception : 跑批数据异常 */ + BATCH_EXCEPTION("batch_exception","跑批数据异常"), + + /** PORTAL_USER_HAS_BINGED : 该会员已经绑定机构,不能重复绑定 */ + PORTAL_USER_HAS_BINGED("portal_user_has_binged","该会员已经绑定机构,不能重复绑定"), + + /** FILE_DOWN_FAIL : 文件下载失败 */ + FILE_DOWN_FAIL("file_down_fail","文件下载失败"), + /** file_down_no_right : 没有文件下载权限 */ + FILE_DOWN_NO_RIGHT("file_down_no_right","没有文件下载权限"), + + /** file_down_no_exist : 文件不存在 */ + FILE_DOWN_NO_EXIST("file_down_no_exist","文件不存在"), + + /** file_down_no_exist : 文件不存在 */ + FILE_DOWN_DATA_ERROR("file_down_data_error","只保留最近一个月的文件,T+4生成文件"), + ; + private String code; + private String message; + + private ResultCode(String code, String message) { + this.code = code; + this.message = message; + } + + @Override + public String getCode() { + return code; + } + @Override + public String getMessage() { + return message; + } + + public static boolean success(String code) { + return SUCCESS.getCode().equalsIgnoreCase(code); + } + +// /** success : 成功. */ +// String SUCCESS = "success"; +// +// /** duplicate_req_id : 重复请求. */ +// String DUPLICATE_REQ_ID = "duplicate_req_id"; +// +// /** input_not_valid : 输入不合法. */ +// String INPUT_NOT_VALID = "input_not_valid"; +// +// /** sign_check_failed : 请求验签失败. */ +// String SIGN_CHECK_FAILED = "sign_check_failed"; +// +// /** sc_not_valid : 非法销售渠道代码. */ +// String SC_NOT_VALID = "sc_not_valid"; +// +// /** duplicate_order : 订单重复. */ +// String DUPLICATE_ORDER = "duplicate_order"; +// +// /** token_not_valid : token不合法. */ +// String TOKEN_NOT_VALID = "token_not_valid"; +// +// /** rule_not_found : 未找到积分规则. */ +// String RULE_NOT_FOUND = "rule_not_found"; +// +// /** order_not_found : 订单未找到. */ +// String ORDER_NOT_FOUND = "order_not_found"; +// +// /** trans_sync_failed : 交易同步失败. */ +// String TRANS_SYNC_FALIED = "trans_sync_failed"; +// +// /** trans_processing : 交易正在承兑. */ +// String TRANS_PROCESSING = "trans_processing"; +// +// /** bussiness_error : 业务错误. */ +// String BUSSINESS_ERROR = "bussiness_error"; +// +// /** smfQry_processing : 查询处理中. */ +// String SMFQRY_PROCESSING = "smfQry_processing"; +// +// /** info_error : 信息完善失败. */ +// String INFO_ERROR = "info_error"; +// +// /** user_not_found : 用户查询失败. */ +// String USER_NOT_FOUND = "user_not_found"; +// +// /** pay_not_found : 支付方式查询失败. */ +// String PAY_NOT_FOUND = "pay_not_found"; +// +// /** sec_scene_not_valid : 非法验证码类型. */ +// String SEC_SCENE_NOT_VALID = "sec_scene_not_valid"; +// +// /** msg_code_not_valid : 验证码验证失败. */ +// String MSG_CODE_NOT_VALID = "msg_code_not_valid"; +// +// /** CUSTOMER_IS_FAIL : 关联常客失败 */ +// String CUSTOMER_IS_FAIL = "customer_is_fail"; +// +// /** bussiness_processing : 业务处理中. */ +// String BUSSINESS_PROCESSING = "bussiness_processing"; +// +// /** no_acc2_account : 用户尚未开户. */ +// String NO_ACC2_ACCOUNT = "no_acc2_account"; +// +// /** not_zero_bal : 账户资产不为零. */ +// String NOT_ZERO_BAL = "not_zero_bal"; +// +// /** post_faild : 通信失败. */ +// String POST_FAILED = "post_faild"; +// +// /** token_sys_error : 系统异常. */ +// String SYS_ERROR = "sys_error"; +// +// /** already_acct_upd : 用户已开二类户. */ +// String ALREADY_ACCT_UPD = "already_acct_upd"; +// +// /** quick_relUser_is_fail: 快捷支付用户中心同步失败. */ +// String QUICK_RELUSER_IS_FAIL = "quick_relUser_is_fail"; +// +// /** acc2_exist : 该用户已开过电子账户*/ +// String ACC2_EXIST = "acc2_exist"; +// +// /** uesr_status_error : 您的用户状态为{0},不支持进行此操作 */ +// String USER_STATUS_ERROR = "user_status_error"; +// +// /** bankInnerPathFailed : 入金通道签约失败. */ +// String BANK_INNER_PATH_FAILED = "bankInnerPathFailed"; +// +// /** search_error : 查询失败*/ +// String SEARCH_ERROR = "search error"; +// +// /** mufly_query_error : 获取偏好信息失败. */ +// String MUFLY_QUERY_ERROR = "mufly_query_error"; +// +// /** user_update_error : 用户信息更新失败. */ +// String USER_UPDATE_ERROR = "user_update_error"; +// +// /** mufly_notice_error : 系统通信失败. */ +// String MUFLY_NOTICE_ERROR = "mufly_notice_error"; +// +// /** mufly_update_9999 : 常客未知错误. */ +// String MUFLY_UPDATE_9999 = "mufly_update_9999"; +// +// /** user_regist_error : 用户注册失败. */ +// String USER_REGIST_ERROR = "user_regist_error"; +// +// /** mufly_error : 常客系统异常. */ +// String MIFLY_ERROR = "mufly_error"; +// +// /** soa_error : SOA系统异常. */ +// String SOA_ERROR = "soa_error"; +// +// /** msgbuss_error : 事找人系统异常. */ +// String MSGBUSS_ERROR = "msgbuss_error"; +// +// /**user_has_regist_code :用户证件号已经注册. */ +// String USER_HAS_REGIST_CODE= "user_has_regist"; +// +// /**user_has_connect_custom :用户常客号已关联. */ +// String USER_HAS_CONNECT_CUSTOM= "user_has_connect_custom"; +// +// /**callcenter_cancel_user_fail :客服中心注销钱包账户失败. */ +// String CALLCENTER_CANCEL_USER_FAIL= "callcenter_cancel_user_fail"; +// +// /**sign_info_fail :签约失败,请稍后再试. */ +// String SIGN_INFO_FAIL = "sign_info_fail"; +// +// /** user_cancel_failed : 钱包用户注销失败. */ +// String USER_CANCEL_FAILED = "user_cancel_failed"; +// +// /** real_cert_failed : 查询实名验证失败. */ +// String REAL_CERT_FAILED = "real_cert_failed"; +// +// /** real_cert_expired : 实名验证过期. */ +// String REAL_CERT_EXPIRED = "real_cert_expired"; +// +// /** process_not_found : 未查询到进行中的流程. */ +// String PROCESS_NOT_FOUND = "process_not_found"; +// +// /** fetch_sku_msg_faile : 获取产品信息失败. */ +// String FETCH_SKU_MEG_FAILE = "fetch_sku_msg_faile"; +// +// /** SKU_STOCK_LOCK_FAILE : 库存锁定失败. */ +// String SKU_STOCK_LOCK_FAILE = "sku_stock_lock_faile"; +// +// /** sku_sale_out_faile : 产品出库失败. */ +// String SKU_SALE_OUT_FAILE = "sku_sale_out_faile"; +// +// /** sku_unlock_faile : 解锁库存失败. */ +// String SKU_UNLOCK_FAILE = "sku_unlock_faile"; +// +// /** order_no_data_null : 根据销售订单号未找到销售订单记录. */ +// String ORDER_NO_DATA_NULL = "order_no_data_null"; +// +// /** refund_num_excess : 退款数量超过原始销售数量. */ +// String REFUND_NUM_EXCESS = "refund_num_excess"; +// +// /** cancle_faile : 订单状态为已完成,不支持取消. */ +// String CANCLE_FAILE = "cancle_faile"; +// +// /** refund_amt_error : 退货总金额不能大于支付金额. */ +// String REFUND_AMT_ERROR = "refund_amt_error"; +// +// /** sales_prod_not_match : 未匹配到原销售子订单. */ +// String SALES_PROD_NOT_MATCH = "sales_prod_not_match"; +// +// /** sku_msg_not_match : 未匹配到sku信息. */ +// String SKU_MSG_NOT_MATCH = "sku_msg_not_match"; +// +// /** fetch_user_info_faile : 获取用户信息失败. */ +// String FETCH_USER_INFO_FAILE = "fetch_user_info_faile"; +// +// /** ord_amt_vali_faile : 订单总金额校验失败. */ +// String ORD_AMT_VALI_FAILE = "ord_amt_vali_faile"; +// +// /** refund_amt_vali_faile : 退款金额校验失败. */ +// String REFUND_AMT_VALI_FAILE = "refund_amt_vali_faile"; + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/annotation/EnumCheckValue.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/annotation/EnumCheckValue.java new file mode 100644 index 00000000..a46b41a8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/annotation/EnumCheckValue.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.web.annotation; + + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.IDictEnum; +import com.jiuyv.sptcc.agile.dataservice.web.validator.EnumStringValidator; + +import javax.validation.Constraint; +import javax.validation.Payload; +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 注解:用于标记需要截取内容的属性 + */ +@Target({ElementType.FIELD}) +@Retention(RetentionPolicy.RUNTIME) +@Constraint(validatedBy = {EnumStringValidator.class}) +public @interface EnumCheckValue { + /** + * 枚举类型 + * @return + */ + Class> value(); + + /** + * 错误信息 + * @return + */ + String message() default "值不在枚举范围内"; + + /** + * 是否允许为空,默认不允许 + * @return + */ + boolean isNullable() default false; + + Class[] groups() default {}; + + Class[] payload() default {}; +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/DateTimeFormatConstant.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/DateTimeFormatConstant.java new file mode 100644 index 00000000..56ecc5ce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/DateTimeFormatConstant.java @@ -0,0 +1,28 @@ +// package com.jiuyv.sptcc.agile.dataservice.web.constant; +// +// /** +// * @ClassName : DateFormart +// * @Description : +// * @Author : sky +// * @Date: 2023-09-19 16:31 +// */ +// public final class DateTimeFormatConstant { +// +// private DateTimeFormatConstant() { +// throw new IllegalStateException("Utility class"); +// } +// +// public static final String YYYY = "yyyy"; +// +// public static final String YYYY_MM = "yyyy-MM"; +// +// public static final String YYYY_MM_DD = "yyyy-MM-dd"; +// +// public static final String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; +// +// public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; +// +// private static final String[] parsePatterns = {"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM", +// "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", +// "yyyy.MM.dd HH:mm", "yyyy.MM"}; +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/HttpStatus.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/HttpStatus.java new file mode 100644 index 00000000..0606ca02 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/HttpStatus.java @@ -0,0 +1,89 @@ +package com.jiuyv.sptcc.agile.dataservice.web.constant; + +/** + * 返回状态码 + * + * @author admin + */ +public class HttpStatus +{ + /** + * 操作成功 + */ + public static final int SUCCESS = 200; + + /** + * 对象创建成功 + */ + public static final int CREATED = 201; + + /** + * 请求已经被接受 + */ + public static final int ACCEPTED = 202; + + /** + * 操作已经执行成功,但是没有返回数据 + */ + public static final int NO_CONTENT = 204; + + /** + * 资源已被移除 + */ + public static final int MOVED_PERM = 301; + + /** + * 重定向 + */ + public static final int SEE_OTHER = 303; + + /** + * 资源没有被修改 + */ + public static final int NOT_MODIFIED = 304; + + /** + * 参数列表错误(缺少,格式不匹配) + */ + public static final int BAD_REQUEST = 400; + + /** + * 未授权 + */ + public static final int UNAUTHORIZED = 401; + + /** + * 访问受限,授权过期 + */ + public static final int FORBIDDEN = 403; + + /** + * 资源,服务未找到 + */ + public static final int NOT_FOUND = 404; + + /** + * 不允许的http方法 + */ + public static final int BAD_METHOD = 405; + + /** + * 资源冲突,或者资源被锁 + */ + public static final int CONFLICT = 409; + + /** + * 不支持的数据,媒体类型 + */ + public static final int UNSUPPORTED_TYPE = 415; + + /** + * 系统内部错误 + */ + public static final int ERROR = 500; + + /** + * 接口未实现 + */ + public static final int NOT_IMPLEMENTED = 501; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/validator/EnumStringValidator.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/validator/EnumStringValidator.java new file mode 100644 index 00000000..9cfdf5f3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/validator/EnumStringValidator.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.web.validator; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.IDictEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.validation.ConstraintValidator; +import javax.validation.ConstraintValidatorContext; +import java.lang.reflect.Method; + +/** + * 校验string类型的枚举 + * + * @author Administrator + */ + +public class EnumStringValidator implements ConstraintValidator { + + private static final Logger logger = LoggerFactory.getLogger(EnumStringValidator.class); + private Class> clazz; + private Boolean isNullable; + + @Override + public void initialize(EnumCheckValue constraintAnnotation) { + clazz = constraintAnnotation.value(); + isNullable = constraintAnnotation.isNullable(); + } + + /** + * Implements the validation logic. + * The state of {@code value} must not be altered. + *

+ * This method can be accessed concurrently, thread-safety must be ensured + * by the implementation. + * + * @param value object to validate + * @param context context in which the constraint is evaluated + * @return {@code false} if {@code value} does not pass the constraint + */ + @Override + public boolean isValid(String value, ConstraintValidatorContext context) { + + if (value == null) { + return Boolean.TRUE.equals(isNullable); + } + try { + Enum[] enumArr = clazz.getEnumConstants(); + for (Enum e : enumArr) { + String keyMethod = "getCode"; + Method method = e.getDeclaringClass().getMethod(keyMethod); + Object keyValue = method.invoke(e); + if ((value.equals(keyValue))) { + return true; + + } + } + + } catch (Exception e) { + logger.error("枚举校验异常:{}", e.getMessage()); + } + return false; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/RequestTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/RequestTest.java new file mode 100644 index 00000000..077b14f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/RequestTest.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.platform.commons.util.ReflectionUtils; +import org.springframework.boot.test.context.SpringBootTest; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +//@SpringBootTest(classes = RequestTest.class) +public class RequestTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.request"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/ResponseTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/ResponseTest.java new file mode 100644 index 00000000..17caaeaa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/ResponseTest.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.platform.commons.util.ReflectionUtils; +import org.springframework.boot.test.context.SpringBootTest; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +//@SpringBootTest(classes = ResponseTest.class) +public class ResponseTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.response"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/pom.xml new file mode 100644 index 00000000..c6a9f2c6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/pom.xml @@ -0,0 +1,267 @@ + + + + agile-data + com.jiuyv.sptcc.agile + 0.2.16 + + 4.0.0 + + agile-data-service + + + 8 + 8 + + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-validation + + + + org.springframework.boot + spring-boot-starter-actuator + + + + + io.micrometer + micrometer-registry-prometheus + + + + + + org.springframework.cloud + spring-cloud-starter-bootstrap + + + org.springframework.cloud + spring-cloud-starter-loadbalancer + + + org.springframework.cloud + spring-cloud-starter-openfeign + + + + io.github.openfeign + feign-okhttp + + + + com.squareup.okhttp3 + okhttp + ${okhttp3.version} + + + org.springframework.cloud + spring-cloud-starter-config + + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-client + + + + org.springframework.cloud + spring-cloud-starter-sleuth + + + + com.jiuyv.sptcc.agile + agile-data-api + + + + com.jiuyv.sptcc.agile + agile-mobile-message-api + + + + org.springframework.boot + spring-boot-devtools + true + + + + org.apache.commons + commons-lang3 + + + + commons-codec + commons-codec + + + + + org.apache.commons + commons-pool2 + + + + com.jcraft + jsch + ${jsch.version} + + + + com.fasterxml.jackson.core + jackson-databind + + + + org.hibernate.validator + hibernate-validator + + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + + + + + org.postgresql + postgresql + + + + + net.logstash.logback + logstash-logback-encoder + ${logstash.logback.version} + + + + + org.springframework.boot + spring-boot-starter-cache + + + + com.github.ben-manes.caffeine + caffeine + ${caffeine.version} + + + + org.springframework.boot + spring-boot-starter-aop + + + + com.github.pagehelper + pagehelper-spring-boot-starter + ${pageHelper.version} + + + + com.luhuiguo + aspose-words + 23.1 + + + + + org.springframework.boot + spring-boot-starter-test + test + + + com.h2database + h2 + test + + + + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + + org.jacoco + jacoco-maven-plugin + + + default-prepare-agent + + prepare-agent + + + + default-report + prepare-package + + report + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + true + com.jiuyv.sptcc.agile.dataservice.AgileDataApplication + + + + + maven-compiler-plugin + + 1.8 + 1.8 + UTF-8 + + lib + + + + + + + src/lib + BOOT-INF/lib/ + + **/*.jar + + + + + src/main/resources + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/AgileDataApplication.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/AgileDataApplication.java new file mode 100644 index 00000000..f7bbc51f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/AgileDataApplication.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptcc.agile.dataservice; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.cloud.netflix.eureka.EnableEurekaClient; +import org.springframework.cloud.openfeign.EnableFeignClients; +import org.springframework.scheduling.annotation.EnableScheduling; + +/** + * @author yulei + */ +@SpringBootApplication +@EnableScheduling +@EnableCaching +@EnableEurekaClient +@EnableFeignClients +public class AgileDataApplication { + private static final Logger LOGGER = LoggerFactory.getLogger(AgileDataApplication.class); + + public static void main(String[] args) { + SpringApplication.run(AgileDataApplication.class, args); + LOGGER.info("(♥◠‿◠)ノ゙ 模块启动成功゙ \n"+ + " ___ ___ ___ \n"+ + " |\\ \\ |\\ \\ / /| \n"+ + " \\ \\ \\ \\ \\ \\/ / / \n"+ + " __ \\ \\ \\ \\ \\ / / \n"+ + " |\\ \\\\_\\ \\ \\/ / / \n"+ + " \\ \\________\\ __/ / / \n"+ + " \\|________| |\\___/ / \n"+ + " \\|___|/ \n" + ); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/annotation/LogStatics.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/annotation/LogStatics.java new file mode 100644 index 00000000..56d9b651 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/annotation/LogStatics.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.common.annotation; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.ApiConstant; +import com.jiuyv.sptcc.agile.dataservice.common.enums.BusinessType; +import com.jiuyv.sptcc.agile.dataservice.common.enums.OperatorType; + +import java.lang.annotation.*; + + +/** + * 统计结构网关接口调用次数 + * + * @author admin + */ +@Target({ElementType.PARAMETER, ElementType.METHOD}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface LogStatics { + + /** + * 请求头机构号 + * 为了兼容敏捷api,机构号就不放在接口里面 + * + */ + String orgCode() default ApiConstant.HEAD_API_CODE; + + /** + * apiCode请求头 + */ + String apiCode() default ApiConstant.HEAD_API_CODE; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/ApiConstant.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/ApiConstant.java new file mode 100644 index 00000000..1482c91f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/ApiConstant.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.common.constants; + +public final class ApiConstant { + private ApiConstant() { + throw new UnsupportedOperationException(); + } + + /** + * api请求头机构号key + */ + public static final String HEAR_ORG_CODE = "orgCode"; + /** + * api请求头交易编码key + */ + public static final String HEAD_API_CODE = "apiCode"; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/Constants.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/Constants.java new file mode 100644 index 00000000..b643ac30 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/Constants.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.common.constants; + +/** + * @ClassName : Constant + * @Description : + * @Author : sky + * @Date: 2023-09-05 15:33 + */ +public final class Constants { + + /** + * 默认版本号 + */ + public static final Long VERSION = 0L; + + /** + * 默认apiCode前缀 + */ + public static final String PRE_APICODE = "API0000"; + + /** + * 横向 + */ + public static final String LINE = "-"; + + /** + * 空格 + */ + public static final String SPACE = ""; + + /** + * 副本 + */ + public static final String COPY = "-副本"; + + /** + * 副本 + */ + public static final String COPY_VERSION = "-SNAPSHOT"; + + /** + * 副本路径 + */ + public static final String COPY_PATH = "/copy"; + + /** + * 机构号 + */ + public static final String ORG_NO_PREFIX = "JGH000"; + + /** + * 机构号长度 + */ + public static final Integer ORG_NO_LENGTH = 18; + + /** + * 统一路径,public+模块名+ 业务路劲 + */ + public static final String PREFIX = "/public/agile-data/api"; + + /** + * 默认版本号 + */ + public static final String VERSION_DEFAULT = "v1.0.0"; + /** + * 斜杠 + */ + public static final String SEPARATOR = "/"; + + /** + * 双斜杠 + */ + public static final String SEPARATOR_DOUBLE = "//"; + /** + * 下载文件接口 + */ + public static final String API_CODE_DOWNLOAD = "download"; + + + public static final String SYSTEM_NAME = "system"; + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseController.java new file mode 100644 index 00000000..a1e74145 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseController.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.common.controller; + +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.StringUtilT; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.WebDataBinder; +import org.springframework.web.bind.annotation.InitBinder; + +import java.beans.PropertyEditorSupport; +import java.util.Date; +import java.util.Map; + +/** + * web层通用数据处理 + * + * @author admin + */ +public class BaseController { + protected final Logger logger = LoggerFactory.getLogger(this.getClass()); + + /** + * 将前台传递过来的日期格式的字符串,自动转化为Date类型 + */ + @InitBinder + public void initBinder(WebDataBinder binder) { + // Date 类型转换 + binder.registerCustomEditor(Date.class, new PropertyEditorSupport() { + @Override + public void setAsText(String text) { + setValue(DateUtils.parseDate(text)); + } + }); + } + + + + /** + * 更新时用的,检查params,没有则初始化 + * 放一下旧的recToken和versionNum + * + * @param recToken versionNum + * @return + */ + public Map checkParams(String recToken, Long versionNum) { + return ParamsUtil.idempotent(recToken,versionNum); + } + + /** + * 分页 + * @param page + */ + public void startPage(PageSize page, String orderStr){ + String orderBy = page.getOrderBy(); + if(!StringUtils.isBlank(orderBy)){ + String orderByString = StringUtilT.toUnderScoreCase(orderBy)+ " " + (page.isDesc()?"desc":"asc"); + PageMethod.startPage(page.getPageNum(),page.getPageSize(),orderByString); + }else if(orderStr != null){ + PageMethod.startPage(page.getPageNum(),page.getPageSize(), StringUtilT.toUnderScoreCase(orderStr) +" " +"desc"); + }else { + PageMethod.startPage(page.getPageNum(),page.getPageSize()); + } + } + /** + * 分页 + * @param page + */ + public void startPage(PageSize page){ + startPage(page,null); + } + + public R handelEx(Exception e){ + if(null == e){ + return R.fail(); + } + logger.info("请求报错:{}",e.getMessage()); + if(logger.isDebugEnabled()){ + logger.info("请求报错",e); + } + if(e instanceof BaseException){ + BaseException exception = (BaseException) e; + return R.fail(exception.getCode(),exception.getMessage()); + }else{ + return R.fail(e.getMessage()); + } + + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseEntity.java new file mode 100644 index 00000000..2fb7f8f7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseEntity.java @@ -0,0 +1,135 @@ +package com.jiuyv.sptcc.agile.dataservice.common.controller; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +/** + * Entity基类 + * + * @author admin + */ +public class BaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** 创建者姓名 */ + private String createByName; + + /** 创建时间 */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** 创建者id(或账户) */ + private String createBy; + + /** 更新者姓名 */ + private String updateByName; + + /** 更新者id(或账户) */ + private String updateBy; + + /** 更新时间 */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** 搜索值 */ + private String searchValue; + + /** 备注 */ + private String remark; + + /** 请求参数 */ + private Map params; + + /** + * @return the createByName + */ + public String getCreateByName() { + return createByName; + } + + /** + * @param createByName the createByName to set + */ + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + /** + * @return the updateByName + */ + public String getUpdateByName() { + return updateByName; + } + + /** + * @param updateByName the updateByName to set + */ + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public String getSearchValue() { + return searchValue == null ? "" : searchValue; + } + + public void setSearchValue(String searchValue) { + this.searchValue = searchValue; + } + + public String getCreateBy() { + return createBy == null ? "" : createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getUpdateBy() { + return updateBy == null ? "" : updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getRemark() { + return remark == null ? "" : remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public Map getParams() { + if (params == null) { + params = new HashMap<>(); + } + return params; + } + + public void setParams(Map params) { + this.params = params; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/core/BaseTime.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/core/BaseTime.java new file mode 100644 index 00000000..3c322e33 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/core/BaseTime.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.common.core; + +import java.time.Instant; +import java.util.Date; + +/** + * 时间对象 + * @author zhouliang + * + */ +public class BaseTime implements java.io.Serializable { + + /** default Serial Version UID*/ + private static final long serialVersionUID = 1L; + + /** 当前时区 */ + private String timeZone ="+08:00"; + + /** 当前时区 YYYY-MM-DD */ + private String dateDay; + + /** 当前时区 YYYY-MM-DD HH:MM:SS */ + private String dateTime; + + /** 当前时区日期 */ + private Date date; + + /** UTC-0 带时区时间 */ + private Instant utcTime; + + /** UTC-0 带时区时间 */ + private String utcTimeStr; + + public String getTimeZone() { + return timeZone; + } + + public void setTimeZone(String timeZone) { + this.timeZone = timeZone; + } + + public String getDateDay() { + return dateDay; + } + + public void setDateDay(String dateDay) { + this.dateDay = dateDay; + } + + public String getDateTime() { + return dateTime; + } + + public void setDateTime(String dateTime) { + this.dateTime = dateTime; + } + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + + public Instant getUtcTime() { + return utcTime; + } + + public void setUtcTime(Instant utcTime) { + this.utcTime = utcTime; + } + + public String getUtcTimeStr() { + return utcTimeStr; + } + + public void setUtcTimeStr(String utcTimeStr) { + this.utcTimeStr = utcTimeStr; + } + + public String getYearMonth() { + return dateDay.substring(0,7); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/ReqBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/ReqBase.java new file mode 100644 index 00000000..30b71ca5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/ReqBase.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.common.dto; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +/** + * @ClassName : ReqBase + * @Description : 请求类基础报文 + * @Author : sky + * @Date: 2023-07-14 10:43 + */ +public class ReqBase implements Serializable { + + /** + * 秘钥版本号 + */ + private String keyVersion; + /** + * 流水号,方便问题追踪 + */ + @NotBlank(message = "流水号不能为空") + private String seriNo; + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgCode; + /** + * 备用 + */ + private String subOrgCode; + + private String transCode; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date timestamp; + + + public String getKeyVersion() { + return keyVersion; + } + + public void setKeyVersion(String keyVersion) { + this.keyVersion = keyVersion; + } + + public String getSeriNo() { + return seriNo; + } + + public void setSeriNo(String seriNo) { + this.seriNo = seriNo; + } + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public Date getTimestamp() { + return timestamp; + } + + public void setTimestamp(Date timestamp) { + this.timestamp = timestamp; + } + + public String getTransCode() { + return transCode; + } + + public void setTransCode(String transCode) { + this.transCode = transCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/RespVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/RespVo.java new file mode 100644 index 00000000..62a4e091 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/RespVo.java @@ -0,0 +1,122 @@ +package com.jiuyv.sptcc.agile.dataservice.common.dto; + + +import java.io.Serializable; + +/** + * 返回包装对象 + * + * @author jiuyv + */ +public class RespVo extends ReqBase implements Serializable { + + /** + * 返回码 + */ + private String respCode; + + /** + * 返回说明 + */ + private String respDesc; + + /** + * 返回码 + */ + private String respSubCode; + + /** + * 返回说明 + */ + private String respSubDesc; + + /** + * 报文内容 + */ + private String body; + + /** + * 签名 + */ + private String sign; + + public RespVo() { + } + + public RespVo(String respCode, String respDesc) { + this.respCode = respCode; + this.respDesc = respDesc; + } + + /** + * @return the body + */ + public String getBody() { + return body; + } + + /** + * @param body the body to set + */ + public void setBody(String body) { + this.body = body; + } + + /** + * @return the sign + */ + public String getSign() { + return sign; + } + + /** + * @param sign the sign to set + */ + public void setSign(String sign) { + this.sign = sign; + } + + /** + * @return the respCode + */ + public String getRespCode() { + return respCode; + } + + /** + * @param respCode the respCode to set + */ + public void setRespCode(String respCode) { + this.respCode = respCode; + } + + /** + * @return the respDesc + */ + public String getRespDesc() { + return respDesc; + } + + /** + * @param respDesc the respDesc to set + */ + public void setRespDesc(String respDesc) { + this.respDesc = respDesc; + } + + public String getRespSubCode() { + return respSubCode; + } + + public void setRespSubCode(String respSubCode) { + this.respSubCode = respSubCode; + } + + public String getRespSubDesc() { + return respSubDesc; + } + + public void setRespSubDesc(String respSubDesc) { + this.respSubDesc = respSubDesc; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessStatus.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessStatus.java new file mode 100644 index 00000000..39a9e030 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessStatus.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * 操作状态 + * + * @author admin + */ +public enum BusinessStatus { + /** + * 成功 + */ + SUCCESS, + + /** + * 失败 + */ + FAIL, +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessType.java new file mode 100644 index 00000000..19fc65f2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessType.java @@ -0,0 +1,83 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * 业务操作类型 + * + * @author admin + */ +public enum BusinessType { + /** + * 其它 + */ + OTHER, + + /** + * 新增 + */ + INSERT, + + /** + * 修改 + */ + UPDATE, + + /** + * 删除 + */ + DELETE, + + /** + * 授权 + */ + GRANT, + + /** + * 导出 + */ + EXPORT, + + /** + * 导入 + */ + IMPORT, + + /** + * 强退 + */ + FORCE, + + /** + * 生成代码 + */ + GENCODE, + + /** + * 清空数据 + */ + CLEAN, + + /** + * 启用 + */ + ENABLE, + + /** + * 停用 + */ + DISABLE, + + /** + * 审核 + */ + REVIEW, + + /** + * 发布 + */ + RELEASE, + + /** + * 推送信息 + */ + SEND, +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/DeleteEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/DeleteEnum.java new file mode 100644 index 00000000..fe546784 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/DeleteEnum.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * @ClassName : deleteEnum + * @Description : + * @Author : sky + * @Date: 2023-09-07 11:34 + */ +public enum DeleteEnum { + YES("1","删除"), + NO("0","正常"); + + private final String code; + + private final String msg; + + DeleteEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public String getCode() { + return code; + } + + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/OperatorType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/OperatorType.java new file mode 100644 index 00000000..ce2df256 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/OperatorType.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * 操作人类别 + * + * @author admin + */ +public enum OperatorType { + /** + * 其它 + */ + OTHER, + + /** + * 后台用户 + */ + MANAGE, + + /** + * 手机端用户 + */ + MOBILE +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BaseException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BaseException.java new file mode 100644 index 00000000..8dc0b7a5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BaseException.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.IErrorCode; + +/** + * + * @Description: 基础异常 + * @author shu_k + * @date 2021年12月3日 下午5:55:56 + */ +public class BaseException extends RuntimeException{ + + /** + * + */ + private static final long serialVersionUID = 1L; + /** + * 错误码 + */ + private final String code; + + /** + * 错误消息 + */ + private final String defaultMessage; + + public BaseException(String defaultMessage) { + super(defaultMessage); + this.code = ResultCode.SYS_ERROR.getCode(); + this.defaultMessage = defaultMessage; + } + + public BaseException(String code, String defaultMessage) { + super(defaultMessage); + this.code = code; + this.defaultMessage = defaultMessage; + } + + public BaseException(IErrorCode iErrorCode) { + super(iErrorCode.getMessage()); + this.code = iErrorCode.getCode(); + this.defaultMessage = iErrorCode.getMessage(); + } + + public String getCode() { + return code; + } + public String getDefaultMessage() { + return defaultMessage; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BatchException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BatchException.java new file mode 100644 index 00000000..1fb874a2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BatchException.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 跑批异常 + * @author shu_k + * @date 2022年2月24日 下午4:41:03 + */ +public class BatchException extends BaseException{ + + private static final long serialVersionUID = 1L; + + + public BatchException(String msg) { + super(ResultCode.SQL_EXCEPTION.getCode(),msg); + } + + + public BatchException() { + super(ResultCode.SQL_EXCEPTION); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BusinessException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BusinessException.java new file mode 100644 index 00000000..cbab9790 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BusinessException.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.apache.commons.lang3.StringUtils; + +/** + * @Description: 业务异常 + * @author shu_k + * @date 2022年1月10日 上午11:12:41 + */ +public class BusinessException extends BaseException{ + + private static final long serialVersionUID = 1L; + + public BusinessException(String msg) { + super(ResultCode.BUSINESS_ERROR.getCode(), StringUtils.isEmpty(msg)? ResultCode.BUSINESS_ERROR.getMessage():msg); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/FailedException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/FailedException.java new file mode 100644 index 00000000..1c35b863 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/FailedException.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.apache.commons.lang3.StringUtils; + +/** + * @ClassName : FailedException + * @Description : 下单失败 + * @Author : sky + * @Date: 2022-07-29 11:19 + */ +public class FailedException extends BaseException{ + + private static final long serialVersionUID = 1L; + + public FailedException(String defaultMessage) { + super(ResultCode.FAILED.getCode(), StringUtils.isEmpty(defaultMessage)? ResultCode.FAILED.getMessage():defaultMessage); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/IdempotentException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/IdempotentException.java new file mode 100644 index 00000000..5b4172f4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/IdempotentException.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @ClassName : IdempotentException + * @Description : + * @Author : sky + * @Date: 2023-09-07 13:38 + */ +public class IdempotentException extends BaseException{ + + + public IdempotentException(String defaultMessage) { + super(ResultCode.DUPLICATE_REQ_ID.getCode(),defaultMessage); + } + + public IdempotentException(){ + super(ResultCode.DUPLICATE_REQ_ID); + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ProcessingException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ProcessingException.java new file mode 100644 index 00000000..0b1b8cc2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ProcessingException.java @@ -0,0 +1,54 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @ClassName : ProcessingException + * @Description : 处理中异常 + * @Author : sky + * @Date: 2022-07-07 16:22 + */ +public class ProcessingException extends RuntimeException { + /** + * + */ + private static final long serialVersionUID = 1L; + /** + * 错误码 + */ + private final String code; + /** + * 错误消息 + */ + private final String defaultMessage; + + /** + * 返回数据 + */ + private final Object data; + + public ProcessingException(String defaultMessage, Object data) { + this.defaultMessage = defaultMessage; + this.data = data; + this.code = ResultCode.PROCESS.getCode(); + } + + public ProcessingException(Object data) { + this.data = data; + this.code = ResultCode.PROCESS.getCode(); + this.defaultMessage = ResultCode.PROCESS.getMessage(); + } + + public String getCode() { + return code; + } + + public String getDefaultMessage() { + return defaultMessage; + } + + public Object getData() { + return data; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ServiceException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ServiceException.java new file mode 100644 index 00000000..e5778d94 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ServiceException.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * 业务异常 + * + * @author admin + */ +public final class ServiceException extends BaseException { + + private static final long serialVersionUID = 1L; + + + public ServiceException(String msg) { + super(ResultCode.API_REGISTER_CHECK_ERROR.getCode(),msg); + } + + + public ServiceException() { + super(ResultCode.API_REGISTER_CHECK_ERROR); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SqlException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SqlException.java new file mode 100644 index 00000000..40d150ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SqlException.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 乐观锁异常处理 + * @author shu_k + * @date 2022年2月23日 上午10:59:27 + */ +public class SqlException extends BaseException{ + + private static final long serialVersionUID = 1L; + + + public SqlException(String msg) { + super(ResultCode.SQL_EXCEPTION.getCode(),msg); + } + + + public SqlException() { + super(ResultCode.SQL_EXCEPTION); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SystemException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SystemException.java new file mode 100644 index 00000000..cb14c764 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SystemException.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 系统异常 + * @author shu_k + * @date 2022年1月10日 上午11:12:41 + */ +public class SystemException extends BaseException{ + + private static final long serialVersionUID = 1L; + + public SystemException(String msg) { + super(ResultCode.SYS_ERROR.getCode(),msg); + } + + + public SystemException() { + super(ResultCode.SYS_ERROR); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ValidException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ValidException.java new file mode 100644 index 00000000..89202b99 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ValidException.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 校验错误 + * @author shu_k + * @date 2022年1月5日 下午4:06:51 + */ +public class ValidException extends BaseException{ + + private static final long serialVersionUID = 1L; + public ValidException(String defaultMessage) { + super(ResultCode.VALIDATE_FAILED.getCode(), defaultMessage); + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ActuatorSecurityConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ActuatorSecurityConfig.java new file mode 100644 index 00000000..1e78694e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ActuatorSecurityConfig.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.env.Environment; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; + +@Configuration +@EnableWebSecurity +public class ActuatorSecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + Environment env; + + @Override + protected void configure(HttpSecurity security) throws Exception { + + String contextPath = env.getProperty("management.endpoints.web.base-path"); + if(StringUtils.isEmpty(contextPath)) { + contextPath = "/actuator"; + } + security.csrf().disable(); + security.authorizeRequests() + .antMatchers("/**"+contextPath+"/serviceregistry","/**"+contextPath+"/refresh") + .access("hasIpAddress(\"127.0.0.1\")") + .antMatchers("/**"+contextPath+"/**") + .authenticated() + .anyRequest() + .permitAll() + .and() + .httpBasic(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ApiMappingConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ApiMappingConfig.java new file mode 100644 index 00000000..62513688 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ApiMappingConfig.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.handler.MappingHandlerMapping; +import com.jiuyv.sptcc.agile.dataservice.handler.RequestHandler; +import com.jiuyv.sptcc.agile.dataservice.handler.RequestInterceptor; +import com.jiuyv.sptcc.agile.dataservice.service.api.impl.ApiMappingEngine; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; + + +/** + * 敏捷api初始化bean + */ +@Configuration +public class ApiMappingConfig { + + @Bean + public MappingHandlerMapping mappingHandlerMapping(RequestMappingHandlerMapping requestMappingHandlerMapping, + ApiMappingEngine apiMappingEngine, + ObjectMapper objectMapper, + AsyncTask asyncTask) { + MappingHandlerMapping mappingHandlerMapping = new MappingHandlerMapping(); + mappingHandlerMapping.setHandler(requestHandler(apiMappingEngine, objectMapper, asyncTask)); + mappingHandlerMapping.setRequestMappingHandlerMapping(requestMappingHandlerMapping); + return mappingHandlerMapping; + } + + @Bean + public RequestHandler requestHandler(ApiMappingEngine apiMappingEngine, ObjectMapper objectMapper, AsyncTask asyncTask) { + RequestHandler handler = new RequestHandler(); + handler.setApiMappingEngine(apiMappingEngine); + handler.setObjectMapper(objectMapper); + handler.setRequestInterceptor(new RequestInterceptor()); + handler.setAsyncTask(asyncTask); + return handler; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/CacheConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/CacheConfig.java new file mode 100644 index 00000000..97fd6336 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/CacheConfig.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import org.springframework.cache.CacheManager; +import org.springframework.cache.caffeine.CaffeineCache; +import org.springframework.cache.interceptor.KeyGenerator; +import org.springframework.cache.support.SimpleCacheManager; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.lang.reflect.Method; +import java.time.Duration; +import java.util.ArrayList; +import java.util.StringJoiner; + +/** + * Caffeine缓存 + * + * @author yulei + **/ +@Configuration +public class CacheConfig { + + @Bean("caffeineCacheManager") + public CacheManager cacheManager() { + SimpleCacheManager cacheManager = new SimpleCacheManager(); + ArrayList caffeineCaches = new ArrayList<>(); + for (CacheEnum cacheEnum : CacheEnum.values()) { + caffeineCaches.add(new CaffeineCache(cacheEnum.name(), + Caffeine.newBuilder().expireAfterWrite(Duration.ofSeconds(cacheEnum.second)) + .initialCapacity(cacheEnum.initSize) + .maximumSize(cacheEnum.maxSize).build())); + } + cacheManager.setCaches(caffeineCaches); + + return cacheManager; + } + + @Bean + public CustomKeyGenerator customKeyGenerator() { + return new CustomKeyGenerator(); + } + + public enum CacheEnum { + /** + * 第一个cache + **/ + FIRST_CACHE(300, 20000, 300), + /** + * 第二个cache + **/ + SECOND_CACHE(60, 10000, 200); + + private final int second; + private final long maxSize; + private final int initSize; + + CacheEnum(int second, long maxSize, int initSize) { + this.second = second; + this.maxSize = maxSize; + this.initSize = initSize; + } + + } + + public class CustomKeyGenerator implements KeyGenerator { + private static final String prefix = "CACHEABLE:"; + + @Override + public Object generate(Object o, Method method, Object... objects) { + StringJoiner joiner = new StringJoiner(":", prefix, ""); + //类名 + joiner.add(o.getClass().getSimpleName()); + //方法名 + joiner.add(method.getName()); + //方法参数 + for (Object param : objects) { + joiner.add(JacksonUtil.obj2String(param)); + } + return joiner.toString(); + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/JacksonConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/JacksonConfig.java new file mode 100644 index 00000000..0ba8a302 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/JacksonConfig.java @@ -0,0 +1,76 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.fasterxml.jackson.annotation.JsonAutoDetect; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.PropertyAccessor; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.databind.module.SimpleModule; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer; +import com.fasterxml.jackson.module.paramnames.ParameterNamesModule; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; +import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; +import java.time.format.DateTimeFormatter; +import java.util.TimeZone; + +@Configuration +public class JacksonConfig { + + @Bean + @Primary + @ConditionalOnMissingBean(ObjectMapper.class) + public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder){ + builder.simpleDateFormat(DateUtils.YYYY_MM_DD_HH_MM_SS); + ObjectMapper objectMapper = builder.createXmlMapper(false) + .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS) + .featuresToDisable(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE) + .timeZone(TimeZone.getTimeZone("Asia/Shanghai")) + .build(); + // null数据不返回 + objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); + objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); + // 反序列化时候遇到不匹配的属性并不抛出异常 + objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + // 序列化时候遇到空对象不抛出异常 + objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + // 反序列化的时候如果是无效子类型,不抛出异常 + objectMapper.configure(DeserializationFeature.FAIL_ON_INVALID_SUBTYPE, false); + // 不使用默认的dateTime进行序列化, + objectMapper.configure(SerializationFeature.WRITE_DATE_KEYS_AS_TIMESTAMPS, false); + // 数据精度问题 + SimpleModule simpleModule = new SimpleModule() + .addSerializer(Long.class, ToStringSerializer.instance) + .addSerializer(Long.TYPE, ToStringSerializer.instance) + .addSerializer(BigInteger.class, ToStringSerializer.instance) + .addSerializer(BigDecimal.class, ToStringSerializer.instance); + objectMapper.registerModule(simpleModule); + + JavaTimeModule javaTimeModule = new JavaTimeModule(); + javaTimeModule.addSerializer(LocalDateTime.class,new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD_HH_MM_SS))); + javaTimeModule.addSerializer(LocalDate.class,new LocalDateSerializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD))); + javaTimeModule.addSerializer(LocalTime.class,new LocalTimeSerializer(DateTimeFormatter.ofPattern(DateUtils.HH_MM_SS))); + javaTimeModule.addDeserializer(LocalDateTime.class,new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD_HH_MM_SS))); + javaTimeModule.addDeserializer(LocalDate.class,new LocalDateDeserializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD))); + javaTimeModule.addDeserializer(LocalTime.class,new LocalTimeDeserializer(DateTimeFormatter.ofPattern(DateUtils.HH_MM_SS))); + objectMapper.registerModule(javaTimeModule).registerModule(new ParameterNamesModule()); + return objectMapper; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/LogAspect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/LogAspect.java new file mode 100644 index 00000000..6e3f17f5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/LogAspect.java @@ -0,0 +1,140 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.annotation.LogStatics; +import com.jiuyv.sptcc.agile.dataservice.common.constants.ApiConstant; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.aspectj.lang.reflect.MethodSignature; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; +import org.springframework.web.multipart.MultipartFile; + +import javax.annotation.Resource; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; +import java.lang.reflect.Method; +import java.util.Enumeration; + +/** + * @Description: 请求日志打印和记录 + * @author shu_k + * @date 2022年4月5日 下午10:26:23 + */ +@Aspect +@Component +public class LogAspect { + + private static final Logger LOGGER = LoggerFactory.getLogger(LogAspect.class); + + @Resource + private AsyncTask asyncTask; + + @Pointcut("(execution(public * com.jiuyv.sptcc.agile.dataservice.controller..*.*(..)))") + public void controllerPointcut() { + // 切点 + } + + @Around("controllerPointcut()") + public Object doAround(ProceedingJoinPoint proceedingJoinPoint) throws Throwable { + + long startTime = System.currentTimeMillis(); + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if (attributes == null) { + return null; + } + HttpServletRequest request = attributes.getRequest(); + String requestUri = request.getRequestURI();// 请求的Uri + String ip = request.getRemoteAddr(); + String requestMethod = request.getMethod(); + Object[] arguments = getArguments(proceedingJoinPoint.getArgs()); + LOGGER.info("请求地址: {} {}", requestUri, requestMethod); + LOGGER.info("远程地址: {}", ip); + String traceId = request.getHeader("traceId"); + String spanId = request.getHeader("spanId"); + LOGGER.info("traceId: {}, spanId :{}", traceId,spanId); + this.printRequestJson(arguments); + Object result; + try { + result = proceedingJoinPoint.proceed(); + this.printRes(result); + staticsLog(request,proceedingJoinPoint,true); + } catch (Exception e) { + if(LOGGER.isDebugEnabled()){ + LOGGER.error(e.getMessage(),e); + }else { + LOGGER.error(e.getMessage()); + } + staticsLog(request,proceedingJoinPoint,false); + throw e; + } + LOGGER.info("------------- 结束 耗时:{} ms -------------", System.currentTimeMillis() - startTime); + return result; + } + + private void staticsLog(HttpServletRequest request, ProceedingJoinPoint proceedingJoinPoint, Boolean isSuccess){ + + MethodSignature signature = (MethodSignature) proceedingJoinPoint.getSignature(); + Method method = signature.getMethod(); + LogStatics annotation = method.getAnnotation(LogStatics.class); + if(annotation != null){ + String apiCode = request.getHeader(ApiConstant.HEAD_API_CODE); + String orgCode = request.getHeader(ApiConstant.HEAR_ORG_CODE); + asyncTask.doStatics(apiCode,orgCode,isSuccess); + } + + } + private Object[] getArguments(Object[] args) { + Object[] arguments = new Object[args.length]; + for (int i = 0; i < args.length; i++) { + if (args[i] instanceof ServletRequest || args[i] instanceof ServletResponse + || args[i] instanceof MultipartFile) { + continue; + } + arguments[i] = args[i]; + } + return arguments; + } + + private void printRequestJson(Object[] arguments) { + String request = JacksonUtil.parseArray(arguments); + LOGGER.info("请求参数: {}", request); + } + + private void printRes(Object obj) { + String result = null; + if (null == obj || obj instanceof ServletResponse) { + result = "****stream******"; + } + else if (obj instanceof CharSequence) { + result = (String) obj; + } + else if (obj instanceof Boolean) { + result = obj.toString(); + } + //分页查询结果不打印 + else if(obj instanceof R){ + result = JacksonUtil.obj2String(obj); + //分页不打印具体列表信息 + if(result.contains("rows")){ + int pageBegin = result.indexOf("["); + int pageEnd = result.lastIndexOf("]"); + String substring = result.substring(pageBegin+1, pageEnd); + LOGGER.info("substring: {}", substring); + result = result.replace(substring,""); + } + }else{ + result = JacksonUtil.obj2String(obj); + } + + LOGGER.info("返回结果: {}", result); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncConfig.java new file mode 100644 index 00000000..40064d5c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncConfig.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.config.async; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableAsync; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; + +import java.util.concurrent.Executor; +import java.util.concurrent.ThreadPoolExecutor; + +@EnableAsync +@Configuration +public class AsyncConfig { + + @Bean("logExecutor") + public Executor logExecutor() { + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + executor.setCorePoolSize(2); + executor.setMaxPoolSize(10); + executor.setQueueCapacity(100); + executor.setKeepAliveSeconds(30); + executor.setThreadNamePrefix("agile-async-service-"); + executor.setWaitForTasksToCompleteOnShutdown(true); + executor.setAwaitTerminationSeconds(60); + executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); + executor.initialize(); + return executor; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncTask.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncTask.java new file mode 100644 index 00000000..b25e7a1b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncTask.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.config.async; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.service.api.ApiLogService; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgStatisticsService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; + +/** + * 异步处理 + */ +@Component +public class AsyncTask { + + @Resource + private ApiLogService apiLogService; + + @Resource + private IOrgStatisticsService orgStatisticsService; + + @Async("logExecutor") + public void doTask(ApiLogEntity apiLogEntity) { + apiLogService.saveApiLog(apiLogEntity); + } + + + @Async("logExecutor") + public void doStatics(String orgNo, String apiCode,Boolean isuceess) { + orgStatisticsService.insertOrgStatistics(orgNo, apiCode ,isuceess); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/feign/FeignConfiguration.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/feign/FeignConfiguration.java new file mode 100644 index 00000000..769aa83d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/feign/FeignConfiguration.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.config.feign; + +import com.jiuyv.sptcc.agile.dataservice.utils.data.MD5; +import feign.RequestInterceptor; +import feign.RequestTemplate; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class FeignConfiguration implements RequestInterceptor { + + @Value("${spring.application.name}") + private String name; + + @Override + public void apply(RequestTemplate template) { + template.header("token", name.concat(":").concat(MD5.md5PlusSalt(name))); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpConfig.java new file mode 100644 index 00000000..9026eb7a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpConfig.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + + +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +@EnableConfigurationProperties(SftpProperties.class) +public class SftpConfig { + // 工厂 + @Bean + public SftpFactory sftpFactory(SftpProperties properties) { + return new SftpFactory(properties); + } + + // 连接池 + @Bean + public SftpPool sftpPool(SftpFactory sftpFactory) { + return new SftpPool(sftpFactory); + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpFactory.java new file mode 100644 index 00000000..aeea69e6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpFactory.java @@ -0,0 +1,69 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + +import com.jcraft.jsch.ChannelSftp; +import com.jcraft.jsch.JSch; +import com.jcraft.jsch.JSchException; +import com.jcraft.jsch.Session; +import org.apache.commons.pool2.BasePooledObjectFactory; +import org.apache.commons.pool2.DestroyMode; +import org.apache.commons.pool2.PooledObject; +import org.apache.commons.pool2.impl.DefaultPooledObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.Properties; +/** + * @ClassName : SftpFactory + * @Description : + * @Author : sky + * @Date: 2023-09-15 17:26 + */ +public class SftpFactory extends BasePooledObjectFactory { + + private static final Logger log = LoggerFactory.getLogger(SftpFactory.class); + + private SftpProperties properties; + + public SftpFactory(SftpProperties properties) { + this.properties = properties; + } + + public SftpProperties getProperties() { + return properties; + } + + @Override + public ChannelSftp create() throws Exception { + try { + log.info("初始化sftp{},{}",properties.getHost(),properties.getPort()); + JSch jsch = new JSch(); + Session sshSession = jsch.getSession(properties.getUsername(), properties.getHost(), properties.getPort()); + sshSession.setPassword(properties.getPassword()); + Properties sshConfig = new Properties(); + sshConfig.put("StrictHostKeyChecking", properties.getStrictHostKeyChecking()==null?"no":properties.getStrictHostKeyChecking()); + sshConfig.put("PreferredAuthentications", "password"); + sshConfig.put("X11Forwarding", "no"); + sshSession.setConfig(sshConfig); + sshSession.connect(properties.getSessionConnectTimeout()); + ChannelSftp channel = (ChannelSftp) sshSession.openChannel("sftp"); + channel.connect(properties.getChannelConnectTimeout()); + channel.cd(properties.getWorkPaths()); + log.info("初始化sftp完成"); + return channel; + } catch (JSchException e) { + log.error("连接sfpt失败:"+e.getMessage()); + return null; + } + } + + @Override + public PooledObject wrap(ChannelSftp channelSftp) { + return new DefaultPooledObject<>(channelSftp); + } + + @Override + public void destroyObject(PooledObject p, DestroyMode destroyMode) throws Exception { + ChannelSftp channelSftp = p.getObject(); + channelSftp.disconnect(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpPool.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpPool.java new file mode 100644 index 00000000..433e1850 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpPool.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + +import com.jcraft.jsch.ChannelSftp; +import org.apache.commons.pool2.impl.GenericObjectPool; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class SftpPool extends GenericObjectPool{ + + private static final Logger log = LoggerFactory.getLogger(SftpPool.class); + + public SftpPool(SftpFactory factory) { + super(factory,factory.getProperties().getPool()); + } + + + + /** + * 获取一个sftp连接对象 + * @return sftp连接对象 + */ + public ChannelSftp borrowObject() throws Exception { + return super.borrowObject(); + } + + /** + * 归还一个sftp连接对象 + * @param channelSftp sftp连接对象 + */ + public void returnObject(ChannelSftp channelSftp) { + if (channelSftp!=null) { + super.returnObject(channelSftp); + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpProperties.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpProperties.java new file mode 100644 index 00000000..14080580 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpProperties.java @@ -0,0 +1,182 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + +import com.jcraft.jsch.ChannelSftp; +import org.apache.commons.pool2.impl.GenericObjectPoolConfig; +import org.springframework.boot.context.properties.ConfigurationProperties; + + +@ConfigurationProperties(prefix = "sftp") +public class SftpProperties { + private String host; + private int port = 22; + private String username; + private String password; + /*** + * 工作路劲 + */ + private String workPaths; + + /** + * 忽略主机密钥检查 + */ + private String strictHostKeyChecking; + /** + * sesion连接超时 + */ + private Integer sessionConnectTimeout; + + /** + * channel连接超时 + */ + private Integer channelConnectTimeout; + + + private Pool pool = new Pool(); + + public static class Pool extends GenericObjectPoolConfig { + /** + * 连接池最大实例数 + */ + private int maxTotal = 10; + /** + * 连接池最大空闲数 + */ + private int maxIdle = 8; + /** + * 连接池最小空闲数 + */ + private int minIdle = 1; + + /** + * 控制获取不到连接时超时时间,避免无限等待 + */ + private long maxWaitMillis = 60000; + + private boolean jmxEnabled = false; + + public Pool() { + super(); + } + + @Override + public int getMaxTotal() { + return maxTotal; + } + + @Override + public void setMaxTotal(int maxTotal) { + this.maxTotal = maxTotal; + } + + @Override + public int getMaxIdle() { + return maxIdle; + } + + @Override + public void setMaxIdle(int maxIdle) { + this.maxIdle = maxIdle; + } + + @Override + public int getMinIdle() { + return minIdle; + } + + @Override + public void setMinIdle(int minIdle) { + this.minIdle = minIdle; + } + + @Override + public long getMaxWaitMillis() { + return maxWaitMillis; + } + + @Override + public void setMaxWaitMillis(long maxWaitMillis) { + this.maxWaitMillis = maxWaitMillis; + } + + @Override + public boolean getJmxEnabled() { + return jmxEnabled; + } + + public void setJmxEnabled(Boolean jmxEnabled) { + this.jmxEnabled = jmxEnabled; + } + } + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public int getPort() { + return port; + } + + public void setPort(int port) { + this.port = port; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getWorkPaths() { + return workPaths; + } + + public void setWorkPaths(String workPaths) { + this.workPaths = workPaths; + } + + public String getStrictHostKeyChecking() { + return strictHostKeyChecking; + } + + public void setStrictHostKeyChecking(String strictHostKeyChecking) { + this.strictHostKeyChecking = strictHostKeyChecking; + } + + public Integer getSessionConnectTimeout() { + return sessionConnectTimeout; + } + + public void setSessionConnectTimeout(Integer sessionConnectTimeout) { + this.sessionConnectTimeout = sessionConnectTimeout; + } + + public Integer getChannelConnectTimeout() { + return channelConnectTimeout; + } + + public void setChannelConnectTimeout(Integer channelConnectTimeout) { + this.channelConnectTimeout = channelConnectTimeout; + } + + public Pool getPool() { + return pool; + } + + public void setPool(Pool pool) { + this.pool = pool; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java new file mode 100644 index 00000000..3355ab0c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java @@ -0,0 +1,353 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.api; + + +import com.aspose.words.Document; +import com.aspose.words.SaveFormat; +import com.aspose.words.SaveOptions; +import com.fasterxml.jackson.core.type.TypeReference; +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.console.DataApiFeign; +import com.jiuyv.sptcc.agile.dataservice.api.portal.DataApiFeignApi; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.common.exception.ServiceException; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.*; +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import com.jiuyv.sptcc.agile.dataservice.utils.*; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import feign.Response; +import net.sf.jsqlparser.schema.Table; +import net.sf.jsqlparser.statement.select.Select; +import net.sf.jsqlparser.util.SelectUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.CollectionUtils; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletResponse; +import java.io.OutputStream; +import java.net.URLEncoder; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 数据API信息表 前端控制器 + */ +@RestController +public class ApiController extends BaseController implements DataApiFeign, DataApiFeignApi { + + private static final Logger log = LoggerFactory.getLogger(ApiController.class); + + private final AgileApiService apiService; + + public ApiController(AgileApiService apiService) { + this.apiService = apiService; + } + + @Override + public R getApiPrefixPath() { + String prefix = apiService.getApiPrefixPath(); + return R.ok(prefix); + } + + /** + * 通过ID查询信息 + * + * @param id + * @return + */ + @Override + public R getDataApiById(Long id) { + ApiEntity apiEntity = apiService.getDataApiById(id); + ApiResponse vo = entityToVo(apiEntity); + return R.ok(vo); + } + + /** + * 查询列表信息 + * + * @return + */ + @Override + public R> getDataApiList(Long sourceId) { + ApiEntity api = new ApiEntity(); + api.setSourceId(sourceId); + List list = apiService.queryByList(api); + List collect = new ArrayList<>(); + if (!CollectionUtils.isEmpty(list)) { + list.forEach(dataApiEntity -> { + ApiResponse vo = entityToVo(dataApiEntity); + collect.add(vo); + }); + } + return R.ok(collect); + } + + /** + * 分页查询信息 + * + * @return + */ + @Override + public R> getDataApiPage(@RequestBody @Validated ApiPageRequest apiQuery) { + ApiEntity entity = new ApiEntity(); + entity.setApiName(apiQuery.getApiName()); + entity.setStatus(apiQuery.getStatus()); + entity.setApiType(apiQuery.getApiType()); + entity.setSourceId(apiQuery.getSourceId()==null?null:Long.valueOf(apiQuery.getSourceId())); + startPage(apiQuery,"updateTime"); + List list = apiService.queryByList(entity); + PageInfo pageInfo = new PageInfo<>(list); + List resList = new ArrayList<>(); + for (ApiEntity apiEntity : list) { + ApiResponse apiVo = entityToVo(apiEntity); + resList.add(apiVo); + } + PageResult p = new PageResult<>(pageInfo.getPageNum(),pageInfo.getPageSize(),pageInfo.getTotal(),resList); + return R.ok(p); + } + + /** + * 添加 + * + * @param dataApi + * @return + */ + @Override + public R saveDataApi(@Validated @RequestBody ApiAddRequest dataApi) { + ApiEntity entity = dtoToEntity(dataApi); + entity.setCreateBy(dataApi.getUserName()); + entity.setApiType(DataApiEnum.API_TYPE.AGILE.getCode()); + apiService.saveDataApi(entity); + return R.ok(null); + } + + /** + * 修改 + * + * @param dataApi + * @return + */ + @Override + public R updateDataApi(@Validated @RequestBody ApiUpdateRequest dataApi) { + ApiEntity entity = dtoToEntity(dataApi); + entity.setApiId(dataApi.getApiId()); + entity.setUpdateBy(dataApi.getUserName()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setParams(checkParams(dataApi.getRecToken(), dataApi.getVersionNum())); + apiService.updateDataApi(entity); + return R.ok(null); + } + + /** + * 删除 + * + * @param request + * @return + */ + @Override + public R deleteDataApiById(@RequestBody @Validated ApiDelRequest request) { + apiService.deleteDataApiById(request); + return R.ok(null); + } + + /** + * 拷贝接口 + * + * @param request + * @return + */ + @Override + public R copyDataApi(@Validated @RequestBody ApiCopyRequest request) { + apiService.copyDataApi(request.getApiId(), request.getUserName()); + return R.ok(null); + } + + /** + * 注册接口 + * + * @param request + * @return + */ + @Override + public R registerDataApi(@Validated @RequestBody ApiStatusRequest request) { + apiService.registerDataApi(request); + return R.ok(); + } + + + /** + * 发布接口 + * + * @param dto + * @return + */ + @Override + public R releaseDataApi(@Validated @RequestBody ApiStatusRequest dto) { + apiService.releaseDataApi(dto); + return R.ok(); + } + + /** + * 注销接口 + * + * @param dto + * @return + */ + @Override + public R cancelDataApi(@Validated @RequestBody ApiStatusRequest dto) { + apiService.cancelDataApi(dto); + return R.ok(); + } + + /** + * 下架接口 + * + * @param dto + * @return + */ + @Override + public R downDataApi(@Validated @RequestBody ApiStatusRequest dto) { + apiService.downDataApi(dto); + return R.ok(); + } + + /** + * 获取api树状结构数据 + * + * @return + */ + @Override + public R> apiTree() { + List treeSelectList = apiService.buildApiTree(new ApiEntity()); + return R.ok(treeSelectList); + } + + @Override + public Response wordDataApi(Long id) throws Exception { + HttpServletResponse response = ServletUtils.getResponse(); + ApiEntity apiEntity = apiService.getDataApiById(id); + if(apiEntity == null){ + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + String apiName = apiEntity.getApiName(); + if(response != null){ + // 清空response + response.reset(); + // 设置response的Header + response.setContentType("application/octet-stream;charset=utf-8"); + // 设置content-disposition响应头控制浏览器以下载的形式打开文件 + response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("接口文档-"+apiName+".docx", "utf-8")); + Document doc = apiService.wordDataApi(id); + OutputStream out = response.getOutputStream(); + doc.save(out, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + out.flush(); + out.close(); + } + return null; + } + + private ApiEntity dtoToEntity(ApiDtoBase dataApi) { + ApiEntity entity = new ApiEntity(); + entity.setApiName(dataApi.getApiName()); + entity.setApiVersion(dataApi.getApiVersion()); + //构建完整的请求地址 + String requestPath = AddressUtil.getRequestPath(dataApi.getApiVersion(), dataApi.getApiUrl()); + entity.setApiUrl(requestPath); + entity.setReqMethod(dataApi.getReqMethod()); + entity.setResType(dataApi.getResType()); + entity.setDeny(dataApi.getDeny()); + entity.setApiCode(dataApi.getApiCode()); + entity.setApiType(dataApi.getApiType()); + entity.setSourceId(dataApi.getExecuteConfig().getSourceId()); + String configType = dataApi.getExecuteConfig().getConfigType(); + if (DataApiEnum.CONFIG_TYPE.FORM.getCode().equals(configType)) { + try { + Table table = new Table(dataApi.getExecuteConfig().getTableName()); + String[] resParams = dataApi.getResParams().stream().map(ResParam::getFieldName).toArray(String[]::new); + Select select = SelectUtils.buildSelectFromTableAndExpressions(table, resParams); + String sqlText = SqlBuilderUtil.getInstance().buildHql(select.toString(), dataApi.getReqParams()); + dataApi.getExecuteConfig().setSqlText(sqlText); + } catch (Exception e) { + log.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new ServiceException("SQL语法有问题,解析出错"); + } + } + entity.setRateLimit(JacksonUtil.obj2String(dataApi.getRateLimit())); + entity.setExecuteConfig(JacksonUtil.obj2String(dataApi.getExecuteConfig())); + entity.setReqParams(JacksonUtil.obj2String(dataApi.getReqParams())); + entity.setResParams(JacksonUtil.obj2String(dataApi.getResParams())); + entity.setStatus(dataApi.getStatus()); + entity.setRemark(dataApi.getRemark()); + return entity; + } + + private ApiResponse entityToVo(ApiEntity entity) { + ApiResponse vo = new ApiResponse(); + vo.setApiId(entity.getApiId()); + vo.setStatus(entity.getStatus()); + vo.setCreateTime(entity.getCreateTime()); + vo.setRemark(entity.getRemark()); + vo.setApiName(entity.getApiName()); + vo.setApiVersion(entity.getApiVersion()); + vo.setApiUrl(AddressUtil.getApiUrl(entity.getApiUrl(),entity.getApiVersion())); + vo.setReqMethod(entity.getReqMethod()); + vo.setDeny(entity.getDeny()); + vo.setResType(entity.getResType()); + vo.setRateLimit(JacksonUtil.string2Obj(entity.getRateLimit(), RateLimit.class)); + vo.setExecuteConfig(JacksonUtil.string2Obj(entity.getExecuteConfig(), ExecuteConfig.class)); + vo.setReqParams(JacksonUtil.string2Obj(entity.getReqParams(), new TypeReference>() {})); + vo.setResParams(JacksonUtil.string2Obj(entity.getResParams(), new TypeReference>() {})); + vo.setRecToken(entity.getRecToken()); + vo.setApiCode(entity.getApiCode()); + vo.setVersionNum(entity.getVersion()); + vo.setCreateBy(entity.getCreateBy()); + vo.setUpdateBy(entity.getUpdateBy()); + vo.setUpdateTime(entity.getUpdateTime()); + return vo; + } + + /** + * 查询用户接口列表 + * + * @param request + * @return + */ + @Override + public R> getUserApiList(@RequestBody @Validated ApiUserRequest request) { + startPage(request); + List list = apiService.getUserApiList(request); + PageInfo page = new PageInfo<>(list); + List collect = page.getList().stream().map(x -> { + DataApiResponse vo = new DataApiResponse(); + vo.setOrgNo(x.getOrgNo()); + vo.setOrgName(x.getOrgName()); + vo.setApiId(x.getApiId()); + vo.setApiName(x.getApiName()); + vo.setRemark(x.getRemark()); + vo.setUpdateTime(x.getUpdateTime()); + vo.setStartTime(x.getStartTime()); + vo.setEndTime(x.getEndTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(page.getTotal(),collect)); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiLogController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiLogController.java new file mode 100644 index 00000000..399d4675 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiLogController.java @@ -0,0 +1,84 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.api; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.console.ApiLogApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiLogRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiLogResponse; +import com.jiuyv.sptcc.agile.dataservice.service.api.ApiLogService; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; + +/** + * api调用日志信息表 前端控制器 + */ +@RestController +public class ApiLogController extends BaseController implements ApiLogApi { + + @Autowired + private ApiLogService IApiLogService; + + /** + * 通过ID查询信息 + * + * @param id + * @return + */ + @Override + public R detail( Long id) { + ApiLogEntity apiLogEntity = IApiLogService.getApiLogById(id); + ApiLogResponse apiLogVo = entityToVo(apiLogEntity); + return R.ok(apiLogVo); + } + + /** + * 分页查询信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated ApiLogRequest request) { + ApiLogEntity entity = new ApiLogEntity(); + entity.setApiName(request.getApiName()); + startPage(request,"callerDate"); + List list = IApiLogService.queryByList(entity); + PageInfo pageInfo = new PageInfo<>(list); + List resList = new ArrayList<>(); + for (ApiLogEntity apiLogEntity : list) { + ApiLogResponse apiLogVo = entityToVo(apiLogEntity); + resList.add(apiLogVo); + } + PageResult tPageResult = new PageResult<>(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), resList); + return R.ok(tPageResult); + } + + private ApiLogResponse entityToVo(ApiLogEntity entity) { + if(entity == null){ + return null; + } + ApiLogResponse vo = new ApiLogResponse(); + vo.setApiLogId(entity.getApiLogId()); + vo.setApiId(entity.getApiId()); + vo.setApiName(entity.getApiName()); + vo.setCallerId(entity.getCallerId()); + vo.setCallerIp(entity.getCallerIp()); + vo.setCallerUrl(entity.getCallerUrl()); + vo.setCallerSize(entity.getCallerSize()); + vo.setCallerParams(entity.getCallerParams()); + vo.setCallerDate(entity.getCallerDate()); + vo.setTime(entity.getTime()); + vo.setMsg(entity.getMsg()); + vo.setStatus(entity.getStatus()); + return vo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java new file mode 100644 index 00000000..b871affb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java @@ -0,0 +1,73 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.batch; + +import com.jiuyv.sptcc.agile.dataservice.api.batch.BatchApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dto.request.batch.DateVo; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IPosMatchRateService; +import com.jiuyv.sptcc.agile.dataservice.service.task.IOrgTask; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.apache.commons.lang3.StringUtils; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; + +@RestController +public class BatchController extends BaseController implements BatchApi { + + @Resource + private IOrgTask orgTask; + + @Resource + private IPosMatchRateService posMatchRateService; + + + @Override + public R expire(String date) { + String dt = date; + if(StringUtils.isBlank(dt)){ + dt = DateUtils.getDate(); + } + Date excuteDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD, dt); + Boolean expire = orgTask.expire(excuteDate); + if(Boolean.TRUE.equals(expire)){ + return R.ok(true); + }else { + return R.fail(false); + } + + } + + @Override + public R down(String date) { + Date excuteDate = null; + if(StringUtils.isBlank(date)){ + excuteDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD, date); + }else{ + excuteDate = DateUtils.addDays(DateUtils.date(),-1); + } + Boolean down = orgTask.down(excuteDate); + if(Boolean.TRUE.equals(down)){ + return R.ok(true); + }else { + return R.fail(false); + } + } + + + @Override + public R posCheck(@RequestBody DateVo dateVo) { + //执行日期 + String date = dateVo.getDate(); + if(StringUtils.isBlank(date)){ + date = DateUtils.getDate(); + } + boolean check = posMatchRateService.check(date); + if(check){ + return R.ok(); + } + return R.fail(false); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgAuthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgAuthController.java new file mode 100644 index 00000000..1b34bce0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgAuthController.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + +import com.jiuyv.sptcc.agile.dataservice.api.OrgAuthApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.OrgAuthService; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * @ClassName : OrgAuthController + * @Description : 机构权限信息查询接口 + * @Author : sky + * @Date: 2023-07-13 13:48 + */ +@RestController +public class OrgAuthController extends BaseController implements OrgAuthApi { + + @Resource + private OrgAuthService orgAuthService; + + @Override + public R getOrgAuth(@RequestBody @Validated OrgAuthReq req) { + OrgAuthResp orgAuth = orgAuthService.getOrgAuth(req); + return R.ok(orgAuth); + } + + @Override + public R check(@RequestBody @Validated OrgAuthRequest request) { + return R.success(orgAuthService.check(request)); + } + + @Override + public R getKey(String orgCode) { + return R.ok(orgAuthService.getKey(orgCode)); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgConfigController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgConfigController.java new file mode 100644 index 00000000..8a9dfe61 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgConfigController.java @@ -0,0 +1,158 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.console.OrgCfgConsoleApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 机构配置信息 + * + * @author yulei + **/ +@RestController +public class OrgConfigController extends BaseController implements OrgCfgConsoleApi { + + @Resource + private IOrgConfigService orgConfigService; + + /** + * 查询 + * + * @param query + * @return + */ + @Override + public R> list(@RequestBody @Validated OrgConfigQueryRequest query) { + OrgConfig config = new OrgConfig(); + config.setOrgNo(query.getOrgNo()); + startPage(query,"updateTime"); + List configList = orgConfigService.queryList(config); + PageInfo pageInfo = new PageInfo<>(configList); + List resList = new ArrayList<>(); + pageInfo.getList().stream().forEach(orgConfig -> { + OrgConfigResponse vo = toResponse(orgConfig); + resList.add(vo); + }); + PageResult result = new PageResult<>(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), resList); + return R.ok(result); + } + + /** + * 详情 + * + * @param configId + * @return + */ + @Override + public R queryDetail( Long configId) { + OrgConfig orgConfig = orgConfigService.queryDetail(configId); + if (orgConfig == null) { + return R.restResult(ResultCode.DATE_NOT_EXIST); + } + OrgConfigResponse vo = toResponse(orgConfig); + vo.setOrgName(orgConfig.getOrgName()); + return R.ok(vo); + } + + private OrgConfigResponse toResponse(OrgConfig orgConfig) { + if(orgConfig == null){ + return null; + } + OrgConfigResponse vo = new OrgConfigResponse(); + vo.setConfigId(orgConfig.getConfigId()); + vo.setOrgNo(orgConfig.getOrgNo()); + vo.setConfigKey(orgConfig.getConfigKey()); + vo.setConfigDesc(orgConfig.getConfigDesc()); + vo.setConfigValue(orgConfig.getConfigValue()); + vo.setVersionNum(orgConfig.getVersionNum()); + vo.setRecToken(orgConfig.getRecToken()); + vo.setDelFlag(orgConfig.getDelFlag()); + vo.setStatus(orgConfig.getStatus()); + vo.setOrgName(orgConfig.getOrgName()); + return vo; + } + + /** + * 新增 + * + * @param dto + * @return + */ + @Override + public R add(@Validated @RequestBody OrgConfigAddRequest dto) { + OrgConfig config = new OrgConfig(); + config.setOrgNo(dto.getOrgNo()); + config.setConfigKey(dto.getConfigKey()); + config.setConfigDesc(dto.getConfigDesc()); + config.setConfigValue(dto.getConfigValue()); + config.setDelFlag(dto.getDelFlag()); + config.setStatus(dto.getStatus()); + orgConfigService.addOrgConfig(config); + return R.ok(); + } + + /** + * 编辑 + * + * @param dto + * @return + */ + @Override + public R edit(@Validated @RequestBody OrgConfigEditRequest dto) { + OrgConfig config = new OrgConfig(); + config.setConfigId(dto.getConfigId()); + config.setOrgNo(dto.getOrgNo()); + config.setConfigKey(dto.getConfigKey()); + config.setConfigDesc(dto.getConfigDesc()); + config.setConfigValue(dto.getConfigValue()); + config.setRecToken(dto.getRecToken()); + config.setDelFlag(dto.getDelFlag()); + config.setStatus(dto.getStatus()); + config.setUpdateByName(dto.getUserName()); + config.setUpdateBy(dto.getUserName()); + config.setParams(ParamsUtil.idempotent(dto.getRecToken(), null)); + orgConfigService.updateOrgConfig(config); + return R.ok(); + } + + /** + * 删除 + * + * @param configId + * @return + */ + @Override + public R delete( Long configId) { + orgConfigService.deleteById(configId); + return R.ok(); + } + + @Override + public R> getConfig( String orgCode) { + OrgConfig req = new OrgConfig(); + req.setOrgNo(orgCode); + List orgConfigs = orgConfigService.queryList(req); + List collect = orgConfigs.stream().map(x -> { + return toResponse(x); + }).collect(Collectors.toList()); + return R.ok(collect); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgInfoController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgInfoController.java new file mode 100644 index 00000000..4570e685 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgInfoController.java @@ -0,0 +1,203 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.console.OrgInfoConsoleApi; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgInfoService; +import com.jiuyv.sptcc.agile.dataservice.utils.data.PhoneUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; + +/** + * 【机构管理信息】Controller + * + * @author yulei + * @date 2023-06-16 + */ +@RestController +public class OrgInfoController extends BaseController implements OrgInfoConsoleApi { + + private final IOrgInfoService orgInfoService; + + private final AgileApiService apiService; + + @Autowired + public OrgInfoController(IOrgInfoService orgInfoService, AgileApiService apiService) { + this.orgInfoService = orgInfoService; + this.apiService = apiService; + } + + /** + * 查询【机构管理信息】列表 + */ + @Override + public R> list(@RequestBody @Validated OrgInfoQueryReq query) { + OrgInfoEntity entity = new OrgInfoEntity(); + entity.setOrgNo(query.getOrgNo()); + entity.setOrgName(query.getOrgName()); + entity.setOrgType(query.getOrgType()); + entity.setStatus(query.getStatus()); + entity.setMemberId(query.getMermberId()); + PageMethod.startPage(query.getPageNum(), query.getPageSize()); + List list = orgInfoService.selectOrgInfoList(entity); + PageInfo pageInfo = new PageInfo<>(list); + List resList = new ArrayList<>(); + for (OrgInfoEntity orgInfo : pageInfo.getList()) { + OrgInfoResp vo = toResp(orgInfo); + resList.add(vo); + } + return R.ok(PageResult.instance(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), resList)); + } + + private OrgInfoResp toResp(OrgInfoEntity orgInfo) { + if (orgInfo == null) { + return null; + } + OrgInfoResp vo = new OrgInfoResp(); + vo.setOrgNo(orgInfo.getOrgNo()); + vo.setOrgName(orgInfo.getOrgName()); + vo.setOrgType(orgInfo.getOrgType()); + vo.setOrgDesc(orgInfo.getOrgDesc()); + vo.setSalt(orgInfo.getSalt()); + vo.setEncrypt(orgInfo.getEncrypt()); + vo.setStartTime(orgInfo.getStartTime()); + vo.setEndTime(orgInfo.getEndTime()); + vo.setStatus(orgInfo.getStatus()); + vo.setVersionNum(orgInfo.getVersionNum()); + vo.setRecToken(orgInfo.getRecToken()); + vo.setDelFlag(orgInfo.getDelFlag()); + vo.setIp(orgInfo.getIp()); + vo.setContractTel(PhoneUtil.decryptEcb(orgInfo.getContractTel())); + vo.setMemberId(orgInfo.getMemberId()); + vo.setCreateBy(orgInfo.getCreateBy()); + vo.setCreateByName(orgInfo.getCreateByName()); + vo.setCreateTime(orgInfo.getCreateTime()); + vo.setUpdateByName(orgInfo.getUpdateByName()); + vo.setUpdateTime(orgInfo.getUpdateTime()); + return vo; + } + + /** + * 获取【机构管理信息】详细信息 + */ + @Override + public R getInfo( String orgNo) { + OrgInfoEntity orgInfo = orgInfoService.selectOrgInfoByOrgNo(orgNo); + if(orgInfo == null){ + return R.fail(ResultCode.DATE_NOT_EXIST); + } + OrgInfoResp vo = toResp(orgInfo); + return R.ok(vo); + } + + /** + * 新增【机构管理信息】 + */ + @Override + public R add(@Validated @RequestBody OrgInfoAddReq addReq) { + orgInfoService.add(addReq); + return R.ok(); + } + + /** + * 修改【机构管理信息】 + */ + @Override + public R edit(@Validated @RequestBody OrgInfoEditReq request) { + orgInfoService.update(request); + return R.ok(); + } + + /** + * 删除【机构管理信息】 + */ + @Override + public R remove(@RequestBody @Validated OrgDelReq request) { + orgInfoService.delete(request); + return R.ok(); + } + + /** + * 启用机构 + */ + @Override + public R run(@RequestBody @Validated OrgInfoStatusReq request) { + orgInfoService.run(request); + return R.ok(); + } + + + /** + * 停用机构 + */ + @Override + public R stop(@RequestBody @Validated OrgInfoStatusReq request) { + orgInfoService.stop(request); + return R.ok(); + } + + /** + * 加盐/加密秘钥 + * + * @return + */ + @Override + public R getGenerateKeyHex() { + String s = null; + try { + s = Sm4Util.generateKeyHex(); + } catch (Exception e) { + throw new BaseException(ResultCode.FAILED); + } + return R.ok(s); + } + + /** + * 授权 + * + * @param request + * @return + */ + @Override + public R orgApiAuth(@RequestBody @Validated OrgApiAuthRequest request) { + orgInfoService.orgApiAuth(request); + return R.ok(); + } + + /** + * 获取权限信息 + * + * @param orgNo + * @return + */ + @Override + public R orgApiAuthInfo(String orgNo) { + OrgApiAuthVo vo = new OrgApiAuthVo(); + Long[] authList = orgInfoService.orgApiAuthList(orgNo); + List treeSelectList = apiService.buildApiTree(new ApiEntity()); + vo.setCheckedKeys(authList); + vo.setTreeSelectList(treeSelectList); + return R.ok(vo); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgStatisticsController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgStatisticsController.java new file mode 100644 index 00000000..792f981e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgStatisticsController.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.console.OrgStcsConsoleApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiStatisticsResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgStatisticsService; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 接口调用次数统计(OrgStatistics)表控制层 + * + * @author makejava + * @since 2023-07-13 16:04:00 + */ +@RestController +public class OrgStatisticsController extends BaseController implements OrgStcsConsoleApi { + /** + * 服务对象 + */ + @Resource + private IOrgStatisticsService orgStatisticsService; + + /** + * mmm + * 分页查询 + * + * @param request 筛选条件 + * @return 查询结果 + */ + @Override + public R> queryByPage(@Validated @RequestBody OrgStatisticsQueryReq request) { + OrgStatisticsEntity vo = new OrgStatisticsEntity(); + vo.setOrgNo(request.getOrgNo()); + vo.setOrgName(request.getOrgName()); + vo.setApiName(request.getApiName()); + PageMethod.startPage(request.getPageNum(), request.getPageSize()); + List list = orgStatisticsService.selectList(vo); + PageInfo pageInfo = new PageInfo<>(list); + List collect = pageInfo.getList().stream().map(orgStatisticsEntity -> { + OrgStatisticsVo osv = new OrgStatisticsVo(); + osv.setId(orgStatisticsEntity.getId()+""); + osv.setOrgNo(orgStatisticsEntity.getOrgNo()); + osv.setOrgName(orgStatisticsEntity.getOrgName()); + osv.setApiId(orgStatisticsEntity.getApiId()+""); + osv.setSuccessTotal(orgStatisticsEntity.getSuccessTotal()); + osv.setFailTotal(orgStatisticsEntity.getFailTotal()); + osv.setApiName(orgStatisticsEntity.getApiName()); + osv.setVersionNum(orgStatisticsEntity.getVersionNum()+""); + osv.setRecToken(orgStatisticsEntity.getRecToken()); + osv.setDelFlag(orgStatisticsEntity.getDelFlag()); + return osv; + }).collect(Collectors.toList()); + + return R.ok(PageResult.instance(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), collect)); + } + + /** + * 查询用户接口调用统计列表 + * + * @param request + * @return + */ + @Override + public R> getUserApiStatistics(@RequestBody @Validated ApiUserRequest request) { + PageMethod.startPage(request.getPageNum(),request.getPageSize()); + List list = orgStatisticsService.getUserInfo(request.getMemberId()); + PageInfo pageInfo = new PageInfo<>(list); + List response = new ArrayList<>(); + for (OrgStatisticsEntity info : pageInfo.getList()) { + DataApiStatisticsResponse res = new DataApiStatisticsResponse(); + res.setId(info.getId()); + res.setOrgNo(info.getOrgNo()); + res.setOrgName(info.getOrgName()); + res.setApiId(info.getApiId()); + res.setSuccessTotal(info.getSuccessTotal()); + res.setFailTotal(info.getFailTotal()); + res.setApiName(info.getApiName()); + res.setUpdateTime(info.getUpdateTime()); + response.add(res); + } + return R.ok(PageResult.instance(pageInfo.getTotal(), response)); + } +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/DownloadController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/DownloadController.java new file mode 100644 index 00000000..de44c98a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/DownloadController.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.jiuyv.sptcc.agile.dataservice.api.portal.SdkDownload; +import com.jiuyv.sptcc.agile.dataservice.api.product.DownloadApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IFileService; +import com.jiuyv.sptcc.agile.dataservice.utils.ServletUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import feign.Response; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.io.IOException; + +/** + * 客流宝文件下载 + * + * @ClassName : DownloadController + * @Description : + * @Author : sky + * @Date: 2023-09-13 17:48 + */ +@RestController +public class DownloadController extends BaseController implements DownloadApi, SdkDownload { + + @Resource + private IFileService fileService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + @Override + public Response download(@RequestBody @Validated DownLoadRequest request) throws IOException { + boolean isSuccess = false; + try{ + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getDate(), request.getOrgNo()); + if(!b){ + throw new BaseException(ResultCode.DATA_TIME_NO_RIGHT); + } + isSuccess = true; + return fileService.downloadFile(request, ServletUtils.getResponse()); + }catch (Exception e){ + logger.info("下载文件异常;{}",e.getMessage()); + isSuccess = false; + if(logger.isDebugEnabled()){ + logger.error("下载文件异常",e); + } + throw e; + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.DWONLOAD.getCode(),isSuccess); + } + + } + + @Override + public ResponseEntity download() { + return fileService.download(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricDayController.java new file mode 100644 index 00000000..0412a9f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricDayController.java @@ -0,0 +1,107 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +/** + * 线路每天客流宝量指标Controller + * + * @author shu_k + * @date 2023-09-18 + */ +@RestController +public class LineMetricDayController extends BaseController implements LineMetricDayApi { + + @Resource + private ILineMetricDayService lineMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 查询线路每天客流宝量指标列表 + */ + public R> list(@RequestBody @Validated LineDayPageReq request) { + startPage(request,"metricDate"); + LineMetricDay lineMetricDay = new LineMetricDay(); + lineMetricDay.setMetricDate(request.getMetricDate()); + lineMetricDay.setLineCode(request.getLineCode()); + lineMetricDay.setLineName(request.getLineName()); + lineMetricDay.setLineStatus(request.getLineStatus()); + lineMetricDay.setCompanyCode(request.getCompanyCode()); + lineMetricDay.setServiceType(request.getServiceType()); + List list = lineMetricDayService.selectLineMetricDayList(lineMetricDay); + PageInfo page = new PageInfo<>(list); + List resList = getResList(page); + return R.ok(PageResult.instance(page.getPageNum(), page.getPages(), page.getTotal(), resList)); + } + + @Override + public R> page(@RequestBody @Validated LineDayReqRequest request) { + + boolean isSuccess = false; + try{ + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if(!b){ + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + // PageMethod.startPage(request.getPageNum(), request.getPageSize()); + startPage(request,"id"); + LineMetricDay lineMetricDay = new LineMetricDay(); + lineMetricDay.setMetricDate(request.getMetricDate()); + List list = lineMetricDayService.selectLineMetricDayList(lineMetricDay); + PageInfo page = new PageInfo<>(list); + List resList = getResList(page); + isSuccess = true; + return R.ok(PageResult.instance(page.getPageNum(), page.getPages(), page.getTotal(), resList)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.LINE_DAY.getCode(),isSuccess); + } + + } + + private static List getResList(PageInfo page) { + List resList = new ArrayList<>(); + for (LineMetricDay metricDate : page.getList()) { + LineDayPageRes res = new LineDayPageRes(); + res.setLineCode(metricDate.getLineCode()); + res.setLineName(metricDate.getLineName()); + res.setLineStatus(metricDate.getLineStatus()); + res.setCompanyCode(metricDate.getCompanyCode()); + res.setCompanyName(metricDate.getCompanyName()); + res.setServiceType(metricDate.getServiceType()); + res.setMetricDate(metricDate.getMetricDate()); + res.setMetricValue(metricDate.getMetricValue()); + res.setLineNo(metricDate.getLineNo()); + res.setCreateTime(metricDate.getCreateTime()); + resList.add(res); + } + return resList; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricHourController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricHourController.java new file mode 100644 index 00000000..c5bc7b75 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricHourController.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricHourApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 线路小时客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineMetricHourController extends BaseController implements LineMetricHourApi { + + @Resource + private ILineMetricHourService lineMetricHourService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + private static List getMetricHourRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + LineMetricHourRes lineMetricHourRes = new LineMetricHourRes(); + lineMetricHourRes.setLineCode(x.getLineCode()); + lineMetricHourRes.setLineName(x.getLineName()); + lineMetricHourRes.setLineStatus(x.getLineStatus()); + lineMetricHourRes.setCompanyCode(x.getCompanyCode()); + lineMetricHourRes.setCompanyName(x.getCompanyName()); + lineMetricHourRes.setServiceType(x.getServiceType()); + lineMetricHourRes.setMetricHour(x.getMetricHour()); + lineMetricHourRes.setMetricDate(x.getMetricDate()); + lineMetricHourRes.setMetricValue(x.getMetricValue()); + lineMetricHourRes.setLineNo(x.getLineNo()); + lineMetricHourRes.setId(x.getId()); + lineMetricHourRes.setCreateTime(x.getCreateTime()); + return lineMetricHourRes; + }).collect(Collectors.toList()); + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated LineHourPageReq request) { + LineMetricHour lineMetricHour = new LineMetricHour(); + lineMetricHour.setLineCode(request.getLineCode()); + lineMetricHour.setLineName(request.getLineName()); + lineMetricHour.setLineStatus(request.getLineStatus()); + lineMetricHour.setCompanyCode(request.getCompanyCode()); + lineMetricHour.setServiceType(request.getServiceType()); + lineMetricHour.setMetricDate(request.getMetricDate()); + lineMetricHour.setMetricHour(request.getHour()); + startPage(request,"metricDate"); + List lineMetricHours = lineMetricHourService.selectlineMetricHourList(lineMetricHour); + PageInfo pageInfo = new PageInfo<>(lineMetricHours); + List collect = getMetricHourRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated LineHourRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineMetricHour lineMetricHour = new LineMetricHour(); + lineMetricHour.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineMetricHours = lineMetricHourService.selectlineMetricHourList(lineMetricHour); + PageInfo pageInfo = new PageInfo<>(lineMetricHours); + List collect = getMetricHourRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.LINE_HOUR.getCode(),isSuccess); + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricMonthController.java new file mode 100644 index 00000000..419a4f33 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricMonthController.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 线路月客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineMetricMonthController extends BaseController implements LineMetricMonthApi { + + @Resource + private ILineMetricMonthService lineMetricMonthService; + + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated LineMetricMonthReq request) { + + LineMetricMonth req = new LineMetricMonth(); + req.setLineCode(request.getLineCode()); + req.setLineStatus(request.getLineStatus()); + req.setLineName(request.getLineName()); + req.setCompanyCode(request.getCompanyCode()); + req.setServiceType(request.getServiceType()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + + startPage(request,"metricMonth"); + List lineMetricMonths = lineMetricMonthService.selectlineMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineMetricMonths); + List collect = getMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated LineMonthRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineMetricMonth req = new LineMetricMonth(); + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, request.getMetricMonth()); + req.setMetricMonth(monthStr); + startPage(request,"id"); + List lineMetricMonths = lineMetricMonthService.selectlineMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineMetricMonths); + List collect = getMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.LINE_MONTH.getCode(),isSuccess); + } + + } + + private static List getMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + LineMetricMonthRes res = new LineMetricMonthRes(); + res.setLineCode(x.getLineCode()); + res.setLineName(x.getLineName()); + res.setLineStatus(x.getLineStatus()); + res.setCompanyCode(x.getCompanyCode()); + res.setCompanyName(x.getCompanyName()); + res.setServiceType(x.getServiceType()); + res.setMetricMonth(x.getMetricMonth()); + res.setMetricValue(x.getMetricValue()); + res.setLineNo(x.getLineNo()); + res.setId(x.getId()); + res.setCreateTime(x.getCreateTime()); + return res; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricDayController.java new file mode 100644 index 00000000..e6c59194 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricDayController.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationMetricDayController extends BaseController implements StationMetricDayApi { + + @Resource + private ILineStationMetricDayService lineStationMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricDayReq request) { + LineStationMetricDay req = new LineStationMetricDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List lineStationMetricDays = lineStationMetricDayService.selectLineStationMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricDays); + List collect = getMetricDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationDayRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationMetricDay req = new LineStationMetricDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationMetricDays = lineStationMetricDayService.selectLineStationMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricDays); + List collect = getMetricDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_DAY.getCode(),isSuccess); + } + + } + + private static List getMetricDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricDayRes res = new StationMetricDayRes(); + res.setLineCode(x.getLineCode()); + res.setLineName(x.getLineName()); + res.setUp(x.getUp()); + res.setLevelName(x.getLevelName()); + res.setLevels(x.getLevels()); + res.setMetricDate(x.getMetricDate()); + res.setMetricValue(x.getMetricValue()); + res.setLineNo(x.getLineNo()); + res.setId(x.getId()); + res.setCreateTime(x.getCreateTime()); + return res; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricHourController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricHourController.java new file mode 100644 index 00000000..d7d2f8bf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricHourController.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationMetricHourApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点小时客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationMetricHourController extends BaseController implements StationMetricHourApi { + + @Resource + private ILineStationMetricHourService lineStationMetricHourService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricHourReq request) { + LineStationMetricHour req = new LineStationMetricHour(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + req.setMetricHour(request.getHour()); + startPage(request,"metricDate"); + List lineStationMetricHours = lineStationMetricHourService.selectLineStationMetricHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricHours); + List collect = getMetricHourRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationHourRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationMetricHour req = new LineStationMetricHour(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationMetricHours = lineStationMetricHourService.selectLineStationMetricHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricHours); + List collect = getMetricHourRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_HOUR.getCode(),isSuccess); + } + + } + + private static List getMetricHourRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricHourRes res = new StationMetricHourRes(); + res.setLineCode(x.getLineCode()); + res.setLineName(x.getLineName()); + res.setUp(x.getUp()); + res.setLevelName(x.getLevelName()); + res.setLevels(x.getLevels()); + res.setMetricDate(x.getMetricDate()); + res.setMetricValue(x.getMetricValue()); + res.setLineNo(x.getLineNo()); + res.setId(x.getId()); + res.setMetricHour(x.getMetricHour()); + res.setCreateTime(x.getCreateTime()); + return res; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricMonthController.java new file mode 100644 index 00000000..d425f3ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricMonthController.java @@ -0,0 +1,115 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationMetricMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点月客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationMetricMonthController extends BaseController implements StationMetricMonthApi { + + @Resource + private ILineStationMetricMonthService lineStationMetricMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricMonthReq request) { + LineStationMetricMonth req = new LineStationMetricMonth(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + startPage(request,"metricMonth"); + List lineStationMetricMonths = lineStationMetricMonthService.selectLineStationMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricMonths); + List collect = getMetricMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationMonthRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationMetricMonth req = new LineStationMetricMonth(); + Date metricMonth = request.getMetricMonth(); + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + startPage(request,"id"); + List lineStationMetricMonths = lineStationMetricMonthService.selectLineStationMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricMonths); + List collect = getMetricMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_MONTH.getCode(),isSuccess); + } + + } + + private static List getMetricMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricMonthRes monthVo = new StationMetricMonthRes(); + monthVo.setLineCode(x.getLineCode()); + monthVo.setLineName(x.getLineName()); + monthVo.setUp(x.getUp()); + monthVo.setLevels(x.getLevels()); + monthVo.setLevelName(x.getLevelName()); + monthVo.setMetricMonth(x.getMetricMonth()); + monthVo.setMetricValue(x.getMetricValue()); + monthVo.setLineNo(x.getLineNo()); + monthVo.setId(x.getId()); + monthVo.setCreateTime(x.getCreateTime()); + return monthVo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransDayController.java new file mode 100644 index 00000000..067e3808 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransDayController.java @@ -0,0 +1,113 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationTransDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationTransDayController extends BaseController implements StationTransDayApi { + + @Resource + private ILineStationTransDayService lineStationTransDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationTransDayReq request) { + LineStationTransDay req = new LineStationTransDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List lineStationTransDays = lineStationTransDayService.selectLineStationTransDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransDays); + List collect = getTransDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + private static List getTransDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationTransDayRes vo = new StationTransDayRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setMetricDate(x.getMetricDate()); + vo.setCreateTime(x.getCreateTime()); + vo.setExchangeType(x.getExchangeType()); + return vo; + }).collect(Collectors.toList()); + } + + @Override + public R> page(@RequestBody @Validated StationTransDayRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationTransDay req = new LineStationTransDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationTransDays = lineStationTransDayService.selectLineStationTransDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransDays); + List collect = getTransDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_TRANS_DAY.getCode(),isSuccess); + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransHourController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransHourController.java new file mode 100644 index 00000000..24a92a1a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransHourController.java @@ -0,0 +1,114 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationTransHourApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransHourService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + + +/** + * 站点小时换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationTransHourController extends BaseController implements StationTransHourApi { + + @Resource + private ILineStationTransHourService lineStationTransHourService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricHourReq request) { + + LineStationTransHour req = new LineStationTransHour(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + req.setMetricDate(request.getMetricDate()); + req.setMetricHour(request.getHour()); + startPage(request,"metricDate"); + List lineStationTransHours = lineStationTransHourService.selectLineStationTransHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransHours); + + List collect = getMetricHourRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationTransHourRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationTransHour req = new LineStationTransHour(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationTransHours = lineStationTransHourService.selectLineStationTransHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransHours); + List collect = getMetricHourRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_TRANS_HOUR.getCode(),isSuccess); + } + + } + + private static List getMetricHourRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricHourRes vo = new StationMetricHourRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevelName(x.getLevelName()); + vo.setLevels(x.getLevels()); + vo.setMetricDate(x.getMetricDate()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setId(x.getId()); + vo.setMetricHour(x.getMetricHour()); + vo.setCreateTime(x.getCreateTime()); + vo.setExchangeType(x.getExchangeType()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransMonthController.java new file mode 100644 index 00000000..b5d1e36e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransMonthController.java @@ -0,0 +1,120 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationTransMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点月换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationTransMonthController extends BaseController implements StationTransMonthApi { + + @Resource + private ILineStationTransMonthService lineStationTransMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationTransMonthReq request) { + LineStationTransMonth req = new LineStationTransMonth(); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + req.setLineCode(request.getLineCode()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + req.setLineCode(request.getLineCode()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + startPage(request,"metricMonth"); + List lineStationTransMonths = lineStationTransMonthService.selectLineStationTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransMonths); + List collect = getTransMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationTransMonthRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationTransMonth req = new LineStationTransMonth(); + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, request.getMetricMonth()); + req.setMetricMonth(monthStr); + startPage(request,"id"); + List lineStationTransMonths = lineStationTransMonthService.selectLineStationTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransMonths); + List collect = getTransMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_TRNAS_MONTH.getCode(),isSuccess); + } + + } + + private static List getTransMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationTransMonthRes vo = new StationTransMonthRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricMonth(x.getMetricMonth()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/RouteMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/RouteMetricDayController.java new file mode 100644 index 00000000..671a71c3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/RouteMetricDayController.java @@ -0,0 +1,126 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.RouteMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.RouteMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IRouteMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 班次日客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class RouteMetricDayController extends BaseController implements RouteMetricDayApi { + @Resource + private IRouteMetricDayService routeMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteMetricDayReq request) { + RouteMetricDay req = new RouteMetricDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setStartStation(request.getStartStation()); + req.setStartTime(request.getStartTime()); + req.setEndStation(request.getEndStation()); + req.setArrivalTime(request.getArrivalTime()); + req.setWaybillType(request.getWaybillType()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List routeMetricDays = routeMetricDayService.selectRouteMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(routeMetricDays); + + List collect = pageInfo.getList().stream().map(this::toResponse).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + /** + * 查看详情 + * + * @param id + * @return + */ + @Override + public R detail(Long id) { + RouteMetricDay routeMetricDay = routeMetricDayService.selectRouteMetricDayById(id); + return R.ok(toResponse(routeMetricDay)); + } + + @Override + public R> page(@RequestBody @Validated RouteDayRequest request) { + + boolean isSuccess = false; + try { + // 判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + RouteMetricDay req = new RouteMetricDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List routeMetricDays = routeMetricDayService.selectRouteMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(routeMetricDays); + List collect = pageInfo.getList().stream().map(this::toResponse).collect(Collectors.toList()); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } catch (Exception e) { + return handelEx(e); + } finally { + // 记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.ROUTE_DAY.getCode(), isSuccess); + } + + } + + private RouteMetricDayRes toResponse(RouteMetricDay routeMetricDay) { + RouteMetricDayRes res = new RouteMetricDayRes(); + res.setLineCode(routeMetricDay.getLineCode()); + res.setLineName(routeMetricDay.getLineName()); + res.setUp(routeMetricDay.getUp()); + res.setLicensePlate(routeMetricDay.getLicensePlate()); + res.setDriverCode(routeMetricDay.getDriverCode()); + res.setStartStation(routeMetricDay.getStartStation()); + res.setStartTime(routeMetricDay.getStartTime()); + res.setEndStation(routeMetricDay.getEndStation()); + res.setArrivalTime(routeMetricDay.getArrivalTime()); + res.setWaybillType(routeMetricDay.getWaybillType()); + res.setMetricDate(routeMetricDay.getMetricDate()); + res.setMetricValue(routeMetricDay.getMetricValue()); + res.setLineNo(routeMetricDay.getLineNo()); + res.setId(routeMetricDay.getId()); + res.setCreateTime(routeMetricDay.getCreateTime()); + return res; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricDayController.java new file mode 100644 index 00000000..f680092c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricDayController.java @@ -0,0 +1,112 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日常乘客客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController + +public class StationFreqMetricDayController extends BaseController implements StationFreqMetricDayApi { + + @Resource + private IStationFreqMetricDayService stationFreqMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqMetricDayReq request) { + StationFreqMetricDay req = new StationFreqMetricDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List stationFreqMetricDays = stationFreqMetricDayService.selectStationFreqMetricDayList(req); + + PageInfo pageInfo = new PageInfo<>(stationFreqMetricDays); + List collect = getFreqMetricDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqDayRequest request) { + + boolean isSuccess = true; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqMetricDay req = new StationFreqMetricDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List stationFreqMetricDays = stationFreqMetricDayService.selectStationFreqMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqMetricDays); + List collect = getFreqMetricDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_DAY.getCode(),isSuccess); + } + + } + + private static List getFreqMetricDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqMetricDayRes vo = new StationFreqMetricDayRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setLineStatus(x.getLineStatus()); + vo.setMetricDate(x.getMetricDate()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricMonthController.java new file mode 100644 index 00000000..8304cb35 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricMonthController.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqMetricMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点月换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class StationFreqMetricMonthController extends BaseController implements StationFreqMetricMonthApi { + + @Resource + private IStationFreqMetricMonthService stationFreqMetricMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqMetricMonthReq request) { + + StationFreqMetricMonth req = new StationFreqMetricMonth(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + req.setMetricMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth)); + } + startPage(request,"metricMonth"); + List stationFreqMetricMonths = stationFreqMetricMonthService.selectStationFreqMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqMetricMonths); + List collect = getFreqMetricMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqMonthRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqMetricMonth req = new StationFreqMetricMonth(); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + req.setMetricMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth)); + } + startPage(request,"id"); + List stationFreqMetricMonths = stationFreqMetricMonthService.selectStationFreqMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqMetricMonths); + List collect = getFreqMetricMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_MONTH.getCode(),isSuccess); + } + + } + + private static List getFreqMetricMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqMetricMonthRes vo = new StationFreqMetricMonthRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setLineStatus(x.getLineStatus()); + vo.setMetricMonth(x.getMetricMonth()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransDayController.java new file mode 100644 index 00000000..4415a290 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransDayController.java @@ -0,0 +1,108 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqTransDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日常乘客换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class StationFreqTransDayController extends BaseController implements StationFreqTransDayApi { + + @Resource + private IStationFreqTransDayService stationFreqTransDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqTransDayReq request) { + StationFreqTransDay req = new StationFreqTransDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + req.setExchangeType(request.getExchangeType()); + startPage(request,"metricDate"); + List stationFreqTransDays = stationFreqTransDayService.selectStationFreqTransDayList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransDays); + List collect = getFreqTransDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqTransDayRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqTransDay req = new StationFreqTransDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List stationFreqTransDays = stationFreqTransDayService.selectStationFreqTransDayList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransDays); + List collect = getFreqTransDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_TRANS_DAY.getCode(),isSuccess); + } + + } + + private static List getFreqTransDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqTransDayRes vo = new StationFreqTransDayRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricDate(x.getMetricDate()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransMonthController.java new file mode 100644 index 00000000..448406fa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransMonthController.java @@ -0,0 +1,121 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqTransMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日常乘客换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class StationFreqTransMonthController extends BaseController implements StationFreqTransMonthApi { + + @Resource + private IStationFreqTransMonthService stationFreqTransMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqTransMonthReq request) { + + StationFreqTransMonth req = new StationFreqTransMonth(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + startPage(request,"metricMonth"); + List stationFreqTransMonths = stationFreqTransMonthService.selectStationFreqTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransMonths); + List collect = getTransMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqTransMonthRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqTransMonth req = new StationFreqTransMonth(); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + startPage(request,"id"); + List stationFreqTransMonths = stationFreqTransMonthService.selectStationFreqTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransMonths); + List collect = getTransMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_TRANS_MONTH.getCode(),isSuccess); + } + + } + + private static List getTransMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqTransMonthRes vo = new StationFreqTransMonthRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricMonth(x.getMetricMonth()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/CentimeDelayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/CentimeDelayController.java new file mode 100644 index 00000000..79eb2c4d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/CentimeDelayController.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.quality.CentimeDelayApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.CentimeDelayRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.ICentimeDelayService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 延迟上送比率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class CentimeDelayController extends BaseController implements CentimeDelayApi { + + private final ICentimeDelayService centimeDelayService; + + public CentimeDelayController(ICentimeDelayService centimeDelayService) { + this.centimeDelayService = centimeDelayService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated CentimeDelayReq request) { + + CentimeDelay req = new CentimeDelay(); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List centimeDelays = centimeDelayService.selectCentimeDelayList(req); + PageInfo pageInfo = new PageInfo<>(centimeDelays); + List collect = pageInfo.getList().stream().map(x -> { + CentimeDelayRes vo = new CentimeDelayRes(); + vo.setId(x.getId()); + vo.setTimeRange(x.getTimeRange()); + vo.setDelayCount(x.getDelayCount()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/PosMatchRateController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/PosMatchRateController.java new file mode 100644 index 00000000..0c63e49d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/PosMatchRateController.java @@ -0,0 +1,66 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.PosMatchRateApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.PosMatchRateRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IPosMatchRateService; +import com.jiuyv.sptcc.agile.dataservice.utils.DifferUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * Pos匹配率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class PosMatchRateController extends BaseController implements PosMatchRateApi { + + private final IPosMatchRateService posMatchRateService; + + public PosMatchRateController(IPosMatchRateService posMatchRateService) { + this.posMatchRateService = posMatchRateService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated PosMatchRateReq request) { + + PosMatchRate req = new PosMatchRate(); + + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List posMatchRates = posMatchRateService.selectPosMatchRateList(req); + PageInfo pageInfo = new PageInfo<>(posMatchRates); + List collect = pageInfo.getList().stream().map(x -> { + PosMatchRateRes vo = new PosMatchRateRes(); + vo.setId(x.getId()); + vo.setTranNum(x.getTranNum()); + vo.setMatchNum(x.getMatchNum()); + vo.setMatchRate(x.getMatchRate()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + vo.setDifferNum(DifferUtil.differ(x.getMatchNum(),x.getTranNum())); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteDailyCountController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteDailyCountController.java new file mode 100644 index 00000000..4c40ca21 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteDailyCountController.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.RouteDailyCountApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteDailyRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 日营运线路条数Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class RouteDailyCountController extends BaseController implements RouteDailyCountApi { + + private final IRouteDailyCountService routeDailyCountService; + + public RouteDailyCountController(IRouteDailyCountService routeDailyCountService) { + this.routeDailyCountService = routeDailyCountService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteDailyReq request) { + + RouteDailyCount req = new RouteDailyCount(); + req.setCompanyName(request.getCompanyName()); + req.setTxnDate(request.getTxnDate()); + req.setCompanyCode(request.getCompanyCode()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List routeDailyCounts = routeDailyCountService.selectRouteDailyCountList(req); + PageInfo pageInfo = new PageInfo<>(routeDailyCounts); + List collect = pageInfo.getList().stream().map(x -> { + RouteDailyRes vo = new RouteDailyRes(); + vo.setId(x.getId()); + vo.setCompanyName(x.getCompanyName()); + vo.setRouteCount(x.getRouteCount()); + vo.setTxnDate(x.getTxnDate()); + vo.setCompanyCode(x.getCompanyCode()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteMissController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteMissController.java new file mode 100644 index 00000000..023104b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteMissController.java @@ -0,0 +1,66 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.RouteMissApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteMissRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DifferUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 班次缺失率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class RouteMissController extends BaseController implements RouteMissApi { + + private final IRouteMissService routeMissService; + + public RouteMissController(IRouteMissService routeMissService) { + this.routeMissService = routeMissService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteMissReq request) { + + RouteMiss req = new RouteMiss(); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + + startPage(request,"txnDate"); + List routeMisses = routeMissService.selectRouteMissList(req); + PageInfo pageInfo = new PageInfo<>(routeMisses); + List collect = pageInfo.getList().stream().map(x -> { + RouteMissRes vo = new RouteMissRes(); + vo.setId(x.getId()); + vo.setMissRate(x.getMissRate()); + vo.setTxnDate(x.getTxnDate()); + vo.setRouteCount(x.getRouteCount()); + vo.setBusStopCount(x.getBusStopCount()); + vo.setCreateTime(x.getCreateTime()); + vo.setDifferNum(DifferUtil.differ(x.getRouteCount(),x.getBusStopCount())); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteTurnoverTimeController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteTurnoverTimeController.java new file mode 100644 index 00000000..8a0684d6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteTurnoverTimeController.java @@ -0,0 +1,67 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.RouteTurnoverTimeApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteTurnoverRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteTurnoverTimeService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 班次周转时间Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class RouteTurnoverTimeController extends BaseController implements RouteTurnoverTimeApi { + + private final IRouteTurnoverTimeService routeTurnoverTimeService; + + public RouteTurnoverTimeController(IRouteTurnoverTimeService routeTurnoverTimeService) { + this.routeTurnoverTimeService = routeTurnoverTimeService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteTurnoverReq request) { + RouteTurnoverTime req = new RouteTurnoverTime(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setHlowPeakName(request.getHlowPeakName()); + req.setWayBillType(request.getWayBillType()); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request, "txnDate"); + List routeTurnoverTimes = routeTurnoverTimeService.selectRouteTurnoverTimeList(req); + PageInfo pageInfo = new PageInfo<>(routeTurnoverTimes); + List collect = pageInfo.getList().stream().map(x -> { + RouteTurnoverRes vo = new RouteTurnoverRes(); + vo.setId(x.getId()); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setTurnoverTime(x.getTurnoverTime()); + vo.setHlowPeakName(x.getHlowPeakName()); + vo.setWayBillType(x.getWayBillType()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/StationMissController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/StationMissController.java new file mode 100644 index 00000000..ef191597 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/StationMissController.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.quality.StationMissApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.StationMissRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IStationMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DifferUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点缺失率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class StationMissController extends BaseController implements StationMissApi { + private final IStationMissService stationMissService; + + public StationMissController(IStationMissService stationMissService) { + this.stationMissService = stationMissService; + } + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMissReq request) { + StationMiss req = new StationMiss(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setWayBillType(request.getWayBillType()); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List stationMisses = stationMissService.selectStationMissList(req); + PageInfo pageInfo = new PageInfo<>(stationMisses); + List collect = pageInfo.getList().stream().map(this::toResponse).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + /** + * 获取列表信息 + * + * @param id + * @return + */ + @Override + public R detail(Long id) { + StationMiss stationMiss = stationMissService.selectStationMissById(id); + StationMissRes vo = toResponse(stationMiss); + return R.ok(vo); + } + + private StationMissRes toResponse(StationMiss stationMiss) { + if (stationMiss == null) { + return null; + } + StationMissRes vo = new StationMissRes(); + vo.setId(stationMiss.getId()); + vo.setLineCode(stationMiss.getLineCode()); + vo.setLineName(stationMiss.getLineName()); + vo.setLicensePlate(stationMiss.getLicensePlate()); + vo.setDriverCode(stationMiss.getDriverCode()); + vo.setStartTime(stationMiss.getStartTime()); + vo.setArrivalTime(stationMiss.getArrivalTime()); + vo.setStartStation(stationMiss.getStartStation()); + vo.setEndStation(stationMiss.getEndStation()); + vo.setUp(stationMiss.getUp()); + vo.setWayBillType(stationMiss.getWayBillType()); + vo.setStartStationLevels(stationMiss.getStartStationLevels()); + vo.setEndStationLevels(stationMiss.getEndStationLevels()); + vo.setLevelNum(stationMiss.getLevelNum()); + vo.setBusStopNum(stationMiss.getBusStopNum()); + vo.setTxnDate(stationMiss.getTxnDate()); + vo.setCreateTime(stationMiss.getCreateTime()); + vo.setMissRate(stationMiss.getMissRate()); + vo.setDifferNum(DifferUtil.differ(stationMiss.getLevelNum(),stationMiss.getBusStopNum())); + return vo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/VehicleDailyCountController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/VehicleDailyCountController.java new file mode 100644 index 00000000..ecaf26ae --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/VehicleDailyCountController.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.quality.VehicleDailyApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDailyRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDayResponse; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IVehicleDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 日营运车辆数Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class VehicleDailyCountController extends BaseController implements VehicleDailyApi { + + private final IVehicleDailyCountService vehicleDailyCountService; + + public VehicleDailyCountController(IVehicleDailyCountService vehicleDailyCountService) { + this.vehicleDailyCountService = vehicleDailyCountService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R list(@RequestBody @Validated VehicleDailyReq request) { + + VehicleDailyCount req = new VehicleDailyCount(); + req.setCompanyCode(request.getCompanyCode()); + req.setCompanyName(request.getCompanyName()); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List vehicleDailyCounts = vehicleDailyCountService.selectVehicleDailyCountList(req); + PageInfo pageInfo = new PageInfo<>(vehicleDailyCounts); + List collect = pageInfo.getList().stream().map(x -> { + VehicleDailyRes vo = new VehicleDailyRes(); + vo.setId(x.getId()); + vo.setCompanyCode(x.getCompanyCode()); + vo.setCompanyName(x.getCompanyName()); + vo.setVehicleCount(x.getVehicleCount()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + + VehicleDayResponse vehicleDayResponse = new VehicleDayResponse(); + vehicleDayResponse.setPage(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + Long l = vehicleDailyCountService.countBus(req); + vehicleDayResponse.setTotalBus(l); + return R.ok(vehicleDayResponse); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/OrgApiAuthDao.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/OrgApiAuthDao.java new file mode 100644 index 00000000..bef0c2e9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/OrgApiAuthDao.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.dao; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgAuthEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 【机构接口权限表】(OrgApiAuth)表数据库访问层 + * + * @author makejava + * @since 2023-07-13 16:03:54 + */ +@Mapper +public interface OrgApiAuthDao { + + /** + * 查询【机构接口权限】列表 + * + * @param orgApiAuthEntity 【机构接口权限】 + * @return 【机构接口权限】集合 + */ + List selectList(OrgApiAuth orgApiAuthEntity); + + /** + * 新增数据 + */ + int insert(OrgApiAuth orgApiAuth); + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + OrgApiAuth queryById(Long id); + + /** + * 统计总行数 + * + * @param orgApiAuth 查询条件 + * @return 总行数 + */ + long count(OrgApiAuth orgApiAuth); + + /** + * 获取全部接口列表 + * @param req + */ + List selectAllApi(OrgAuthReq req); + + /** + * 根据机构删除数据 + * @param orgNo + * @return + */ + int deleteByOrgNo(String orgNo); +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiEntity.java new file mode 100644 index 00000000..60ee8493 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiEntity.java @@ -0,0 +1,250 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +import java.io.Serializable; + +/** + *

+ * 数据API信息表 + *

+ */ +public class ApiEntity extends BaseEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long apiId; + + + /** + * 状态(0不启用,1启用) + */ + private String status; + + + /** + * API名称 + */ + private String apiName; + + /** + * API版本 + */ + private String apiVersion; + + /** + * API路径 + */ + private String apiUrl; + + /** + * 请求类型 + */ + private String reqMethod; + + /** + * 返回格式 + */ + private String resType; + + /** + * IP黑名单多个,隔开 + */ + private String deny; + + /** + * 限流配置 + */ + private String rateLimit; + + /** + * 执行配置 + */ + private String executeConfig; + + /** + * 请求参数 + */ + private String reqParams; + + /** + * 返回字段 + */ + private String resParams; + + /** + * 创建人所属部门 + */ + private String createDept; + + /** + * 版本号 + */ + private Long version; + + /** + * 验证token + */ + private String recToken; + + /** + * 接口交易码 + */ + private String apiCode; + /** + * 类型:1敏捷API 2系统API + */ + private String apiType; + /** + * 数据源id + */ + private Long sourceId; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public String getDeny() { + return deny; + } + + public void setDeny(String deny) { + this.deny = deny; + } + + public String getRateLimit() { + return rateLimit; + } + + public void setRateLimit(String rateLimit) { + this.rateLimit = rateLimit; + } + + public String getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(String executeConfig) { + this.executeConfig = executeConfig; + } + + public String getReqParams() { + return reqParams; + } + + public void setReqParams(String reqParams) { + this.reqParams = reqParams; + } + + public String getResParams() { + return resParams; + } + + public void setResParams(String resParams) { + this.resParams = resParams; + } + + public String getCreateDept() { + return createDept; + } + + public void setCreateDept(String createDept) { + this.createDept = createDept; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } + + public Long getSourceId() { + return sourceId; + } + + public void setSourceId(Long sourceId) { + this.sourceId = sourceId; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiLogEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiLogEntity.java new file mode 100644 index 00000000..97540eba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiLogEntity.java @@ -0,0 +1,163 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 数据API日志表 + * + * @author yulei + */ +public class ApiLogEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long apiLogId; + /** + * 调用api + */ + private Long apiId; + /** + * api名称 + */ + private transient String apiName; + /** + * 调用者id + */ + private String callerId; + /** + * 调用者ip + */ + private String callerIp; + /** + * 调用url + */ + private String callerUrl; + /** + * 调用参数 + */ + private String callerParams; + /** + * 调用数据量 + */ + private Integer callerSize; + /** + * 调用耗时 + */ + private Long time; + /** + * 信息记录 + */ + private String msg; + /** + * 状态:0:失败,1:成功 + */ + private String status; + /** + * 调用时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date callerDate; + + public Long getApiLogId() { + return apiLogId; + } + + public void setApiLogId(Long apiLogId) { + this.apiLogId = apiLogId; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getCallerId() { + return callerId; + } + + public void setCallerId(String callerId) { + this.callerId = callerId; + } + + public String getCallerIp() { + return callerIp; + } + + public void setCallerIp(String callerIp) { + this.callerIp = callerIp; + } + + public String getCallerUrl() { + return callerUrl; + } + + public void setCallerUrl(String callerUrl) { + this.callerUrl = callerUrl; + } + + public String getCallerParams() { + return callerParams; + } + + public void setCallerParams(String callerParams) { + this.callerParams = callerParams; + } + + public Integer getCallerSize() { + return callerSize; + } + + public void setCallerSize(Integer callerSize) { + this.callerSize = callerSize; + } + + public Long getTime() { + return time; + } + + public void setTime(Long time) { + this.time = time; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Date getCallerDate() { + return callerDate; + } + + public void setCallerDate(Date callerDate) { + this.callerDate = callerDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/CentimeDelay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/CentimeDelay.java new file mode 100644 index 00000000..bffe74f9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/CentimeDelay.java @@ -0,0 +1,83 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 延迟上送比率对象 tbl_qa_centime_delay + * + * @author shu_k + * @date 2023-09-20 + */ +public class CentimeDelay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long id; + + /** + * 时间范围 + */ + private String timeRange; + + /** + * 延迟数量 + */ + private Long delayCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getTimeRange() { + return timeRange; + } + + public void setTimeRange(String timeRange) { + this.timeRange = timeRange; + } + + public Long getDelayCount() { + return delayCount; + } + + public void setDelayCount(Long delayCount) { + this.delayCount = delayCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("timeRange", getTimeRange()) + .append("delayCount", getDelayCount()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/DataConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/DataConfig.java new file mode 100644 index 00000000..8ca2830e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/DataConfig.java @@ -0,0 +1,131 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; + +/** + * 参数配置表 tbl_sys_config + * + * @author admin + */ +public class DataConfig extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 参数主键 + */ + private Long configId; + + /** + * 版本号 + */ + private Long versionNum; + /** + * token锁 + */ + private String recToken; + + /** + * 参数名称 + */ + private String configName; + + /** + * 参数键名 + */ + private String configKey; + + /** + * 参数键值 + */ + private String configValue; + + /** + * 系统内置(Y是 N否) + */ + private String configType; + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + @NotBlank(message = "参数名称不能为空") + @Size(min = 0, max = 100, message = "参数名称不能超过100个字符") + public String getConfigName() { + return configName; + } + + public void setConfigName(String configName) { + this.configName = configName; + } + + @NotBlank(message = "参数键名长度不能为空") + @Size(min = 0, max = 100, message = "参数键名长度不能超过100个字符") + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + @NotBlank(message = "参数键值不能为空") + @Size(min = 0, max = 500, message = "参数键值长度不能超过500个字符") + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public String getConfigType() { + return configType; + } + + public void setConfigType(String configType) { + this.configType = configType; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("configId", getConfigId()) + .append("versionNum", getVersionNum()) + .append("recToken", getRecToken()) + .append("configName", getConfigName()) + .append("configKey", getConfigKey()) + .append("configValue", getConfigValue()) + .append("configType", getConfigType()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineInfo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineInfo.java new file mode 100644 index 00000000..5dd0855d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineInfo.java @@ -0,0 +1,62 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 线路基础信息对象 tbl_prd_base_line + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 线路名称 */ + private String lineName; + + /** 6位线路编码 */ + private String lineCode; + + /** 五位线路编码 */ + private String lineNo; + + public void setLineName(String lineName) + { + this.lineName = lineName; + } + + public String getLineName() + { + return lineName; + } + public void setLineCode(String lineCode) + { + this.lineCode = lineCode; + } + + public String getLineCode() + { + return lineCode; + } + public void setLineNo(String lineNo) + { + this.lineNo = lineNo; + } + + public String getLineNo() + { + return lineNo; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("lineName", getLineName()) + .append("lineCode", getLineCode()) + .append("lineNo", getLineNo()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricDay.java new file mode 100644 index 00000000..d61220ea --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricDay.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 统计时间段内的线路客流量对象 tbl_prd_line_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("lineStatus", getLineStatus()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("serviceType", getServiceType()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHour.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHour.java new file mode 100644 index 00000000..6b5a4464 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHour.java @@ -0,0 +1,181 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 线路小时客流量统计对象 tbl_prd_line_metric_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricHour extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标小时 + */ + private Long metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * $column.columnComment + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Long getMetricHour() { + return metricHour; + } + + public void setMetricHour(Long metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("lineStatus", getLineStatus()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("serviceType", getServiceType()) + .append("metricHour", getMetricHour()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHourEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHourEntity.java new file mode 100644 index 00000000..c1771d3a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHourEntity.java @@ -0,0 +1,125 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import java.io.Serializable; +import java.util.Date; + +/** + * 统计时间段内的线路客流量(LineMetricHour)实体类 + * + * @author makejava + * @since 2023-07-13 20:05:55 + */ +public class LineMetricHourEntity implements Serializable { + private static final long serialVersionUID = 699515881208701549L; + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + /** + * 营运公司名称 + */ + private String companyName; + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + /** + * 指标小时 + */ + private Integer metricHour; + /** + * 指标日期 + */ + private Date metricDate; + /** + * 指标 + */ + private Integer metricValue; + + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Integer getMetricValue() { + return metricValue; + } + + public void setMetricValue(Integer metricValue) { + this.metricValue = metricValue; + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricMonth.java new file mode 100644 index 00000000..e073ec63 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricMonth.java @@ -0,0 +1,162 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("lineStatus", getLineStatus()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("serviceType", getServiceType()) + .append("metricMonth", getMetricMonth()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationInfo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationInfo.java new file mode 100644 index 00000000..17b054b5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationInfo.java @@ -0,0 +1,102 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang.builder.ToStringBuilder; +import org.apache.commons.lang.builder.ToStringStyle; + +/** + * 站点基础信息对象 tbl_prd_base_line_station + * + * @author ruoyi + * @date 2023-09-19 + */ +public class LineStationInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 六位线路编码 */ + private String lineCode; + + /** 线路名称 */ + private String lineName; + + /** 方向 */ + private String up; + + /** 站序 */ + private Long levels; + + /** 站点名称 */ + private String levelName; + + /** 五位线路编码 */ + private String lineNo; + + public void setLineCode(String lineCode) + { + this.lineCode = lineCode; + } + + public String getLineCode() + { + return lineCode; + } + public void setLineName(String lineName) + { + this.lineName = lineName; + } + + public String getLineName() + { + return lineName; + } + public void setUp(String up) + { + this.up = up; + } + + public String getUp() + { + return up; + } + public void setLevels(Long levels) + { + this.levels = levels; + } + + public Long getLevels() + { + return levels; + } + public void setLevelName(String levelName) + { + this.levelName = levelName; + } + + public String getLevelName() + { + return levelName; + } + public void setLineNo(String lineNo) + { + this.lineNo = lineNo; + } + + public String getLineNo() + { + return lineNo; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("levelName", getLevelName()) + .append("lineNo", getLineNo()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricDay.java new file mode 100644 index 00000000..a40273e5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricDay.java @@ -0,0 +1,153 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levelName", getLevelName()) + .append("levels", getLevels()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricHour.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricHour.java new file mode 100644 index 00000000..833b9b67 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricHour.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 站点小时客流量统计对象 tbl_prd_line_station_metric_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationMetricHour extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 指标小时 + */ + private Integer metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("levelName", getLevelName()) + .append("metricHour", getMetricHour()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricMonth.java new file mode 100644 index 00000000..0bc36d2c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricMonth.java @@ -0,0 +1,148 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 站点月客流量统计对象 tbl_prd_line_station_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationMetricMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("levelName", getLevelName()) + .append("metricMonth", getMetricMonth()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransDay.java new file mode 100644 index 00000000..509d7f13 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransDay.java @@ -0,0 +1,164 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationTransDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘类型 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "LineStationTransDay{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransHour.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransHour.java new file mode 100644 index 00000000..495b610a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransHour.java @@ -0,0 +1,178 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点小时换乘客流量统计对象 tbl_prd_line_station_trans_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationTransHour extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标小时 + */ + private Integer metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "LineStationTransHour{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricHour=" + metricHour + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransMonth.java new file mode 100644 index 00000000..932fc585 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransMonth.java @@ -0,0 +1,159 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationTransMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "LineStationTransMonth{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/MetadataSourceEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/MetadataSourceEntity.java new file mode 100644 index 00000000..7aefe454 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/MetadataSourceEntity.java @@ -0,0 +1,201 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + *

+ * 数据源信息表 + *

+ */ +public class MetadataSourceEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long sourceId; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** + * 创建人 + */ + private String createBy; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 状态(0不启用,1启用) + */ + private String status; + + /** + * 备注 + */ + private String remark; + + /** + * 数据源类型 + */ + private String dbType; + + /** + * 数据源名称 + */ + private String sourceName; + + /** + * 元数据同步(0否,1同步中, 2是) + */ + private String isSync; + + /** + * 数据源连接信息 + */ + private String dbSchema; + + /** + * 创建人所属部门 + */ + private String createDept; + + /** + * 版本号 + */ + private Long version; + + /** + * 验证token + */ + private String recToken; + + public Long getSourceId() { + return sourceId; + } + + public void setSourceId(Long sourceId) { + this.sourceId = sourceId; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getDbType() { + return dbType; + } + + public void setDbType(String dbType) { + this.dbType = dbType; + } + + public String getSourceName() { + return sourceName; + } + + public void setSourceName(String sourceName) { + this.sourceName = sourceName; + } + + public String getIsSync() { + return isSync; + } + + public void setIsSync(String isSync) { + this.isSync = isSync; + } + + public String getDbSchema() { + return dbSchema; + } + + public void setDbSchema(String dbSchema) { + this.dbSchema = dbSchema; + } + + public String getCreateDept() { + return createDept; + } + + public void setCreateDept(String createDept) { + this.createDept = createDept; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgApiAuth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgApiAuth.java new file mode 100644 index 00000000..c3e1304a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgApiAuth.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import java.io.Serializable; + +/** + * 【机构接口权限表】(OrgApiAuth)实体类 + * + * @author makejava + * @since 2023-07-13 16:03:55 + */ +public class OrgApiAuth implements Serializable { + private static final long serialVersionUID = -83419851209972540L; + /** + * 【ID】 + */ + private Long id; + /** + * 【机构号】 + */ + private String orgNo; + /** + * 【接口API ID】 + */ + private Long apiId; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgConfig.java new file mode 100644 index 00000000..8cc26433 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgConfig.java @@ -0,0 +1,152 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +/** + * 机构配置信息 + * + * @author yulei + **/ +public class OrgConfig extends BaseEntity { + + /** + * 主键ID + */ + private Long configId; + + /** + * 机构号 + */ + private String orgNo; + + /** + * data:config:start:time + * data:config:end:time + * 配置项 + */ + private String configKey; + + /** + * 配置说明 + */ + private String configDesc; + + /** + * 配置值 + */ + private String configValue; + /** + * 版本号 + */ + private Long versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 状态 + */ + private String status; + + private String orgName; + + /** + * 会员号 + */ + private String memberId; + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigDesc() { + return configDesc; + } + + public void setConfigDesc(String configDesc) { + this.configDesc = configDesc; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgGatewayLog.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgGatewayLog.java new file mode 100644 index 00000000..bcf688e2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgGatewayLog.java @@ -0,0 +1,268 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 网关访问日志对象 tbl_org_gateway_log + * + * @author yulei + * @date 2023-06-19 + */ +public class OrgGatewayLog implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 【主键】 + */ + private String logId; + + /** + * 【请求流水号】 + */ + private String reqNo; + + /** + * 【服务id】 + */ + private String apiId; + + /** + * 【服务名称】 + */ + private String apiName; + + /** + * 【服务编码】 + */ + private String apiCode; + + /** + * 【状态】 + */ + private String status; + + /** + * 【请求时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date reqTime; + + /** + * 【请求ip地址】 + */ + private String reqIp; + + /** + * 【请求报文】 + */ + private String reqJson; + + /** + * 【返回报文】 + */ + private String resJson; + + /** + * 【耗时】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date consumingTime; + + /** + * 【 创建用户】 + */ + private String createByName; + + /** + * 【更新用户】 + */ + private String updateByName; + + /** + * 【版本号】 + */ + private String versionNum; + + /** + * 【随机码】 + */ + private String recToken; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** + * 创建人 + */ + private String createBy; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** + * 更新人 + */ + private String updateBy; + + public String getLogId() { + return logId; + } + + public void setLogId(String logId) { + this.logId = logId; + } + + public String getReqNo() { + return reqNo; + } + + public void setReqNo(String reqNo) { + this.reqNo = reqNo; + } + + public String getApiId() { + return apiId; + } + + public void setApiId(String apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Date getReqTime() { + return reqTime; + } + + public void setReqTime(Date reqTime) { + this.reqTime = reqTime; + } + + public String getReqIp() { + return reqIp; + } + + public void setReqIp(String reqIp) { + this.reqIp = reqIp; + } + + public String getReqJson() { + return reqJson; + } + + public void setReqJson(String reqJson) { + this.reqJson = reqJson; + } + + public String getResJson() { + return resJson; + } + + public void setResJson(String resJson) { + this.resJson = resJson; + } + + public Date getConsumingTime() { + return consumingTime; + } + + public void setConsumingTime(Date consumingTime) { + this.consumingTime = consumingTime; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfo.java new file mode 100644 index 00000000..ca31f50f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfo.java @@ -0,0 +1,293 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import java.io.Serializable; +import java.util.Date; + +/** + * 【机构管理信息表】(OrgInfo)实体类 + * + * @author makejava + * @since 2023-07-13 16:03:58 + */ +public class OrgInfo implements Serializable { + private static final long serialVersionUID = -91946210011377620L; + /** + * 【机构号】 + */ + private String orgNo; + /** + * 【机构名称】 + */ + private String orgName; + /** + * 【机构类型】 + */ + private String orgType; + /** + * 【机构描述】 + */ + private String orgDesc; + /** + * 【加盐】 + */ + private String salt; + /** + * 【加密】 + */ + private String encrypt; + /** + * 【生效时间】 + */ + private Date startTime; + /** + * 【到期时间】 + */ + private Date endTime; + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + /** + * 【版本号】 + */ + private Integer versionNum; + /** + * 【随机码】 + */ + private String recToken; + /** + * 【创建者】 + */ + private String createBy; + /** + * 创建人 + */ + private String createByName; + /** + * 【创建时间】 + */ + private Date createTime; + /** + * 【更新者】 + */ + private String updateBy; + /** + * 更新人 + */ + private String updateByName; + /** + * 【更新时间】 + */ + private Date updateTime; + /** + * 【删除标志】0代表存在 2代表删除 + */ + private String delFlag; + /** + * 【ip白名单】 + */ + private String ip; + /** + * 【联系人电话】 + */ + private String contractTel; + /** + * 数据起始时间 + */ + private Date dataBegin; + /** + * 数据结束时间 + */ + private Date dataEnd; + /** + * 【用户ID】 + */ + private Long userId; + + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Integer getVersionNum() { + return versionNum; + } + + public void setVersionNum(Integer versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public Date getDataBegin() { + return dataBegin; + } + + public void setDataBegin(Date dataBegin) { + this.dataBegin = dataBegin; + } + + public Date getDataEnd() { + return dataEnd; + } + + public void setDataEnd(Date dataEnd) { + this.dataEnd = dataEnd; + } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfoEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfoEntity.java new file mode 100644 index 00000000..19295240 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfoEntity.java @@ -0,0 +1,269 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 【机构管理信息】对象 tbl_org_info + * + * @author yulei + * @date 2023-06-16 + */ +public class OrgInfoEntity extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 【机构号】 + */ + private String orgNo; + + /** + * 【机构名称】 + */ + private String orgName; + + /** + * 【机构类型】 + */ + private String orgType; + + /** + * 【机构描述】 + */ + private String orgDesc; + + /** + * 【加盐】 + */ + private String salt; + + /** + * 【加密】 + */ + private String encrypt; + + /** + * 【生效时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + + /** + * 【版本号】 + */ + private String versionNum; + + /** + * 【随机码】 + */ + private String recToken; + + /** + * 创建人 + */ + private String createByName; + + /** + * 更新人 + */ + private String updateByName; + + /** + * 【删除标志】0代表存在 2代表删除 + */ + private String delFlag; + + + /** + * 【ip白名单】 + */ + private String ip; + + /** + * 【联系人电话】 + */ + private String contractTel; + + /** + * 数据起始时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date dataBegin; + + /** + * 数据结束时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date dataEnd; + + /** + * 会员Id + */ + private String memberId; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public Date getDataBegin() { + return dataBegin; + } + + public void setDataBegin(Date dataBegin) { + this.dataBegin = dataBegin; + } + + public Date getDataEnd() { + return dataEnd; + } + + public void setDataEnd(Date dataEnd) { + this.dataEnd = dataEnd; + } + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgStatisticsEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgStatisticsEntity.java new file mode 100644 index 00000000..799e158e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgStatisticsEntity.java @@ -0,0 +1,165 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 接口调用次数统计对象 tbl_org_statistics + * + * @author yulei + * @date 2023-06-16 + */ +public class OrgStatisticsEntity extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * id + */ + private Long id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名 + */ + private String orgName; + + /** + * 接口id + */ + private Long apiId; + + /** + * 成功次数 + */ + private Integer successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 版本号 + */ + private Integer versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 是否删除【0否,1是】 + */ + private String delFlag; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public Integer getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Integer successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public Integer getVersionNum() { + return versionNum; + } + + public void setVersionNum(Integer versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("orgNo", getOrgNo()) + .append("orgName", getOrgName()) + .append("apiId", getApiId()) + .append("successTotal", getSuccessTotal()) + .append("failTotal", getFailTotal()) + .append("apiName", getApiName()) + .append("createTime", getCreateTime()) + .append("createBy", getCreateBy()) + .append("updateTime", getUpdateTime()) + .append("updateBy", getUpdateBy()) + .append("versionNum", getVersionNum()) + .append("recToken", getRecToken()) + .append("delFlag", getDelFlag()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/PosMatchRate.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/PosMatchRate.java new file mode 100644 index 00000000..a153ae8a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/PosMatchRate.java @@ -0,0 +1,98 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * Pos匹配率对象 tbl_qa_pos_match_rate + * + * @author shu_k + * @date 2023-09-20 + */ +public class PosMatchRate extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 交易数量 + */ + private Long tranNum; + + /** + * 匹配数量 + */ + private Long matchNum; + + /** + * 匹配率 + */ + private BigDecimal matchRate; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getTranNum() { + return tranNum; + } + + public void setTranNum(Long tranNum) { + this.tranNum = tranNum; + } + + public Long getMatchNum() { + return matchNum; + } + + public void setMatchNum(Long matchNum) { + this.matchNum = matchNum; + } + + public BigDecimal getMatchRate() { + return matchRate; + } + + public void setMatchRate(BigDecimal matchRate) { + this.matchRate = matchRate; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("tranNum", getTranNum()) + .append("matchNum", getMatchNum()) + .append("matchRate", getMatchRate()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteDailyCount.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteDailyCount.java new file mode 100644 index 00000000..7674629d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteDailyCount.java @@ -0,0 +1,97 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 日营运线路条数对象 tbl_qa_route_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteDailyCount extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 线路数量 + */ + private Long routeCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 运营公司编码 + */ + private String companyCode; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getRouteCount() { + return routeCount; + } + + public void setRouteCount(Long routeCount) { + this.routeCount = routeCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("companyName", getCompanyName()) + .append("routeCount", getRouteCount()) + .append("txnDate", getTxnDate()) + .append("companyCode", getCompanyCode()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMetricDay.java new file mode 100644 index 00000000..7c8eb280 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMetricDay.java @@ -0,0 +1,225 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 司机工号 + */ + private String driverCode; + + /** + * 起点 + */ + private String startStation; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date startTime; + + /** + * 终点 + */ + private String endStation; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 路单类型 + */ + private String waybillType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getWaybillType() { + return waybillType; + } + + public void setWaybillType(String waybillType) { + this.waybillType = waybillType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("licensePlate", getLicensePlate()) + .append("driverCode", getDriverCode()) + .append("startStation", getStartStation()) + .append("startTime", getStartTime()) + .append("endStation", getEndStation()) + .append("arrivalTime", getArrivalTime()) + .append("waybillType", getWaybillType()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMiss.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMiss.java new file mode 100644 index 00000000..b22cbb2b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMiss.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 班次缺失率对象 tbl_qa_route_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteMiss extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键Id */ + private Long id; + + /** 缺失率 */ + private BigDecimal missRate; + + /** 日期 */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** 电子路单数量班次 */ + private Long routeCount; + + /** 调离站班次数量 */ + private Long busStopCount; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setMissRate(BigDecimal missRate) + { + this.missRate = missRate; + } + + public BigDecimal getMissRate() + { + return missRate; + } + public void setTxnDate(Date txnDate) + { + this.txnDate = txnDate; + } + + public Date getTxnDate() + { + return txnDate; + } + public void setRouteCount(Long routeCount) + { + this.routeCount = routeCount; + } + + public Long getRouteCount() + { + return routeCount; + } + public void setBusStopCount(Long busStopCount) + { + this.busStopCount = busStopCount; + } + + public Long getBusStopCount() + { + return busStopCount; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("missRate", getMissRate()) + .append("txnDate", getTxnDate()) + .append("routeCount", getRouteCount()) + .append("busStopCount", getBusStopCount()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteTurnoverTime.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteTurnoverTime.java new file mode 100644 index 00000000..c58fbb94 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteTurnoverTime.java @@ -0,0 +1,125 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 班次周转时间对象 tbl_qa_route_turnover_time + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteTurnoverTime extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 平均周转时间 + */ + private Long turnoverTime; + + /** + * 早晚高峰名称 + */ + private String hlowPeakName; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public Long getTurnoverTime() { + return turnoverTime; + } + + public void setTurnoverTime(Long turnoverTime) { + this.turnoverTime = turnoverTime; + } + + public String getHlowPeakName() { + return hlowPeakName; + } + + public void setHlowPeakName(String hlowPeakName) { + this.hlowPeakName = hlowPeakName; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("turnoverTime", getTurnoverTime()) + .append("hlowPeakName", getHlowPeakName()) + .append("wayBillType", getWayBillType()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricDay.java new file mode 100644 index 00000000..74ac5d39 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricDay.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("lineStatus", getLineStatus()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("levelName", getLevelName()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonth.java new file mode 100644 index 00000000..d947acc7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonth.java @@ -0,0 +1,162 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 站点月换乘客流量统计对象 tbl_prd_station_freq_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("lineStatus", getLineStatus()) + .append("metricMonth", getMetricMonth()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("levelName", getLevelName()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonthEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonthEntity.java new file mode 100644 index 00000000..7c292eaf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonthEntity.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +/** + * @ClassName : StationFreqMetricMonthEntity + * @Description : + * @Author : sky + * @Date: 2023-07-13 11:00 + */ +public class StationFreqMetricMonthEntity { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private int levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private int metricValue; + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + public void setUp(String up) { + this.up = up; + } + + public String getUp() { + return up; + } + + public void setLevels(int levels) { + this.levels = levels; + } + + public int getLevels() { + return levels; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricValue(int metricValue) { + this.metricValue = metricValue; + } + + public int getMetricValue() { + return metricValue; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransDay.java new file mode 100644 index 00000000..66fcf6d0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransDay.java @@ -0,0 +1,149 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransMonth.java new file mode 100644 index 00000000..0bafa7e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransMonth.java @@ -0,0 +1,144 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationMiss.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationMiss.java new file mode 100644 index 00000000..ce91c52c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationMiss.java @@ -0,0 +1,265 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 站点缺失率对象 tbl_qa_station_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class StationMiss extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 驾驶员工号 + */ + private String driverCode; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 起点 + */ + private String startStation; + + /** + * 终点 + */ + private String endStation; + + /** + * 上下行 + */ + private String up; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 起点站级 + */ + private Long startStationLevels; + + /** + * 终点站级 + */ + private Long endStationLevels; + + /** + * 班次站点数 + */ + private Long levelNum; + + /** + * 车辆到离站数 + */ + private Long busStopNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 缺失率 + */ + private BigDecimal missRate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Long getStartStationLevels() { + return startStationLevels; + } + + public void setStartStationLevels(Long startStationLevels) { + this.startStationLevels = startStationLevels; + } + + public Long getEndStationLevels() { + return endStationLevels; + } + + public void setEndStationLevels(Long endStationLevels) { + this.endStationLevels = endStationLevels; + } + + public Long getLevelNum() { + return levelNum; + } + + public void setLevelNum(Long levelNum) { + this.levelNum = levelNum; + } + + public Long getBusStopNum() { + return busStopNum; + } + + public void setBusStopNum(Long busStopNum) { + this.busStopNum = busStopNum; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public BigDecimal getMissRate() { + return missRate; + } + + public void setMissRate(BigDecimal missRate) { + this.missRate = missRate; + } + + @Override + public String toString() { + return "StationMiss{" + + "id=" + id + + ", lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", licensePlate='" + licensePlate + '\'' + + ", driverCode='" + driverCode + '\'' + + ", startTime=" + startTime + + ", arrivalTime=" + arrivalTime + + ", startStation='" + startStation + '\'' + + ", endStation='" + endStation + '\'' + + ", up='" + up + '\'' + + ", wayBillType='" + wayBillType + '\'' + + ", startStationLevels=" + startStationLevels + + ", endStationLevels=" + endStationLevels + + ", levelNum=" + levelNum + + ", busStopNum=" + busStopNum + + ", txnDate=" + txnDate + + ", missRate=" + missRate + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/SyncRecord.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/SyncRecord.java new file mode 100644 index 00000000..1373877e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/SyncRecord.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 客流表文件对象 tbl_prd_sync_record + * + * @author shu_kai + * @date 2023-09-26 + */ +public class SyncRecord extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 相对路径-包含文件名 + */ + private String path; + + /** + * hive表名 + */ + private String tableName; + + /** + * 文件总记录数 + */ + private Long count; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date txnData; + + private String dataStatus; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getPath() { + return path; + } + + public void setPath(String path) { + this.path = path; + } + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public Long getCount() { + return count; + } + + public void setCount(Long count) { + this.count = count; + } + + public Date getTxnData() { + return txnData; + } + + public void setTxnData(Date txnData) { + this.txnData = txnData; + } + + public String getDataStatus() { + return dataStatus; + } + + public void setDataStatus(String dataStatus) { + this.dataStatus = dataStatus; + } + + @Override + public String toString() { + return "SyncRecord{" + + "id=" + id + + ", path='" + path + '\'' + + ", tableName='" + tableName + '\'' + + ", count=" + count + + ", txnData=" + txnData + + ", dataStatus='" + dataStatus + '\'' + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/TblDataUserApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/TblDataUserApi.java new file mode 100644 index 00000000..026c140e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/TblDataUserApi.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; + + +/** + * 我的应用 - 用户API + * 四个表联合查询的结果 + * tbl_org_info + * tbl_org_api_auth + * tbl_org_config + * tbl_data_api + */ +public class TblDataUserApi extends DataApiResponse { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/VehicleDailyCount.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/VehicleDailyCount.java new file mode 100644 index 00000000..a52eba4d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/VehicleDailyCount.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 日营运车辆数对象 tbl_qa_vehicle_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class VehicleDailyCount extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 公司编码 + */ + private String companyCode; + + /** + * 公司名称 + */ + private String companyName; + + /** + * 车辆数 + */ + private Long vehicleCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getVehicleCount() { + return vehicleCount; + } + + public void setVehicleCount(Long vehicleCount) { + this.vehicleCount = vehicleCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("vehicleCount", getVehicleCount()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/ApiLogTime.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/ApiLogTime.java new file mode 100644 index 00000000..4a730bd7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/ApiLogTime.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity.extend; + +/** + * @ClassName : ApiLogTime + * @Description : 日志统计分布 + * @Author : sky + * @Date: 2023-09-05 19:18 + */ +public class ApiLogTime { + + private Long apiId; + + private Long count; + + private Long avgTime; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public Long getCount() { + return count; + } + + public void setCount(Long count) { + this.count = count; + } + + public Long getAvgTime() { + return avgTime; + } + + public void setAvgTime(Long avgTime) { + this.avgTime = avgTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgApiEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgApiEntity.java new file mode 100644 index 00000000..fd3ff165 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgApiEntity.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity.extend; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; + +/** + * @ClassName : OrgApiEntity + * @Description : 机构接口权限列表 + * @Author : sky + * @Date: 2023-09-01 15:33 + */ +public class OrgApiEntity extends ApiEntity { + + private String orgNo; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgAuthEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgAuthEntity.java new file mode 100644 index 00000000..845fb5b3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgAuthEntity.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity.extend; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; + +/** + * @ClassName : OrgAuthEntity + * @Description : + * @Author : sky + * @Date: 2023-07-13 17:24 + */ +public class OrgAuthEntity extends OrgApiAuth { + + private String apiName; + + private String apiCode; + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiLogMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiLogMapper.java new file mode 100644 index 00000000..5018f30e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiLogMapper.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.ApiLogTime; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * api调用日志 + */ +@Mapper +public interface ApiLogMapper { + + int insert(ApiLogEntity entity); + + List selectList(ApiLogEntity entity); + + ApiLogEntity getById(Long id); + + ApiLogTime countBy(ApiLogEntity entity); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiMapper.java new file mode 100644 index 00000000..5756ed23 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiMapper.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgApiEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + *

+ * 数据API信息表 Mapper 接口 + *

+ */ +@Mapper +public interface ApiMapper { + + List selectListByStatus(String[] status); + + /** + * 查询结构的api列表 + * + * @param orgNo + * @return + */ + List selectOrgApi(String orgNo); + + int insert(ApiEntity apiEntity); + + int updateById(ApiEntity apiEntity); + + ApiEntity getById(Long id); + + int deleteById(ApiEntity entity); + + List selectList(ApiEntity entity); + + ApiEntity getByApiCode(String apiCode); + + /** + * 检测该api是否被引用 + * + * @param apiId + * @return + */ + int check(Long apiId); + + /** + * 获取会员API列表 + * + * @param memberId + * @return + */ + List getUserApi(String memberId); + + List getByIds(Long[] apiIds); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/BaseMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/BaseMapper.java new file mode 100644 index 00000000..e29f773f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/BaseMapper.java @@ -0,0 +1,28 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.common.core.BaseTime; +import org.apache.ibatis.annotations.Mapper; + +/** + * 统一序列接口,方便补全和拼接 + * + * @author zhouliang + */ +@Mapper +public interface BaseMapper { + + /** + * 获取序列-门户用户表 + * + * @return + */ + Long selectSeq(); + + /** + * 获取系统当前时间-yyyyMMddHHmmss + * + * @return + */ + BaseTime selectSysCurrentTime(); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/CentimeDelayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/CentimeDelayMapper.java new file mode 100644 index 00000000..1e463691 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/CentimeDelayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 延迟上送比率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface CentimeDelayMapper { + /** + * 查询延迟上送比率 + * + * @param id 延迟上送比率主键 + * @return 延迟上送比率 + */ + CentimeDelay selectCentimeDelayById(Long id); + + /** + * 查询延迟上送比率列表 + * + * @param centimeDelay 延迟上送比率 + * @return 延迟上送比率集合 + */ + List selectCentimeDelayList(CentimeDelay centimeDelay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/DataConfigMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/DataConfigMapper.java new file mode 100644 index 00000000..7be0329a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/DataConfigMapper.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.DataConfig; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 参数配置 数据层 + * + * @author admin + */ +@Mapper +public interface DataConfigMapper { + /** + * 查询参数配置信息 + * + * @param config 参数配置信息 + * @return 参数配置信息 + */ + DataConfig selectConfig(DataConfig config); + + /** + * 查询参数配置列表 + * + * @param config 参数配置信息 + * @return 参数配置集合 + */ + List selectConfigList(DataConfig config); + + /** + * 根据键名查询参数配置信息 + * + * @param configKey 参数键名 + * @return 参数配置信息 + */ + DataConfig checkConfigKeyUnique(String configKey); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineInfoMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineInfoMapper.java new file mode 100644 index 00000000..36604631 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineInfoMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineInfo; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路基础信息Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineInfoMapper { + /** + * 查询线路基础信息 + * + * @param lineName 线路基础信息主键 + * @return 线路基础信息 + */ + LineInfo selectLineInfoByLineName(String lineName); + + /** + * 查询线路基础信息列表 + * + * @param lineInfo 线路基础信息 + * @return 线路基础信息集合 + */ + List selectLineInfoList(LineInfo lineInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricDayMapper.java new file mode 100644 index 00000000..9b030156 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricDayMapper.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路每天客流宝量指标Mapper接口 + * + * @author shu_k + * @date 2023-09-18 + */ +@Mapper +public interface LineMetricDayMapper { + + /** + * 查询线路每天客流宝量指标列表 + * + * @param lineMetricDay 线路每天客流宝量指标 + * @return 线路每天客流宝量指标集合 + */ + List selectLineMetricDayList(LineMetricDay lineMetricDay); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricHourMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricHourMapper.java new file mode 100644 index 00000000..6dcca36e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricHourMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路小时客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineMetricHourMapper { + /** + * 查询线路小时客流量统计 + * + * @param id 线路小时客流量统计主键 + * @return 线路小时客流量统计 + */ + LineMetricHour selectlineMetricHourById(Long id); + + /** + * 查询线路小时客流量统计列表 + * + * @param lineMetricHour 线路小时客流量统计 + * @return 线路小时客流量统计集合 + */ + List selectlineMetricHourList(LineMetricHour lineMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricMonthMapper.java new file mode 100644 index 00000000..85917136 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路月客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineMetricMonthMapper { + /** + * 查询线路月客流量统计 + * + * @param id 线路月客流量统计主键 + * @return 线路月客流量统计 + */ + LineMetricMonth selectlineMetricMonthById(Long id); + + /** + * 查询线路月客流量统计列表 + * + * @param lineMetricMonth 线路月客流量统计 + * @return 线路月客流量统计集合 + */ + List selectlineMetricMonthList(LineMetricMonth lineMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationInfoMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationInfoMapper.java new file mode 100644 index 00000000..455a0485 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationInfoMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationInfo; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点基础信息Mapper接口 + * + * @author ruoyi + * @date 2023-09-19 + */ +@Mapper +public interface LineStationInfoMapper { + /** + * 查询站点基础信息 + * + * @param lineCode 站点基础信息主键 + * @return 站点基础信息 + */ + LineStationInfo selectLineStationInfoByLineCode(String lineCode); + + /** + * 查询站点基础信息列表 + * + * @param lineStationInfo 站点基础信息 + * @return 站点基础信息集合 + */ + List selectLineStationInfoList(LineStationInfo lineStationInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricDayMapper.java new file mode 100644 index 00000000..ebe4aa6c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationMetricDayMapper { + /** + * 查询站点日客流量统计 + * + * @param id 站点日客流量统计主键 + * @return 站点日客流量统计 + */ + LineStationMetricDay selectLineStationMetricDayById(Long id); + + /** + * 查询站点日客流量统计列表 + * + * @param lineStationMetricDay 站点日客流量统计 + * @return 站点日客流量统计集合 + */ + List selectLineStationMetricDayList(LineStationMetricDay lineStationMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricHourMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricHourMapper.java new file mode 100644 index 00000000..5bf0f44a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricHourMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点小时客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationMetricHourMapper { + /** + * 查询站点小时客流量统计 + * + * @param id 站点小时客流量统计主键 + * @return 站点小时客流量统计 + */ + LineStationMetricHour selectLineStationMetricHourById(Long id); + + /** + * 查询站点小时客流量统计列表 + * + * @param lineStationMetricHour 站点小时客流量统计 + * @return 站点小时客流量统计集合 + */ + List selectLineStationMetricHourList(LineStationMetricHour lineStationMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricMonthMapper.java new file mode 100644 index 00000000..b25d88f9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点月客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationMetricMonthMapper { + /** + * 查询站点月客流量统计 + * + * @param id 站点月客流量统计主键 + * @return 站点月客流量统计 + */ + LineStationMetricMonth selectLineStationMetricMonthById(Long id); + + /** + * 查询站点月客流量统计列表 + * + * @param lineStationMetricMonth 站点月客流量统计 + * @return 站点月客流量统计集合 + */ + List selectLineStationMetricMonthList(LineStationMetricMonth lineStationMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransDayMapper.java new file mode 100644 index 00000000..6eaaafe7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationTransDayMapper { + /** + * 查询站点日换乘客流量统计 + * + * @param id 站点日换乘客流量统计主键 + * @return 站点日换乘客流量统计 + */ + LineStationTransDay selectLineStationTransDayById(Long id); + + /** + * 查询站点日换乘客流量统计列表 + * + * @param lineStationTransDay 站点日换乘客流量统计 + * @return 站点日换乘客流量统计集合 + */ + List selectLineStationTransDayList(LineStationTransDay lineStationTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransHourMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransHourMapper.java new file mode 100644 index 00000000..f9fd6841 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransHourMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点小时换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationTransHourMapper { + /** + * 查询站点小时换乘客流量统计 + * + * @param id 站点小时换乘客流量统计主键 + * @return 站点小时换乘客流量统计 + */ + LineStationTransHour selectLineStationTransHourById(Long id); + + /** + * 查询站点小时换乘客流量统计列表 + * + * @param lineStationTransHour 站点小时换乘客流量统计 + * @return 站点小时换乘客流量统计集合 + */ + List selectLineStationTransHourList(LineStationTransHour lineStationTransHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransMonthMapper.java new file mode 100644 index 00000000..8426c6b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点月换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationTransMonthMapper { + /** + * 查询站点月换乘客流量统计 + * + * @param id 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + LineStationTransMonth selectLineStationTransMonthById(Long id); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param lineStationTransMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectLineStationTransMonthList(LineStationTransMonth lineStationTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/MetadataSourceMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/MetadataSourceMapper.java new file mode 100644 index 00000000..89808865 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/MetadataSourceMapper.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + *

+ * 数据源信息表 Mapper 接口 + *

+ */ +@Mapper +public interface MetadataSourceMapper { + + MetadataSourceEntity getById(Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgConfigMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgConfigMapper.java new file mode 100644 index 00000000..16641eec --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgConfigMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 机构配置信息 + * + * @author yulei + **/ +@Mapper +public interface OrgConfigMapper { + + List getList(OrgConfig config); + + OrgConfig getById(Long configId); + + void insert(OrgConfig config); + + int updateById(OrgConfig config); + + void deleteById(Long configId); + + List getValueList(OrgConfig cfg); + + void deleteByEntity(OrgConfig config); + + void deleteByOrgNo(String orgNo); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgGatewayLogMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgGatewayLogMapper.java new file mode 100644 index 00000000..2847d9cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgGatewayLogMapper.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgGatewayLog; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 网关访问日志Mapper接口 + * + * @author yulei + * @date 2023-06-16 + */ +@Mapper +public interface OrgGatewayLogMapper { + /** + * 查询网关访问日志 + * + * @param logId 网关访问日志主键 + * @return 网关访问日志 + */ + OrgGatewayLog selectOrgGatewayLogByLogId(String logId); + + /** + * 查询网关访问日志列表 + * + * @param orgGatewayLog 网关访问日志 + * @return 网关访问日志集合 + */ + List selectOrgGatewayLogList(OrgGatewayLog orgGatewayLog); + + /** + * 新增网关访问日志 + * + * @param orgGatewayLog 网关访问日志 + * @return 结果 + */ + int insertOrgGatewayLog(OrgGatewayLog orgGatewayLog); + + /** + * 修改网关访问日志 + * + * @param orgGatewayLog 网关访问日志 + * @return 结果 + */ + int updateOrgGatewayLog(OrgGatewayLog orgGatewayLog); + + /** + * 删除网关访问日志 + * + * @param logId 网关访问日志主键 + * @return 结果 + */ + int deleteOrgGatewayLogByLogId(String logId); + + /** + * 批量删除网关访问日志 + * + * @param logIds 需要删除的数据主键集合 + * @return 结果 + */ + int deleteOrgGatewayLogByLogIds(String[] logIds); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgInfoMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgInfoMapper.java new file mode 100644 index 00000000..97c87c69 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgInfoMapper.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.Date; +import java.util.List; + +/** + * 【机构管理信息】Mapper接口 + * + * @author yulei + * @date 2023-06-16 + */ +@Mapper +public interface OrgInfoMapper { + /** + * 查询【机构管理信息】 + * + * @param orgNo 【机构管理信息】主键 + * @return 【机构管理信息】 + */ + OrgInfoEntity selectOrgInfoByOrgNo(String orgNo); + + /** + * 查询【机构管理信息】列表 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 【机构管理信息】集合 + */ + List selectOrgInfoList(OrgInfoEntity orgInfoEntity); + + /** + * 新增【机构管理信息】 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 结果 + */ + int insertOrgInfo(OrgInfoEntity orgInfoEntity); + + /** + * 修改【机构管理信息】 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 结果 + */ + int updateOrgInfo(OrgInfoEntity orgInfoEntity); + + /** + * 删除数据 + * + * @param infoEntity + */ + int delete(OrgInfoEntity infoEntity); + + /** + * 根据会员号获取机构信息 + * + * @param memberId + * @return + */ + OrgInfoEntity getByMemberId(String memberId); + + /** + * 获取到期时间 + * @param date + * @return + */ + List selectEndDate(String date); + + /** + * 获取到期时间之后的机构 + * @param date + * @return + */ + List afterEndDate(Date date); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgStatisticsMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgStatisticsMapper.java new file mode 100644 index 00000000..4fe24453 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgStatisticsMapper.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 接口调用次数统计Mapper接口 + * + * @author yulei + * @date 2023-06-16 + */ +@Mapper +public interface OrgStatisticsMapper { + + /** + * 查询接口调用次数统计列表 + * + * @param orgStatistics 接口调用次数统计 + * @return 接口调用次数统计集合 + */ + List selectOrgStatisticsList(OrgStatisticsEntity orgStatistics); + + /** + * 新增接口调用次数统计 + * + * @param orgStatistics 接口调用次数统计 + * @return 结果 + */ + int insertOrgStatistics(OrgStatisticsEntity orgStatistics); + + /** + * 根据机构和apiId获取唯一机构号 + * @param vo + * @return + */ + OrgStatisticsEntity selectByApi(OrgStatisticsEntity vo); + + int increase(OrgStatisticsEntity orgStatistics); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/PosMatchRateMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/PosMatchRateMapper.java new file mode 100644 index 00000000..ea7248b3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/PosMatchRateMapper.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; +import org.apache.ibatis.annotations.Mapper; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * Pos匹配率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface PosMatchRateMapper { + /** + * 查询Pos匹配率 + * + * @param id Pos匹配率主键 + * @return Pos匹配率 + */ + PosMatchRate selectPosMatchRateById(Long id); + + /** + * 查询Pos匹配率列表 + * + * @param posMatchRate Pos匹配率 + * @return Pos匹配率集合 + */ + List selectPosMatchRateList(PosMatchRate posMatchRate); + + + BigDecimal selectByDate(String txnDate); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteDailyCountMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteDailyCountMapper.java new file mode 100644 index 00000000..ffb7dff1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteDailyCountMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 日营运线路条数Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface RouteDailyCountMapper { + /** + * 查询日营运线路条数 + * + * @param id 日营运线路条数主键 + * @return 日营运线路条数 + */ + RouteDailyCount selectRouteDailyCountById(Long id); + + /** + * 查询日营运线路条数列表 + * + * @param routeDailyCount 日营运线路条数 + * @return 日营运线路条数集合 + */ + List selectRouteDailyCountList(RouteDailyCount routeDailyCount); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMetricDayMapper.java new file mode 100644 index 00000000..8196ad66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMetricDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 班次日客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface RouteMetricDayMapper { + /** + * 查询班次日客流量统计 + * + * @param id 班次日客流量统计主键 + * @return 班次日客流量统计 + */ + RouteMetricDay selectRouteMetricDayById(Long id); + + /** + * 查询班次日客流量统计列表 + * + * @param routeMetricDay 班次日客流量统计 + * @return 班次日客流量统计集合 + */ + List selectRouteMetricDayList(RouteMetricDay routeMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMissMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMissMapper.java new file mode 100644 index 00000000..9696ff56 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMissMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 班次缺失率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface RouteMissMapper { + /** + * 查询班次缺失率 + * + * @param id 班次缺失率主键 + * @return 班次缺失率 + */ + RouteMiss selectRouteMissById(Long id); + + /** + * 查询班次缺失率列表 + * + * @param routeMiss 班次缺失率 + * @return 班次缺失率集合 + */ + List selectRouteMissList(RouteMiss routeMiss); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteTurnoverTimeMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteTurnoverTimeMapper.java new file mode 100644 index 00000000..b3a91e00 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteTurnoverTimeMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 班次周转时间Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface RouteTurnoverTimeMapper { + /** + * 查询班次周转时间 + * + * @param id 班次周转时间主键 + * @return 班次周转时间 + */ + RouteTurnoverTime selectRouteTurnoverTimeById(Long id); + + /** + * 查询班次周转时间列表 + * + * @param routeTurnoverTime 班次周转时间 + * @return 班次周转时间集合 + */ + List selectRouteTurnoverTimeList(RouteTurnoverTime routeTurnoverTime); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricDayMapper.java new file mode 100644 index 00000000..e14ae200 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日常乘客客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqMetricDayMapper { + /** + * 查询站点日常乘客客流量统计 + * + * @param id 站点日常乘客客流量统计主键 + * @return 站点日常乘客客流量统计 + */ + StationFreqMetricDay selectStationFreqMetricDayById(Long id); + + /** + * 查询站点日常乘客客流量统计列表 + * + * @param stationFreqMetricDay 站点日常乘客客流量统计 + * @return 站点日常乘客客流量统计集合 + */ + List selectStationFreqMetricDayList(StationFreqMetricDay stationFreqMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricMonthMapper.java new file mode 100644 index 00000000..83c823c0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点月换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqMetricMonthMapper { + /** + * 查询站点月换乘客流量统计 + * + * @param lineCode 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + StationFreqMetricMonth selectStationFreqMetricMonthByLineCode(String lineCode); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param stationFreqMetricMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectStationFreqMetricMonthList(StationFreqMetricMonth stationFreqMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransDayMapper.java new file mode 100644 index 00000000..84b5cdb3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqTransDayMapper { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransDay selectStationFreqTransDayById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransDay 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransDayList(StationFreqTransDay stationFreqTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransMonthMapper.java new file mode 100644 index 00000000..56e407bb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqTransMonthMapper { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransMonth selectStationFreqTransMonthById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransMonth 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransMonthList(StationFreqTransMonth stationFreqTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationMissMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationMissMapper.java new file mode 100644 index 00000000..7c63d095 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationMissMapper.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点缺失率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface StationMissMapper { + /** + * 查询站点缺失率 + * + * @param id 站点缺失率主键 + * @return 站点缺失率 + */ + StationMiss selectStationMissById(Long id); + + /** + * 查询站点缺失率列表 + * + * @param stationMiss 站点缺失率 + * @return 站点缺失率集合 + */ + List selectStationMissList(StationMiss stationMiss); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/SyncRecordMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/SyncRecordMapper.java new file mode 100644 index 00000000..e14e4ed3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/SyncRecordMapper.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 客流表文件Mapper接口 + * + * @author shu_kai + * @date 2023-09-26 + */ +@Mapper +public interface SyncRecordMapper { + + /** + * 查询客流表文件列表 + * + * @param syncRecord 客流表文件 + * @return 客流表文件集合 + */ + List selectSyncRecordList(SyncRecord syncRecord); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/VehicleDailyCountMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/VehicleDailyCountMapper.java new file mode 100644 index 00000000..bce99eab --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/VehicleDailyCountMapper.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 日营运车辆数Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface VehicleDailyCountMapper { + /** + * 查询日营运车辆数 + * + * @param id 日营运车辆数主键 + * @return 日营运车辆数 + */ + VehicleDailyCount selectVehicleDailyCountById(Long id); + + /** + * 查询日营运车辆数列表 + * + * @param vehicleDailyCount 日营运车辆数 + * @return 日营运车辆数集合 + */ + List selectVehicleDailyCountList(VehicleDailyCount vehicleDailyCount); + + /** + * 统计车辆数 + * @param req + * @return + */ + Long countBus(VehicleDailyCount req); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DataSourceFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DataSourceFactory.java new file mode 100644 index 00000000..b0006174 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DataSourceFactory.java @@ -0,0 +1,12 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +public interface DataSourceFactory { + + /** + * 创建数据源实例 + * + * @param property + * @return + */ + DbQuery createDbQuery(DbQueryProperty property); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbColumn.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbColumn.java new file mode 100644 index 00000000..5ec1fb70 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbColumn.java @@ -0,0 +1,134 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +public class DbColumn { + + /** + * 列名 + */ + private String colName; + + /** + * 数据类型 + */ + private String dataType; + + /** + * 数据长度 + */ + private String dataLength; + + /** + * 数据精度 + */ + private String dataPrecision; + + /** + * 数据小数位 + */ + private String dataScale; + + /** + * 是否主键 + */ + private Boolean colKey; + + /** + * 是否允许为空 + */ + private Boolean nullable; + + /** + * 列的序号 + */ + private Integer colPosition; + + /** + * 列默认值 + */ + private String dataDefault; + + /** + * 列注释 + */ + private String colComment; + + public String getColName() { + return colName; + } + + public void setColName(String colName) { + this.colName = colName; + } + + public String getDataType() { + return dataType; + } + + public void setDataType(String dataType) { + this.dataType = dataType; + } + + public String getDataLength() { + return dataLength; + } + + public void setDataLength(String dataLength) { + this.dataLength = dataLength; + } + + public String getDataPrecision() { + return dataPrecision; + } + + public void setDataPrecision(String dataPrecision) { + this.dataPrecision = dataPrecision; + } + + public String getDataScale() { + return dataScale; + } + + public void setDataScale(String dataScale) { + this.dataScale = dataScale; + } + + public Boolean getColKey() { + return colKey; + } + + public void setColKey(Boolean colKey) { + this.colKey = colKey; + } + + public Boolean getNullable() { + return nullable; + } + + public void setNullable(Boolean nullable) { + this.nullable = nullable; + } + + public Integer getColPosition() { + return colPosition; + } + + public void setColPosition(Integer colPosition) { + this.colPosition = colPosition; + } + + public String getDataDefault() { + return dataDefault; + } + + public void setDataDefault(String dataDefault) { + this.dataDefault = dataDefault; + } + + public String getColComment() { + return colComment; + } + + public void setColComment(String colComment) { + this.colComment = colComment; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbDialect.java new file mode 100644 index 00000000..a7a5af5e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbDialect.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import org.springframework.jdbc.core.RowMapper; + +/** + * 表数据查询接口 + */ +public interface DbDialect { + + RowMapper tableMapper(); + + RowMapper columnMapper(); + + /** + * 获取指定表的所有列 + * + * @param dbName + * @param tableName + * @return + */ + String columns(String dbName, String tableName); + + /** + * 获取数据库下的 所有表 + * + * @param dbName + * @return + */ + String tables(String dbName); + + /** + * 构建 分页 sql + * + * @param sql + * @param offset + * @param count + * @return + */ + String buildPaginationSql(String sql, long offset, long count); + + /** + * 包装 count sql + * + * @param sql + * @return + */ + String count(String sql); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbMD5Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbMD5Util.java new file mode 100644 index 00000000..6a461049 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbMD5Util.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import java.security.MessageDigest; + +public class DbMD5Util { + + private static final char[] HEX_CHARS = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; + + /** + * MD5加密 + */ + public static String encrypt(String value){ + return encrypt(value.getBytes()); + } + + /** + * MD5加密 + */ + public static String encrypt(byte[] value){ + try { + byte[] bytes = MessageDigest.getInstance("MD5").digest(value); + char[] chars = new char[32]; + for (int i = 0; i < chars.length; i = i + 2) { + byte b = bytes[i / 2]; + chars[i] = HEX_CHARS[(b >>> 0x4) & 0xf]; + chars[i + 1] = HEX_CHARS[b & 0xf]; + } + return new String(chars); + } catch (Exception e) { + throw new RuntimeException("md5 encrypt error", e); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQuery.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQuery.java new file mode 100644 index 00000000..25e13e49 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQuery.java @@ -0,0 +1,115 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import com.jiuyv.sptccc.agile.common.core.page.PageResult; + +import java.sql.Connection; +import java.util.List; +import java.util.Map; + +/** + * 表数据查询接口 + */ +public interface DbQuery { + + /** + * 获取数据库连接 + */ + Connection getConnection(); + + /** + * 检测连通性 + */ + boolean valid(); + + /** + * 关闭数据源 + */ + void close(); + + /** + * 获取指定表 具有的所有字段列表 + * @param dbName + * @param tableName + * @return + */ + List getTableColumns(String dbName, String tableName); + + /** + * 获取指定数据库下 所有的表信息 + * + * @param dbName + * @return + */ + List getTables(String dbName); + + /** + * 获取总数 + * + * @param sql + * @return + */ + Long count(String sql); + + /** + * 获取总数带查询参数 + * + * @param sql + * @return + */ + Long count(String sql, Object[] args); + + /** + * 获取总数带查询参数 NamedParameterJdbcTemplate + * + * @param sql + * @return + */ + Long count(String sql, Map params); + + /** + * 查询结果列表 + * + * @param sql + * @return + */ + List> queryList(String sql); + + /** + * 查询结果列表带查询参数 + * + * @param sql + * @param args + * @return + */ + List> queryList(String sql, Object[] args); + + /** + * 查询结果分页 + * + * @param sql + * @param offset + * @param size + * @return + */ + PageResult> queryByPage(String sql, long offset, long size); + + /** + * 查询结果分页带查询参数 + * @param sql + * @param args + * @param offset + * @param size + * @return + */ + PageResult> queryByPage(String sql, Object[] args, long offset, long size); + + /** + * 查询结果分页带查询参数 NamedParameterJdbcTemplate + * @param sql + * @param params + * @param offset + * @param size + * @return + */ + PageResult> queryByPage(String sql, Map params, long offset, long size); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQueryProperty.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQueryProperty.java new file mode 100644 index 00000000..c964efe6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQueryProperty.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import org.apache.commons.lang3.StringUtils; + +import java.io.Serializable; + +//@AllArgsConstructor +public class DbQueryProperty implements Serializable { + + private static final long serialVersionUID = 1L; + + private String dbType; + private String host; + private String username; + private String password; + private Integer port; + private String dbName; + private String sid; + + /** + * 参数合法性校验 + */ + public void viald() { + if (StringUtils.isEmpty(dbType) || StringUtils.isEmpty(host) || + StringUtils.isEmpty(username) || StringUtils.isEmpty(password) || + port == null) { + throw new RuntimeException("参数不完整"); + } + if (DbType.OTHER.getDb().equals(dbType)) { + throw new RuntimeException("不支持的数据库类型"); + } + } + + public DbQueryProperty(String dbType, String host, String username, String password, Integer port, String dbName, String sid) { + this.dbType = dbType; + this.host = host; + this.username = username; + this.password = password; + this.port = port; + this.dbName = dbName; + this.sid = sid; + } + + public String getDbType() { + return dbType; + } + + public void setDbType(String dbType) { + this.dbType = dbType; + } + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public Integer getPort() { + return port; + } + + public void setPort(Integer port) { + this.port = port; + } + + public String getDbName() { + return dbName; + } + + public void setDbName(String dbName) { + this.dbName = dbName; + } + + public String getSid() { + return sid; + } + + public void setSid(String sid) { + this.sid = sid; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbTable.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbTable.java new file mode 100644 index 00000000..2f2dfd77 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbTable.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +public class DbTable { + + /** + * 表名 + */ + private String tableName; + + /** + * 表注释 + */ + private String tableComment; + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public String getTableComment() { + return tableComment; + } + + public void setTableComment(String tableComment) { + this.tableComment = tableComment; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbType.java new file mode 100644 index 00000000..398c51a8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbType.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +/** + * 数据库类型 + */ +public enum DbType { + + /** + * MYSQL + */ + MYSQL("1", "MySql数据库", "jdbc:mysql://${host}:${port}/${dbName}?serverTimezone=GMT%2B8&characterEncoding=UTF-8&useUnicode=true&useSSL=false"), + /** + * MARIADB + */ + MARIADB("2", "MariaDB数据库", "jdbc:mariadb://${host}:${port}/${dbName}"), + /** + * ORACLE + */ + ORACLE("3", "Oracle11g及以下数据库", "jdbc:oracle:thin:@${host}:${port}:${sid}"), + /** + * oracle12c new pagination + */ + ORACLE_12C("4", "Oracle12c+数据库", "jdbc:oracle:thin:@${host}:${port}:${sid}"), + /** + * POSTGRESQL + */ + POSTGRE_SQL("5", "PostgreSql数据库", "jdbc:postgresql://${host}:${port}/${dbName}"), + /** + * SQLSERVER2005 + */ + SQL_SERVER2008("6", "SQLServer2008及以下数据库", "jdbc:sqlserver://${host}:${port};DatabaseName=${dbName}"), + /** + * SQLSERVER + */ + SQL_SERVER("7", "SQLServer2012+数据库", "jdbc:sqlserver://${host}:${port};DatabaseName=${dbName}"), + /** + * UNKONWN DB + */ + OTHER("8", "其他数据库", ""); + + /** + * 数据库名称 + */ + private final String db; + + /** + * 描述 + */ + private final String desc; + + /** + * url + */ + private final String url; + + public String getDb() { + return this.db; + } + + public String getDesc() { + return this.desc; + } + + public String getUrl() { + return this.url; + } + + DbType(String db, String desc, String url) { + this.db = db; + this.desc = desc; + this.url = url; + } + + /** + * 获取数据库类型 + * + * @param dbType 数据库类型字符串 + */ + public static DbType getDbType(String dbType) { + for (DbType type : DbType.values()) { + if (type.db.equals(dbType)) { + return type; + } + } + return OTHER; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DialectFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DialectFactory.java new file mode 100644 index 00000000..e0fb78ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DialectFactory.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import com.jiuyv.sptcc.agile.dataservice.database.dialect.DialectRegistry; + +/** + * 方言工厂类 + */ +public class DialectFactory { + + private static final DialectRegistry DIALECT_REGISTRY = new DialectRegistry(); + + public static DbDialect getDialect(DbType dbType) { + return DIALECT_REGISTRY.getDialect(dbType); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/PageResult.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/PageResult.java new file mode 100644 index 00000000..852771e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/PageResult.java @@ -0,0 +1,63 @@ +//package com.jiuyv.sptcc.agile.dataservice.database; +// +// +//import java.io.Serializable; +//import java.util.List; +// +////@Accessors(chain = true) +//public class PageResult implements Serializable { +// +// private static final long serialVersionUID = 1L; +// +// private Integer pageNum; +// private Integer pageSize; +// private Integer total; +// private List data; +// +// private Long time; +// +// public PageResult(Integer total, List data) { +// this.total = total; +// this.data = data; +// } +// +// public Integer getPageNum() { +// return pageNum; +// } +// +// public void setPageNum(Integer pageNum) { +// this.pageNum = pageNum; +// } +// +// public Integer getPageSize() { +// return pageSize; +// } +// +// public void setPageSize(Integer pageSize) { +// this.pageSize = pageSize; +// } +// +// public Integer getTotal() { +// return total; +// } +// +// public void setTotal(Integer total) { +// this.total = total; +// } +// +// public List getData() { +// return data; +// } +// +// public void setData(List data) { +// this.data = data; +// } +// +// public Long getTime() { +// return time; +// } +// +// public void setTime(Long time) { +// this.time = time; +// } +//} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/DefaultSqlCache.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/DefaultSqlCache.java new file mode 100644 index 00000000..5cbc8db7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/DefaultSqlCache.java @@ -0,0 +1,124 @@ +package com.jiuyv.sptcc.agile.dataservice.database.cache; + +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.concurrent.locks.ReentrantReadWriteLock; + +public class DefaultSqlCache extends LinkedHashMap> implements SqlCache { + + private final int capacity; + + private final long expire; + + private final ReentrantReadWriteLock lock = new ReentrantReadWriteLock(); + + public DefaultSqlCache(int capacity, long expire) { + super((int) Math.ceil(capacity / 0.75) + 1, 0.75f, true); + // 容量 + this.capacity = capacity; + // 固定过期时间 + this.expire = expire; + } + + @Override + public void put(String key, Object value, long ttl) { + long expireTime = Long.MAX_VALUE; + if (ttl >= 0) { + expireTime = System.currentTimeMillis() + (ttl == 0 ? this.expire : ttl); + } + lock.writeLock().lock(); + try { + // 封装成过期时间节点 + put(key, new ExpireNode<>(expireTime, value)); + } finally { + lock.writeLock().unlock(); + } + } + + @Override + public Object get(String key) { + lock.readLock().lock(); + ExpireNode expireNode; + try { + expireNode = super.get(key); + } finally { + lock.readLock().unlock(); + } + if (expireNode == null) { + return null; + } + // 惰性删除过期的 + if (this.expire > -1L && expireNode.expire < System.currentTimeMillis()) { + try { + lock.writeLock().lock(); + super.remove(key); + } finally { + lock.writeLock().unlock(); + } + return null; + } + return expireNode.value; + } + + @Override + public void delete(String key) { + try { + lock.writeLock().lock(); + Iterator>> iterator = super.entrySet().iterator(); + // 清除key的缓存 + while (iterator.hasNext()) { + Map.Entry> entry = iterator.next(); + if (entry.getKey().equals(key)) { + iterator.remove(); + } + } + } finally { + lock.writeLock().unlock(); + } + } + + + @Override + protected boolean removeEldestEntry(Map.Entry> eldest) { + if (this.expire > -1L && size() > capacity) { + clean(); + } + // lru淘汰 + return size() > this.capacity; + } + + /** + * 清理已过期的数据 + */ + private void clean() { + try { + lock.writeLock().lock(); + Iterator>> iterator = super.entrySet().iterator(); + long now = System.currentTimeMillis(); + while (iterator.hasNext()) { + Map.Entry> next = iterator.next(); + // 判断是否过期 + if (next.getValue().expire < now) { + iterator.remove(); + } + } + } finally { + lock.writeLock().unlock(); + } + } + + + /** + * 过期时间节点 + */ + static class ExpireNode { + long expire; + Object value; + + public ExpireNode(long expire, Object value) { + this.expire = expire; + this.value = value; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/SqlCache.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/SqlCache.java new file mode 100644 index 00000000..541bd377 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/SqlCache.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.database.cache; + +import com.jiuyv.sptcc.agile.dataservice.database.DbMD5Util; + +import java.util.Arrays; + +/** + * SQL缓存接口 + */ +public interface SqlCache { + + /** + * 计算key + */ + default String buildSqlCacheKey(String sql, Object[] args) { + return DbMD5Util.encrypt(sql + ":" + Arrays.toString(args)); + } + + /** + * 存入缓存 + * @param key key + * @param value 值 + */ + void put(String key, Object value, long ttl); + + /** + * 获取缓存 + * @param key key + * @return + */ + T get(String key); + + /** + * 删除缓存 + * @param key key + */ + void delete(String key); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/AbstractDataSourceFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/AbstractDataSourceFactory.java new file mode 100644 index 00000000..ef78cae4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/AbstractDataSourceFactory.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.database.datasource; + +import com.jiuyv.sptcc.agile.dataservice.database.*; +import com.jiuyv.sptcc.agile.dataservice.database.query.AbstractDbQueryFactory; +import com.jiuyv.sptcc.agile.dataservice.database.query.CacheDbQueryFactoryBean; +import com.zaxxer.hikari.HikariDataSource; +import org.apache.commons.lang3.StringUtils; +import org.springframework.jdbc.core.JdbcTemplate; + +import javax.sql.DataSource; + +public abstract class AbstractDataSourceFactory implements DataSourceFactory { + + @Override + public DbQuery createDbQuery(DbQueryProperty property) { + property.viald(); + DbType dbType = DbType.getDbType(property.getDbType()); + DataSource dataSource = createDataSource(property); + DbQuery dbQuery = createDbQuery(dataSource, dbType); + return dbQuery; + } + + public DbQuery createDbQuery(DataSource dataSource, DbType dbType) { + DbDialect dbDialect = DialectFactory.getDialect(dbType); + if(dbDialect == null){ + throw new RuntimeException("该数据库类型正在开发中"); + } + AbstractDbQueryFactory dbQuery = new CacheDbQueryFactoryBean(); + dbQuery.setDataSource(dataSource); + dbQuery.setJdbcTemplate(new JdbcTemplate(dataSource)); + dbQuery.setDbDialect(dbDialect); + return dbQuery; + } + + public DataSource createDataSource(DbQueryProperty property) { + HikariDataSource dataSource = new HikariDataSource(); + dataSource.setJdbcUrl(trainToJdbcUrl(property)); + dataSource.setUsername(property.getUsername()); + dataSource.setPassword(property.getPassword()); + return dataSource; + } + + protected String trainToJdbcUrl(DbQueryProperty property) { + String url = DbType.getDbType(property.getDbType()).getUrl(); + if (StringUtils.isEmpty(url)) { + throw new RuntimeException("无效数据库类型!"); + } + url = url.replace("${host}", property.getHost()); + url = url.replace("${port}", String.valueOf(property.getPort())); + if (DbType.ORACLE.getDb().equals(property.getDbType()) || DbType.ORACLE_12C.getDb().equals(property.getDbType())) { + url = url.replace("${sid}", property.getSid()); + } else { + url = url.replace("${dbName}", property.getDbName()); + } + return url; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/CacheDataSourceFactoryBean.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/CacheDataSourceFactoryBean.java new file mode 100644 index 00000000..194b29e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/CacheDataSourceFactoryBean.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.database.datasource; + + +import com.jiuyv.sptcc.agile.dataservice.database.DbQueryProperty; +import org.springframework.stereotype.Component; + +import javax.sql.DataSource; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +@Component +public class CacheDataSourceFactoryBean extends AbstractDataSourceFactory { + + /** + * 数据源缓存 + */ + private static Map dataSourceMap = new ConcurrentHashMap<>(); + + @Override + public DataSource createDataSource(DbQueryProperty property) { + String key = property.getHost() + ":" + property.getPort() + ":" + property.getUsername() + ":" + property.getDbName(); + String s = compress(key); + DataSource dataSource = dataSourceMap.get(s); + if (null == dataSource) { + synchronized (CacheDataSourceFactoryBean.class) { + dataSource = super.createDataSource(property); + dataSourceMap.put(s, dataSource); + } + } + return dataSource; + } + + // 压缩 + public static String compress(String str) { + if (str == null || str.length() == 0) { + return str; + } + MessageDigest md = null; + try { + md = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } + if (md != null) { + md.update(str.getBytes()); + byte[] b = md.digest(); + int i; + StringBuffer buf = new StringBuffer(); + for (byte value : b) { + i = value; + if (i < 0) + i += 256; + if (i < 16) + buf.append("0"); + buf.append(Integer.toHexString(i)); + } + str = buf.toString().substring(8, 24).toUpperCase(); + } + return str; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/DefaultDataSourceFactoryBean.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/DefaultDataSourceFactoryBean.java new file mode 100644 index 00000000..2c75bebe --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/DefaultDataSourceFactoryBean.java @@ -0,0 +1,4 @@ +package com.jiuyv.sptcc.agile.dataservice.database.datasource; + +public class DefaultDataSourceFactoryBean extends AbstractDataSourceFactory{ +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/AbstractDbDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/AbstractDbDialect.java new file mode 100644 index 00000000..8cf42908 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/AbstractDbDialect.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbDialect; + +/** + * 方言抽象类 + */ +public abstract class AbstractDbDialect implements DbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select column_name AS COLNAME, ordinal_position AS COLPOSITION, column_default AS DATADEFAULT, is_nullable AS NULLABLE, data_type AS DATATYPE, " + + "character_maximum_length AS DATALENGTH, numeric_precision AS DATAPRECISION, numeric_scale AS DATASCALE, column_key AS COLKEY, column_comment AS COLCOMMENT " + + "from information_schema.columns where table_schema = '" + dbName + "' and table_name = '" + tableName + "' order by ordinal_position "; + } + + @Override + public String tables(String dbName) { + return "SELECT table_name AS TABLENAME, table_comment AS TABLECOMMENT FROM information_schema.tables where table_schema = '" + dbName + "' "; + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + // 获取 分页实际条数 + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" LIMIT ").append(offset).append(" , ").append(count); + return sqlBuilder.toString(); + } + + @Override + public String count(String sql) { + return "SELECT COUNT(*) FROM ( " + sql + " ) TEMP"; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/DialectRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/DialectRegistry.java new file mode 100644 index 00000000..b9e665ad --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/DialectRegistry.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbDialect; +import com.jiuyv.sptcc.agile.dataservice.database.DbType; + +import java.util.EnumMap; +import java.util.Map; + +public class DialectRegistry { + + private final Map dialect_enum_map = new EnumMap<>(DbType.class); + + public DialectRegistry() { + dialect_enum_map.put(DbType.MARIADB, new MariaDBDialect()); + dialect_enum_map.put(DbType.MYSQL, new MySqlDialect()); + dialect_enum_map.put(DbType.ORACLE_12C, new Oracle12cDialect()); + dialect_enum_map.put(DbType.ORACLE, new OracleDialect()); + dialect_enum_map.put(DbType.POSTGRE_SQL, new PostgreDialect()); + dialect_enum_map.put(DbType.SQL_SERVER2008, new SQLServer2008Dialect()); + dialect_enum_map.put(DbType.SQL_SERVER, new SQLServerDialect()); + dialect_enum_map.put(DbType.OTHER, new UnknownDialect()); + } + + public DbDialect getDialect(DbType dbType) { + return dialect_enum_map.get(dbType); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MariaDBDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MariaDBDialect.java new file mode 100644 index 00000000..bfbc752d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MariaDBDialect.java @@ -0,0 +1,7 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +/** + * MariaDB 数据库方言 + */ +public class MariaDBDialect extends MySqlDialect { +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MySqlDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MySqlDialect.java new file mode 100644 index 00000000..d3c551f1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MySqlDialect.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * MySql 数据库方言 + */ +public class MySqlDialect extends AbstractDbDialect { + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("PRI".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("YES".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/Oracle12cDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/Oracle12cDialect.java new file mode 100644 index 00000000..5b6bb38f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/Oracle12cDialect.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +/** + * ORACLE Oracle12c+数据库方言 + */ +public class Oracle12cDialect extends OracleDialect { + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" OFFSET ").append(offset).append(" ROWS FETCH NEXT ").append(count).append(" ROWS ONLY "); + return sqlBuilder.toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/OracleDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/OracleDialect.java new file mode 100644 index 00000000..1c49d95f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/OracleDialect.java @@ -0,0 +1,69 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * Oracle Oracle11g及以下数据库方言 + */ +public class OracleDialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select columns.column_name AS colName, columns.data_type AS DATATYPE, columns.data_length AS DATALENGTH, columns.data_precision AS DATAPRECISION, " + + "columns.data_scale AS DATASCALE, columns.nullable AS NULLABLE, columns.column_id AS COLPOSITION, columns.data_default AS DATADEFAULT, comments.comments AS COLCOMMENT," + + "case when t.column_name is null then 0 else 1 end as COLKEY " + + "from sys.user_tab_columns columns LEFT JOIN sys.user_col_comments comments ON columns.table_name = comments.table_name AND columns.column_name = comments.column_name " + + "left join ( " + + "select col.column_name as column_name, con.table_name as table_name from user_constraints con, user_cons_columns col " + + "where con.constraint_name = col.constraint_name and con.constraint_type = 'P' " + + ") t on t.table_name = columns.table_name and columns.column_name = t.column_name " + + "where columns.table_name = UPPER('" + tableName + "') order by columns.column_id "; + } + + @Override + public String tables(String dbName) { + return "select tables.table_name AS TABLENAME, comments.comments AS TABLECOMMENT from sys.user_tables tables " + + "LEFT JOIN sys.user_tab_comments comments ON tables.table_name = comments.table_name "; + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(); + sqlBuilder.append("SELECT * FROM ( SELECT TMP.*, ROWNUM ROW_ID FROM ( "); + sqlBuilder.append(originalSql).append(" ) TMP WHERE ROWNUM <=").append((offset >= 1) ? (offset + count) : count); + sqlBuilder.append(") WHERE ROW_ID > ").append(offset); + return sqlBuilder.toString(); + } + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("1".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("Y".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/PostgreDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/PostgreDialect.java new file mode 100644 index 00000000..a48f18fd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/PostgreDialect.java @@ -0,0 +1,68 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * Postgre 数据库方言 + */ +public class PostgreDialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select col.column_name AS COLNAME, col.ordinal_position AS COLPOSITION, col.column_default AS DATADEFAULT, col.is_nullable AS NULLABLE, col.udt_name AS DATATYPE, " + + "col.character_maximum_length AS DATALENGTH, col.numeric_precision AS DATAPRECISION, col.numeric_scale AS DATASCALE, des.description AS COLCOMMENT, " + + "case when t.colname is null then 0 else 1 end as COLKEY " + + "from information_schema.columns col left join pg_description des on col.table_name::regclass = des.objoid and col.ordinal_position = des.objsubid " + + "left join ( " + + "select pg_attribute.attname as colname from pg_constraint inner join pg_class on pg_constraint.conrelid = pg_class.oid " + + "inner join pg_attribute on pg_attribute.attrelid = pg_class.oid and pg_attribute.attnum = any(pg_constraint.conkey) " + + "where pg_class.relname = '" + tableName + "' and pg_constraint.contype = 'p' " + + ") t on t.colname = col.column_name " + + "where col.table_catalog = '" + dbName + "' and col.table_schema = 'public' and col.table_name = '" + tableName + "' order by col.ordinal_position "; + } + + @Override + public String tables(String dbName) { + return "select relname AS TABLENAME, cast(obj_description(relfilenode, 'pg_class') as varchar) AS TABLECOMMENT from pg_class " + + "where relname in (select tablename from pg_tables where schemaname = 'public' and position('_2' in tablename) = 0) "; + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" LIMIT ").append(count).append(" offset ").append(offset); + return sqlBuilder.toString(); + } + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("1".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("YES".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServer2008Dialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServer2008Dialect.java new file mode 100644 index 00000000..aac929f4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServer2008Dialect.java @@ -0,0 +1,102 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.apache.commons.lang3.StringUtils; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * SQLServer 2005 数据库方言 + */ +public class SQLServer2008Dialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select columns.name AS colName, columns.column_id AS COLPOSITION, columns.max_length AS DATALENGTH, columns.precision AS DATAPRECISION, columns.scale AS DATASCALE, " + + "columns.is_nullable AS NULLABLE, types.name AS DATATYPE, CAST(ep.value AS NVARCHAR(128)) AS COLCOMMENT, e.text AS DATADEFAULT, " + + "(select top 1 ind.is_primary_key from sys.index_columns ic left join sys.indexes ind on ic.object_id = ind.object_id and ic.index_id = ind.index_id and ind.name like 'PK_%' where ic.object_id=columns.object_id and ic.column_id=columns.column_id) AS COLKEY " + + "from sys.columns columns LEFT JOIN sys.types types ON columns.system_type_id = types.system_type_id " + + "LEFT JOIN syscomments e ON columns.default_object_id= e.id " + + "LEFT JOIN sys.extended_properties ep ON ep.major_id = columns.object_id AND ep.minor_id = columns.column_id AND ep.name = 'MS_Description' " + + "where columns.object_id = object_id('" + tableName + "') order by columns.column_id "; + } + + @Override + public String tables(String dbName) { + return "select tables.name AS TABLENAME, CAST(ep.value AS NVARCHAR(128)) AS TABLECOMMENT " + + "from sys.tables tables LEFT JOIN sys.extended_properties ep ON ep.major_id = tables.object_id AND ep.minor_id = 0"; + } + + private static String getOrderByPart(String sql) { + String loweredString = sql.toLowerCase(); + int orderByIndex = loweredString.indexOf("order by"); + if (orderByIndex != -1) { + return sql.substring(orderByIndex); + } else { + return ""; + } + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder pagingBuilder = new StringBuilder(); + String orderby = getOrderByPart(originalSql); + String distinctStr = ""; + + String loweredString = originalSql.toLowerCase(); + String sqlPartString = originalSql; + if (loweredString.trim().startsWith("select")) { + int index = 6; + if (loweredString.startsWith("select distinct")) { + distinctStr = "DISTINCT "; + index = 15; + } + sqlPartString = sqlPartString.substring(index); + } + pagingBuilder.append(sqlPartString); + + // if no ORDER BY is specified use fake ORDER BY field to avoid errors + if (StringUtils.isEmpty(orderby)) { + orderby = "ORDER BY CURRENT_TIMESTAMP"; + } + StringBuilder sql = new StringBuilder(); + sql.append("WITH selectTemp AS (SELECT ").append(distinctStr).append("TOP 100 PERCENT ") + .append(" ROW_NUMBER() OVER (").append(orderby).append(") as __row_number__, ").append(pagingBuilder) + .append(") SELECT * FROM selectTemp WHERE __row_number__ BETWEEN ") + //FIX#299:原因:mysql中limit 10(offset,size) 是从第10开始(不包含10),;而这里用的BETWEEN是两边都包含,所以改为offset+1 + .append(offset + 1) + .append(" AND ") + .append(offset + count).append(" ORDER BY __row_number__"); + return sql.toString(); + } + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("1".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("1".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServerDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServerDialect.java new file mode 100644 index 00000000..bc028521 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServerDialect.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +/** + * SQLServer 数据库方言 + */ +public class SQLServerDialect extends SQLServer2008Dialect { + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" OFFSET ").append(offset).append(" ROWS FETCH NEXT ").append(count).append(" ROWS ONLY "); + return sqlBuilder.toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/UnknownDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/UnknownDialect.java new file mode 100644 index 00000000..1fbaf455 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/UnknownDialect.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +/** + * 未知 数据库方言 + */ +public class UnknownDialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public String tables(String dbName) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public String buildPaginationSql(String sql, long offset, long count) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public String count(String sql) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public RowMapper columnMapper() { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public RowMapper tableMapper() { + throw new RuntimeException("不支持的数据库类型"); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/AbstractDbQueryFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/AbstractDbQueryFactory.java new file mode 100644 index 00000000..0ee37b7b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/AbstractDbQueryFactory.java @@ -0,0 +1,142 @@ +package com.jiuyv.sptcc.agile.dataservice.database.query; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbDialect; +import com.jiuyv.sptcc.agile.dataservice.database.DbQuery; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import com.zaxxer.hikari.HikariDataSource; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; + +import javax.sql.DataSource; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.List; +import java.util.Map; + +public abstract class AbstractDbQueryFactory implements DbQuery { + + private static final Logger log = LoggerFactory.getLogger(AbstractDbQueryFactory.class); + + protected DataSource dataSource; + + protected JdbcTemplate jdbcTemplate; + + protected DbDialect dbDialect; + + @Override + public Connection getConnection() { + try { + return dataSource.getConnection(); + } catch (SQLException e) { + throw new RuntimeException("获取数据库连接出错"); + } + } + + @Override + public boolean valid() { + Connection conn = null; + try { + conn = dataSource.getConnection(); + return conn.isValid(0); + } catch (SQLException e) { + throw new RuntimeException("检测连通性出错"); + } finally { + if (conn != null) { + try { + conn.close(); + } catch (SQLException e) { + log.error("链接关闭失败",e); + } + } + } + + } + + @Override + public void close() { + if (dataSource instanceof HikariDataSource) { + ((HikariDataSource) dataSource).close(); + } else { + throw new RuntimeException("不合法数据源类型"); + } + } + + @Override + public List getTableColumns(String dbName, String tableName) { + String sql = dbDialect.columns(dbName, tableName); + return jdbcTemplate.query(sql, dbDialect.columnMapper()); + } + + @Override + public List getTables(String dbName) { + String sql = dbDialect.tables(dbName); + return jdbcTemplate.query(sql, dbDialect.tableMapper()); + } + + @Override + public Long count(String sql) { + return jdbcTemplate.queryForObject(dbDialect.count(sql), Long.class); + } + + @Override + public Long count(String sql, Object[] args) { + return jdbcTemplate.queryForObject(dbDialect.count(sql), args, Long.class); + } + + @Override + public Long count(String sql, Map params) { + NamedParameterJdbcTemplate namedJdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate); + return namedJdbcTemplate.queryForObject(dbDialect.count(sql), params, Long.class); + } + + @Override + public List> queryList(String sql) { + return jdbcTemplate.queryForList(sql); + } + + @Override + public List> queryList(String sql, Object[] args) { + return jdbcTemplate.queryForList(sql, args); + } + + @Override + public PageResult> queryByPage(String sql, long offset, long size) { + Long total = count(sql); + String pageSql = dbDialect.buildPaginationSql(sql, offset, size); + List> records = jdbcTemplate.queryForList(pageSql); + return new PageResult<>(total, records); + } + + @Override + public PageResult> queryByPage(String sql, Object[] args, long offset, long size) { + Long total = count(sql, args); + String pageSql = dbDialect.buildPaginationSql(sql, offset, size); + List> records = jdbcTemplate.queryForList(pageSql, args); + return new PageResult<>(total, records); + } + + @Override + public PageResult> queryByPage(String sql, Map params, long offset, long size) { + Long total = count(sql, params); + String pageSql = dbDialect.buildPaginationSql(sql, offset, size); + NamedParameterJdbcTemplate namedJdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate); + List> records = namedJdbcTemplate.queryForList(pageSql, params); + return new PageResult(total, records); + } + + public void setDataSource(DataSource dataSource) { + this.dataSource = dataSource; + } + + public void setJdbcTemplate(JdbcTemplate jdbcTemplate) { + this.jdbcTemplate = jdbcTemplate; + } + + public void setDbDialect(DbDialect dbDialect) { + this.dbDialect = dbDialect; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/CacheDbQueryFactoryBean.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/CacheDbQueryFactoryBean.java new file mode 100644 index 00000000..f002a5e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/CacheDbQueryFactoryBean.java @@ -0,0 +1,105 @@ +package com.jiuyv.sptcc.agile.dataservice.database.query; + + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import com.jiuyv.sptcc.agile.dataservice.database.cache.DefaultSqlCache; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Optional; + +public class CacheDbQueryFactoryBean extends AbstractDbQueryFactory { + + /** + * 默认缓存5分钟 + */ + private static final long DEFAULT_EXPIRE = 5 * 60 * 1000L; + private static final DefaultSqlCache sqlCache = new DefaultSqlCache(100, DEFAULT_EXPIRE); + + private T putCacheValue(String key, T value, long ttl) { + sqlCache.put(key, value, ttl); + return value; + } + + @Override + public List getTableColumns(String dbName, String tableName) { + Object[] args = new Object[]{dbName, tableName}; + Optional o = Optional.ofNullable(sqlCache.get(sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":getTableColumns", args))); + return super.getTableColumns(dbName, tableName); + } + + @Override + public List getTables(String dbName) { + Object[] args = new Object[]{dbName}; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":getTables", args); + return (List) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.getTables(dbName), DEFAULT_EXPIRE)); + } + + @Override + public Long count(String sql) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, null); + return (Long) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.count(sql), DEFAULT_EXPIRE)); + } + + @Override + public Long count(String sql, Object[] args) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, args); + return (Long) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.count(sql, args), DEFAULT_EXPIRE)); + } + + @Override + public Long count(String sql, Map params) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, params.values().toArray()); + return (Long) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.count(sql, params), DEFAULT_EXPIRE)); + } + + @Override + public List> queryList(String sql) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, null); + return (List>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryList(sql), DEFAULT_EXPIRE)); + } + + @Override + public List> queryList(String sql, Object[] args) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, args); + return (List>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryList(sql, args), DEFAULT_EXPIRE)); + } + + @Override + public PageResult> queryByPage(String sql, long offset, long size) { + Object[] args = new Object[]{offset, size}; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, args); + return (PageResult>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryByPage(sql, offset, size), DEFAULT_EXPIRE)); + } + + @Override + public PageResult> queryByPage(String sql, Object[] args, long offset, long size) { + Object[] objects = Arrays.copyOf(args, args.length + 2); + objects[args.length] = offset; + objects[args.length + 1] = size; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, objects); + return (PageResult>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryByPage(sql, args, offset, size), DEFAULT_EXPIRE)); + } + + @Override + public PageResult> queryByPage(String sql, Map params, long offset, long size) { + Object[] args = params.values().toArray(); + Object[] objects = Arrays.copyOf(args, args.length + 2); + objects[args.length] = offset; + objects[args.length + 1] = size; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, objects); + return (PageResult>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryByPage(sql, params, offset, size), DEFAULT_EXPIRE)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AbstractFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AbstractFactory.java new file mode 100644 index 00000000..f8a9d221 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AbstractFactory.java @@ -0,0 +1,8 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; + +public abstract class AbstractFactory { + + public abstract Crypto getCrypto(String type); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AlgorithmFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AlgorithmFactory.java new file mode 100644 index 00000000..4ce9e2a0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AlgorithmFactory.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.AlgorithmCrypto; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.AlgorithmRegistry; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; + +public class AlgorithmFactory extends AbstractFactory { + + private static final AlgorithmRegistry ALGORITHM_REGISTRY = new AlgorithmRegistry(); + + @Override + public Crypto getCrypto(String type) { + AlgorithmCrypto crypto = AlgorithmCrypto.getAlgorithmCrypto(type); + return ALGORITHM_REGISTRY.getAlgorithm(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/FactoryProducer.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/FactoryProducer.java new file mode 100644 index 00000000..a901a8b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/FactoryProducer.java @@ -0,0 +1,17 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; + +public class FactoryProducer { + + public static AbstractFactory getFactory(String type){ + DataApiEnum.CipherType cipherType = DataApiEnum.CipherType.getCipherType(type); + switch (cipherType) { + case REGEX: + return new RegexFactory(); + case ALGORITHM: + return new AlgorithmFactory(); + } + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/RegexFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/RegexFactory.java new file mode 100644 index 00000000..c40b6f7d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/RegexFactory.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.RegexCrypto; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.RegexRegistry; + +public class RegexFactory extends AbstractFactory { + + private static final RegexRegistry REGEX_REGISTRY = new RegexRegistry(); + + @Override + public Crypto getCrypto(String type) { + RegexCrypto crypto = RegexCrypto.getRegexCrypto(type); + return REGEX_REGISTRY.getRegex(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/ADDRESSCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/ADDRESSCrypto.java new file mode 100644 index 00000000..9689c6f9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/ADDRESSCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [地址] 只显示前六位,不显示详细地址;我们要对个人信息增强保护<例子:北京市海淀区****> + */ +public class ADDRESSCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.rightPad(StringUtils.left(content, 6), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java new file mode 100644 index 00000000..2192661c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.crypto.Cipher; +import javax.crypto.KeyGenerator; +import javax.crypto.SecretKey; +import javax.crypto.spec.SecretKeySpec; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.util.Base64; + +public class AESCrypto implements Crypto { + + + public static final Logger log = LoggerFactory.getLogger(AESCrypto.class); + + private static final String TRANSFORMATION = "AES/GCM/NoPadding"; + + private static final String ALGORITHM = "AES"; + public static final String SecretKey = "6dUhsytWsgiMVZ8UeT3TzQ=="; + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + //1.构造密钥生成器,指定为AES算法,不区分大小写 + SecretKeySpec key = initSecretKey(); + //6.根据指定算法AES生成密码器 + Cipher cipher = Cipher.getInstance(TRANSFORMATION); + //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密解密(Decrypt_mode)操作,第二个参数为使用的KEY + cipher.init(Cipher.ENCRYPT_MODE, key); + //8.根据密码器的初始化方式--加密:将数据加密 + byte[] AES_encrypt = cipher.doFinal(content.getBytes(CHARSET_UTF8)); + //9.将字符串返回 + return Base64.getEncoder().encodeToString(AES_encrypt); + } catch (Exception e) { + log.error("AES加密失败",e); + } + return null; + } + + @Override + public String decrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + //1.构造密钥生成器,指定为AES算法,不区分大小写 + SecretKeySpec key = initSecretKey(); + //6.根据指定算法AES生成密码器 + Cipher cipher = Cipher.getInstance(TRANSFORMATION); + //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密解密(Decrypt_mode)操作,第二个参数为使用的KEY + cipher.init(Cipher.DECRYPT_MODE, key);// 初始化 + //8.根据密码器的初始化方式--加密:将数据加密 + byte[] AES_decode = cipher.doFinal(Base64.getDecoder().decode(content)); + return new String(AES_decode, CHARSET_UTF8); + } catch (Exception e) { + log.error("AES解密失败",e); + } + return null; + } + + private String getKey() throws NoSuchAlgorithmException { + KeyGenerator kGen = KeyGenerator.getInstance(ALGORITHM); + SecureRandom random = SecureRandom.getInstance(SHA1PRNG); + random.setSeed(SLAT.getBytes()); + //2.根据 RULES 规则初始化密钥生成器,根据传入的字节数组生成一个128位的随机源 + kGen.init(128, random); + //3.产生原始对称密钥 + SecretKey secretKey = kGen.generateKey(); + //4.获得原始对称密钥的字节数组 + byte[] enCodeFormat = secretKey.getEncoded(); + return Base64.getEncoder().encodeToString(enCodeFormat); + } + + private SecretKeySpec initSecretKey() { + return new SecretKeySpec(Base64.getDecoder().decode(AESCrypto.SecretKey), "AES"); + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java new file mode 100644 index 00000000..0fd824f8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.AlgorithmCrypto; + +import java.util.EnumMap; +import java.util.Map; + +public class AlgorithmRegistry { + + private final Map algorithm_enum_map = new EnumMap<>(AlgorithmCrypto.class); + + public AlgorithmRegistry() { + algorithm_enum_map.put(AlgorithmCrypto.BASE64, new BASE64Crypto()); + algorithm_enum_map.put(AlgorithmCrypto.AES, new AESCrypto()); + algorithm_enum_map.put(AlgorithmCrypto.MD5, new MD5Crypto()); + algorithm_enum_map.put(AlgorithmCrypto.SHA_1, new SHA1Crypto()); + algorithm_enum_map.put(AlgorithmCrypto.SHA_256, new SHA256Crypto()); + } + + public Crypto getAlgorithm(AlgorithmCrypto crypto) { + return algorithm_enum_map.get(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BANKCARDCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BANKCARDCrypto.java new file mode 100644 index 00000000..d431db84 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BANKCARDCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [银行卡号] 前六位,后四位,其他用星号隐藏每位1个星号<例子:6222600**********1234> + */ +public class BANKCARDCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.left(content, 6).concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"), "******")); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BASE64Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BASE64Crypto.java new file mode 100644 index 00000000..c3746d75 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BASE64Crypto.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.util.Base64; + +public class BASE64Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + byte[] encode = Base64.getEncoder().encode(content.getBytes(CHARSET_UTF8)); + return new String(encode, CHARSET_UTF8); + } catch (Exception e) { + } + return null; + } + + @Override + public String decrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + byte[] decode = Base64.getDecoder().decode(content.getBytes(CHARSET_UTF8)); + return new String(decode, CHARSET_UTF8); + } catch (Exception e) { + } + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CHINESENAMECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CHINESENAMECrypto.java new file mode 100644 index 00000000..6961548a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CHINESENAMECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [中文姓名] 只显示第一个汉字,其他隐藏为星号<例子:李**> + */ +public class CHINESENAMECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.rightPad(StringUtils.left(content, 1), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CNAPSCODECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CNAPSCODECrypto.java new file mode 100644 index 00000000..2013ddce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CNAPSCODECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [公司开户银行联号] 公司开户银行联行号,显示前四位,其他用星号隐藏,每位1个星号<例子:1234********> + */ +public class CNAPSCODECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.rightPad(StringUtils.left(content, 4), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/Crypto.java new file mode 100644 index 00000000..6f62bf41 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/Crypto.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +public interface Crypto { + + /** + * 字符编码 + */ + String CHARSET_UTF8 = "UTF-8"; + /** + * 密码盐 + */ + String SLAT = "DATAX:20200101"; + + String SHA1PRNG = "SHA1PRNG"; + + String encrypt(String content); + + String decrypt(String content); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java new file mode 100644 index 00000000..253c39ce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java @@ -0,0 +1,77 @@ +// package com.jiuyv.sptcc.agile.dataservice.factory.crypto; +// +// import org.apache.commons.lang3.StringUtils; +// import org.slf4j.Logger; +// import org.slf4j.LoggerFactory; +// +// import javax.crypto.Cipher; +// import javax.crypto.KeyGenerator; +// import javax.crypto.SecretKey; +// import javax.crypto.spec.SecretKeySpec; +// import java.nio.charset.StandardCharsets; +// import java.security.NoSuchAlgorithmException; +// import java.security.SecureRandom; +// import java.util.Base64; +// +// public class DESCrypto implements Crypto { +// +// private static final Logger log = LoggerFactory.getLogger(DESCrypto.class); +// private static final String DES ="DES"; +// private static final String KEY = "DES/ECB/PKCS5Padding"; +// +// private static final String SLAT = "jiuyv"; +// +// +// @Override +// public String encrypt(String content) { +// if (StringUtils.isBlank(content)) { +// return null; +// } +// try { +// SecretKeySpec key = getKey(); +// Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding"); +// cipher.init(Cipher.ENCRYPT_MODE, key); +// byte[] DES_encrypt = cipher.doFinal(content.getBytes(StandardCharsets.UTF_8)); +// return Base64.getEncoder().encodeToString(DES_encrypt); +// } catch (Exception e) { +// log.error("des encrypt 失败", e); +// } +// return null; +// } +// +// +// private SecretKeySpec getKey() throws NoSuchAlgorithmException { +// KeyGenerator kGen = KeyGenerator.getInstance(DES); +// SecureRandom random = SecureRandom.getInstance(SHA1PRNG); +// random.setSeed(SLAT.getBytes()); +// kGen.init(56,random); +// SecretKey secretKey = kGen.generateKey(); +// return new SecretKeySpec(secretKey.getEncoded(), DES); +// } +// +// @Override +// public String decrypt(String content) { +// if (StringUtils.isBlank(content)) { +// return null; +// } +// try { +// SecretKeySpec key = getKey(); +// Cipher cipher = Cipher.getInstance(KEY); +// cipher.init(Cipher.DECRYPT_MODE, key); +// byte[] DES_decrypt = cipher.doFinal(Base64.getDecoder().decode(content)); +// return new String(DES_decrypt, StandardCharsets.UTF_8); +// } catch (Exception e) { +// log.error("des encrypt 失败", e); +// } +// return null; +// } +// +// public static void main(String[] args) { +// DESCrypto desCrypto = new DESCrypto(); +// String encrypt = desCrypto.encrypt("123456"); +// System.out.println(encrypt); +// System.out.println(desCrypto.decrypt(encrypt)); +// } +// +// +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/EMAILCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/EMAILCrypto.java new file mode 100644 index 00000000..48fa94d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/EMAILCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [电子邮箱] 只显示前三后显示邮箱后缀,其他隐藏为星号<例子:312****@qq.com> + */ +public class EMAILCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return content.replaceAll("(\\w{3}).*@(\\w+)", "$1****@$2"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/FIXEDPHONECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/FIXEDPHONECrypto.java new file mode 100644 index 00000000..42df6931 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/FIXEDPHONECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [固定电话] 后四位,其他隐藏<例子:****1234> + */ +public class FIXEDPHONECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/IDCARDCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/IDCARDCrypto.java new file mode 100644 index 00000000..548b58e2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/IDCARDCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [身份证号] 显示最后四位,其他隐藏。共计18位或者15位。<例子:*************5762> + */ +public class IDCARDCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MD5Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MD5Crypto.java new file mode 100644 index 00000000..6dc40327 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MD5Crypto.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.security.MessageDigest; +import java.util.Base64; + +public class MD5Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + MessageDigest md5 = null; + try { + md5 = MessageDigest.getInstance("MD5"); + md5.update(content.getBytes(CHARSET_UTF8)); + md5.update(SLAT.getBytes(CHARSET_UTF8)); + } catch (Exception ignored) { + } + if (md5 != null) { + return Base64.getEncoder().encodeToString(md5.digest()); + } + return null; + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MOBILEPHONECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MOBILEPHONECrypto.java new file mode 100644 index 00000000..204b6be9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MOBILEPHONECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [手机号码] 前三位,后四位,其他隐藏<例子:138******1234> + */ +public class MOBILEPHONECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.left(content, 3).concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"), "***")); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/RegexRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/RegexRegistry.java new file mode 100644 index 00000000..c45ef8ee --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/RegexRegistry.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.RegexCrypto; + +import java.util.EnumMap; +import java.util.Map; + +public class RegexRegistry { + + private final Map regex_enum_map = new EnumMap<>(RegexCrypto.class); + + public RegexRegistry() { + regex_enum_map.put(RegexCrypto.CHINESE_NAME, new CHINESENAMECrypto()); + regex_enum_map.put(RegexCrypto.ID_CARD, new IDCARDCrypto()); + regex_enum_map.put(RegexCrypto.FIXED_PHONE, new FIXEDPHONECrypto()); + regex_enum_map.put(RegexCrypto.MOBILE_PHONE, new MOBILEPHONECrypto()); + regex_enum_map.put(RegexCrypto.ADDRESS, new ADDRESSCrypto()); + regex_enum_map.put(RegexCrypto.EMAIL, new EMAILCrypto()); + regex_enum_map.put(RegexCrypto.BANK_CARD, new BANKCARDCrypto()); + regex_enum_map.put(RegexCrypto.CNAPS_CODE, new CNAPSCODECrypto()); + } + + public Crypto getRegex(RegexCrypto crypto) { + return regex_enum_map.get(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA1Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA1Crypto.java new file mode 100644 index 00000000..ed7577a8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA1Crypto.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.security.MessageDigest; +import java.util.Base64; + +public class SHA1Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + MessageDigest md5 = null; + try { + md5 = MessageDigest.getInstance("SHA-1"); + md5.update(content.getBytes(CHARSET_UTF8)); + md5.update(SLAT.getBytes(CHARSET_UTF8)); + } catch (Exception ignored) { + } + if (md5 != null) { + return Base64.getEncoder().encodeToString(md5.digest()); + } + return null; + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA256Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA256Crypto.java new file mode 100644 index 00000000..873508c4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA256Crypto.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.security.MessageDigest; +import java.util.Base64; + +public class SHA256Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + MessageDigest md5 = null; + try { + md5 = MessageDigest.getInstance("SHA-256"); + md5.update(content.getBytes(CHARSET_UTF8)); + md5.update(SLAT.getBytes(CHARSET_UTF8)); + } catch (Exception ignored) { + } + if (md5 != null) { + return Base64.getEncoder().encodeToString(md5.digest()); + } + return null; + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/feign/MessageFeign.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/feign/MessageFeign.java new file mode 100644 index 00000000..8d4270e6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/feign/MessageFeign.java @@ -0,0 +1,8 @@ +package com.jiuyv.sptcc.agile.dataservice.feign; + +import com.jiuyv.sptccc.agile.api.fegin.PublicPhoneMsgLogFeignApi; +import org.springframework.cloud.openfeign.FeignClient; + +@FeignClient(name = "message-service",contextId = "sendMassage") +public interface MessageFeign extends PublicPhoneMsgLogFeignApi { +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/GolabExceptionHandler.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/GolabExceptionHandler.java new file mode 100644 index 00000000..324d2cc4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/GolabExceptionHandler.java @@ -0,0 +1,75 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.validation.BindException; +import org.springframework.validation.FieldError; +import org.springframework.validation.ObjectError; +import org.springframework.web.bind.MissingServletRequestParameterException; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; +import org.springframework.web.servlet.NoHandlerFoundException; + +import javax.servlet.http.HttpServletRequest; +import javax.validation.ValidationException; +import java.util.List; + +/** + * @author shu_k + * @Description: 全局异常处理 + * @date 2022年1月5日 下午1:54:37 + */ +@RestControllerAdvice +public class GolabExceptionHandler { + + private static final Logger logger = LoggerFactory.getLogger(GolabExceptionHandler.class); + + @ExceptionHandler(BaseException.class) + public R handlerNoFoundException(BaseException e) { + logger.info("自定义异常,code: {},message: {}", e.getCode(), e.getDefaultMessage()); + return R.fail(e.getCode(), e.getDefaultMessage()); + } + + @ExceptionHandler(ValidationException.class) + public R validedBindException(ValidationException e) { + logger.warn("校验报错", e); + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), e.getMessage()); + } + + + @ExceptionHandler(BindException.class) + public R bindException(BindException e) { + logger.info("参数校验错误 {}", e.getMessage()); + List list = e.getBindingResult().getAllErrors(); + StringBuilder builder = new StringBuilder(); + for (ObjectError objectError : list) { + FieldError fieldError = (FieldError) objectError; + builder.append(fieldError.getField()).append(":").append(fieldError.getDefaultMessage()).append(";"); + } + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), builder.toString()); + } + + @ExceptionHandler(NoHandlerFoundException.class) + public R handlerNoFoundException(NoHandlerFoundException e) { + logger.warn(e.getMessage(), e); + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), "路径不存在,请检查路径是否正确"); + } + + + /** + * 访问接口参数不全 + * + * @param request + * @param pe + * @return + */ + @ExceptionHandler(MissingServletRequestParameterException.class) + public R missingServletRequestParameterException(HttpServletRequest request, MissingServletRequestParameterException pe) { + logger.info("请求地址:{},\n异常: {}", request.getRequestURI(), pe); + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), pe.getMessage()); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/MappingHandlerMapping.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/MappingHandlerMapping.java new file mode 100644 index 00000000..49982e09 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/MappingHandlerMapping.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.context.request.NativeWebRequest; +import org.springframework.web.context.request.RequestAttributes; +import org.springframework.web.context.request.ServletWebRequest; +import org.springframework.web.servlet.HandlerMapping; +import org.springframework.web.servlet.mvc.method.RequestMappingInfo; +import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.lang.reflect.Method; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +public class MappingHandlerMapping { + + private static final Logger LOGGER = LoggerFactory.getLogger(MappingHandlerMapping.class); + + /** + * 记录当前机器一注册api + */ + private static final Map MAPPINGS = new ConcurrentHashMap<>(); + private static final Method method; + + static { + try { + method = RequestHandler.class.getDeclaredMethod("invoke", HttpServletRequest.class, HttpServletResponse.class, Map.class, Map.class, Map.class); + } catch (NoSuchMethodException e) { + throw new UnsupportedOperationException(e); + } + } + + private RequestMappingHandlerMapping requestMappingHandlerMapping; + private RequestHandler handler; + private String prefix = "v1.0.0"; + + public static ApiEntity getMappingApiInfo(HttpServletRequest request) { + NativeWebRequest webRequest = new ServletWebRequest(request); + String requestMapping = (String) webRequest.getAttribute(HandlerMapping.BEST_MATCHING_PATTERN_ATTRIBUTE, RequestAttributes.SCOPE_REQUEST); + return getMappingApiInfo(buildMappingKey(request.getMethod(), requestMapping)); + } + + public static ApiEntity getMappingApiInfo(String key) { + return MAPPINGS.get(key); + } + + public static String buildMappingKey(String requestMethod, String requestMapping) { + return requestMethod.toUpperCase() + ":" + requestMapping; + } + + public void setRequestMappingHandlerMapping(RequestMappingHandlerMapping requestMappingHandlerMapping) { + this.requestMappingHandlerMapping = requestMappingHandlerMapping; + } + + public void setHandler(RequestHandler handler) { + this.handler = handler; + } + + /** + * 注册请求映射 + * + * @param api + */ + public void registerMapping(ApiEntity api) { + String mappingKey = getMappingKey(api); + if (MAPPINGS.containsKey(mappingKey)) { + // 取消注册 + MAPPINGS.remove(mappingKey); + requestMappingHandlerMapping.unregisterMapping(getRequestMapping(api)); + } + LOGGER.info("注册接口:{}:{}", api.getApiName(), mappingKey); + RequestMappingInfo requestMapping = getRequestMapping(api); + MAPPINGS.put(mappingKey, api); + requestMappingHandlerMapping.registerMapping(requestMapping, handler, method); + } + + /** + * 取消注册请求映射 + * + * @param api + */ + public void unregisterMapping(ApiEntity api) { + String mappingKey = getMappingKey(api); + if (MAPPINGS.containsKey(mappingKey)) { + // 取消注册 + MAPPINGS.remove(mappingKey); + requestMappingHandlerMapping.unregisterMapping(getRequestMapping(api)); + } + LOGGER.info("取消注册接口:{}:{}", api.getApiName(), mappingKey); + } + + private String getMappingKey(ApiEntity api) { + return buildMappingKey(api.getReqMethod().toUpperCase(), api.getApiUrl()); + } + + private RequestMappingInfo getRequestMapping(ApiEntity api) { + return RequestMappingInfo.paths(api.getApiUrl()).methods(RequestMethod.valueOf(api.getReqMethod().toUpperCase())).build(); + } + + /** + * 调用接口 /services/v1.0.0/user/1 + * + * @param version + * @param path + * @return + */ + // private String getRequestPath(String version, String path) { + // if (version != null) { + // prefix = version; + // } + // return Constants.PREFIX + SEPARATOR + prefix + (path.startsWith(SEPARATOR) ? path : (SEPARATOR + path)); + // } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestHandler.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestHandler.java new file mode 100644 index 00000000..ef626a27 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestHandler.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.service.api.impl.ApiMappingEngine; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.HashMap; +import java.util.Map; + +public class RequestHandler { + + private static final Logger LOGGER = LoggerFactory.getLogger(RequestHandler.class); + + private RequestInterceptor requestInterceptor; + + private ApiMappingEngine apiMappingEngine; + + private ObjectMapper objectMapper; + + private AsyncTask asyncTask; + + public void setRequestInterceptor(RequestInterceptor requestInterceptor) { + this.requestInterceptor = requestInterceptor; + } + + public void setApiMappingEngine(ApiMappingEngine apiMappingEngine) { + this.apiMappingEngine = apiMappingEngine; + } + + public void setObjectMapper(ObjectMapper objectMapper) { + this.objectMapper = objectMapper; + } + + public void setAsyncTask(AsyncTask asyncTask) { + this.asyncTask = asyncTask; + } + + @ResponseBody + public R>> invoke(HttpServletRequest request, HttpServletResponse response, + @PathVariable(required = false) Map pathVariables, + @RequestParam(required = false) Map requestParams, + @RequestBody(required = false) Map requestBodys) { + + ApiEntity api = MappingHandlerMapping.getMappingApiInfo(request); + PageResult> value = null; + boolean isSuccess = false; + try { + Map params = new HashMap<>(); + if (null != pathVariables && !pathVariables.isEmpty()) { + LOGGER.info("pathVariables:{}", pathVariables); + params.putAll(pathVariables); + } + if (null != requestParams && !requestParams.isEmpty()) { + LOGGER.info("requestParams:{}", requestParams); + params.putAll(requestParams); + } + if (null != requestBodys && !requestBodys.isEmpty()) { + LOGGER.info("requestBodys:{}", requestBodys); + params.putAll(requestBodys); + } + // 执行前置拦截器 + requestInterceptor.preHandle(request, response, api, params); + Long startTime = System.currentTimeMillis(); + value = apiMappingEngine.execute(api, params); + Long endTime = System.currentTimeMillis(); + // 执行后置拦截器 + requestInterceptor.postHandle(request, response, api, params,value, asyncTask,(endTime-startTime)); + isSuccess = true; + return R.ok(value); + } catch (BaseException e) { + return R.fail(e.getCode(),e.getMessage()); + } catch (Exception e){ + if(LOGGER.isDebugEnabled()){ + LOGGER.error("执行api任务失败",e); + }else{ + LOGGER.error("execute api error ,message is :{}",e.getMessage()); + } + return R.fail(ResultCode.FAILED.getCode(), e.getMessage()); + }finally { + statistics(api.getApiCode(),request,isSuccess); + } + } + + /** + * 统计接口调用次数 + * @param apiCode + * @param request + * @param isSuccess + */ + private void statistics(String apiCode, HttpServletRequest request, Boolean isSuccess) { + String orgNo = request.getHeader("orgNo"); + if(orgNo != null){ + asyncTask.doStatics(orgNo,apiCode,isSuccess); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestInterceptor.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestInterceptor.java new file mode 100644 index 00000000..99b3f9e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestInterceptor.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.EnableState; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.utils.IPUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + +public class RequestInterceptor { + + private static final Logger LOGGER = LoggerFactory.getLogger(RequestInterceptor.class); + + private static final String SYSTEM_CONSOLE = "SYSTEM_CONSOLE"; + + /** + * 请求之前执行 + * + * @return 当返回对象时,直接将此对象返回到页面,返回null时,继续执行后续操作 + * @throws Exception + */ + public void preHandle(HttpServletRequest request, HttpServletResponse response, ApiEntity api, Map params) throws JsonProcessingException { + LOGGER.info("************ApiInterceptor preHandle executed**********"); + String uri = request.getRequestURI(); + LOGGER.info("getRequestURI的值:{}" ,uri); + String ipAddr = IPUtil.getIpAddr(request); + LOGGER.info("ipAddr的值:{}" , ipAddr); + + LOGGER.info("request body {}",JacksonUtil.obj2String(params)); + + // 参数校验 + if (ApiCrypto.ApiState.WAIT.getCode().equals(api.getStatus())){ + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + ObjectMapper objectMapper = new ObjectMapper(); + TypeReference> typeReference = new TypeReference>(){}; + List list = objectMapper.readValue(api.getReqParams(), typeReference); + if (null != params && !params.isEmpty()) { + list.forEach(param -> { + if (params.containsKey(param.getParamName())) { + // 参数类型是否正确 + try { + Object parse = DataApiEnum.ParamType.parse(DataApiEnum.ParamType.getParamType(param.getParamType()), params.get(param.getParamName())); + params.put(param.getParamName(),parse); + } catch (Exception e) { + throw new BaseException(ResultCode.INPUT_NOT_VALID.getCode(),param.getParamName()); + } + } + }); + } + + } + + /** + * 执行完毕之后执行 + * + * @throws Exception + */ + public void postHandle(HttpServletRequest request, HttpServletResponse response, ApiEntity api, Map params, Object value, AsyncTask asyncTask,Long time) { + LOGGER.info("response body {}",value); + // 如果是测试接口饿话,记录日志 + String header = request.getHeader(SYSTEM_CONSOLE); + if(StringUtils.isNotBlank(header)){ + ApiLogEntity log = new ApiLogEntity(); + log.setApiId(api.getApiId()); + String uri = request.getRequestURI(); + log.setCallerUrl(uri); + String ipAddr = IPUtil.getIpAddr(request); + log.setCallerIp(ipAddr); + log.setStatus(EnableState.ENABLE.getCode()); + log.setApiName(api.getApiName()); + log.setCallerParams(JacksonUtil.obj2String(params)); + log.setMsg(JacksonUtil.obj2String(value)); + log.setCallerId(null); + log.setTime(time); + asyncTask.doTask(log); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/ApiParams.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/ApiParams.java new file mode 100644 index 00000000..ffb1f54e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/ApiParams.java @@ -0,0 +1,21 @@ +package com.jiuyv.sptcc.agile.dataservice.parmasValidate; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; + +/** + * @ClassName : ApiParams + * @Description : + * @Author : sky + * @Date: 2023-09-20 18:53 + */ +public class ApiParams implements Validate{ + + @Override + public void paramsVal(Object content) { + ApiDtoBase base = (ApiDtoBase) content; + String apiUrl = base.getApiUrl(); + //格式校验,要求 /*/* + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/Validate.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/Validate.java new file mode 100644 index 00000000..ef8bf26b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/Validate.java @@ -0,0 +1,12 @@ +package com.jiuyv.sptcc.agile.dataservice.parmasValidate; + +/** + * @ClassName : Validate + * @Description : 参数校验 + * @Author : sky + * @Date: 2023-09-20 18:51 + */ +public interface Validate { + + void paramsVal(Object content); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/ISyncRecordService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/ISyncRecordService.java new file mode 100644 index 00000000..1e9cdb85 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/ISyncRecordService.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.service; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; + +import java.util.Date; + +/** + * 客流表文件Service接口 + * + * @author shu_kai + * @date 2023-09-26 + */ +public interface ISyncRecordService { + /** + * 查询客流表文件列表 + * + * @param syncRecord 客流表文件 + * @return 客流表文件集合 + */ + SyncRecord selectSyncRecordList(String fileType, Date txnDate); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/AgileApiService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/AgileApiService.java new file mode 100644 index 00000000..e4443d09 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/AgileApiService.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api; + +import com.aspose.words.Document; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiDelRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiStatusRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; + +import java.util.List; + +/** + * 敏捷API + * + * @author yulei + */ +public interface AgileApiService { + + void releaseDataApi(); + + void cancelDataApi(); + + void saveDataApi(ApiEntity entity); + + void updateDataApi(ApiEntity entity); + + ApiEntity getDataApiById(Long id); + + void copyDataApi(Long id, String userName); + + /** + * 发布api接口 + * @param request + */ + void releaseDataApi(ApiStatusRequest request); + + List queryByList(ApiEntity entity); + + List buildApiTree(ApiEntity entity); + + void deleteDataApiById(ApiDelRequest request); + + void registerDataApi(ApiStatusRequest request); + + void cancelDataApi(ApiStatusRequest request); + + /** + * 下架api + * + * @param dto + */ + void downDataApi(ApiStatusRequest dto); + + /** + * 查询用户API列表 + * + * @param request + * @return + */ + List getUserApiList(ApiUserRequest request); + + /** + * 获取API接口统一路径 + * + * @return + */ + String getApiPrefixPath(); + + /** + * 接口文档生成 + * @param id + * @return + * @throws Exception + */ + Document wordDataApi(Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/ApiLogService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/ApiLogService.java new file mode 100644 index 00000000..a401d37c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/ApiLogService.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; + +import java.util.List; + +public interface ApiLogService { + + ApiLogEntity saveApiLog(ApiLogEntity Entity); + + ApiLogEntity getApiLogById(Long id); + + List queryByList(ApiLogEntity entity); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/MetadataSourceService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/MetadataSourceService.java new file mode 100644 index 00000000..8d4eec67 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/MetadataSourceService.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; + +/** + *

+ * 数据源信息表 服务类 + *

+ */ +public interface MetadataSourceService { + + MetadataSourceEntity getMetadataSourceById(Long id); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/AgileApiServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/AgileApiServiceImpl.java new file mode 100644 index 00000000..7643b424 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/AgileApiServiceImpl.java @@ -0,0 +1,536 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.aspose.words.Document; +import com.aspose.words.MailMerge; +import com.aspose.words.net.System.Data.DataRow; +import com.aspose.words.net.System.Data.DataTable; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.dto.RespVo; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.common.exception.ServiceException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.ApiLogTime; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiLogMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiDelRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiStatusRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.handler.MappingHandlerMapping; +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import com.jiuyv.sptcc.agile.dataservice.utils.AddressUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm3Util; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.word.WordUtil; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.core.io.ClassPathResource; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.io.InputStream; +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; +import java.util.stream.Collectors; + +/** + * @author yulei + */ +@Service +public class AgileApiServiceImpl implements AgileApiService { + + private static final Logger LOGGER = LoggerFactory.getLogger(AgileApiServiceImpl.class); + + private static final Map mappings = new ConcurrentHashMap<>(); + + @Resource + private ApiMapper apiMapper; + @Resource + private BaseMapper baseMapper; + @Resource + private ObjectMapper objectMapper; + @Resource + private ApiLogMapper apiLogMapper; + @Resource + private MappingHandlerMapping mappingHandlerMapping; + @Value("${api.test.avgTime}") + private long avgTime; + @Value("${api.test.num}") + private int num; + /** + * 获取API接口统一路径 + * + * @return + */ + @Override + public String getApiPrefixPath() { + return Constants.PREFIX; + } + + @Override + public void releaseDataApi() { + + String[] status = {ApiCrypto.ApiState.RELEASE.getCode(), ApiCrypto.ApiState.REGISTER.getCode()}; + List list = apiMapper.selectListByStatus(status); + LOGGER.info("list size {}", list.size()); + if (!CollectionUtils.isEmpty(list)) { + list = list.stream().filter(x-> x.getApiType().equals(DataApiEnum.API_TYPE.AGILE.getCode())).collect(Collectors.toList()); + list.forEach(this::register); + } + } + + @Override + public void cancelDataApi() { + String[] status = {ApiCrypto.ApiState.WAIT.getCode()}; + List list = apiMapper.selectListByStatus(status); + if (!CollectionUtils.isEmpty(list)) { + list = list.stream().filter(x-> x.getApiType().equals(DataApiEnum.API_TYPE.AGILE.getCode())).collect(Collectors.toList()); + list.forEach(this::unRegister); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void saveDataApi(ApiEntity entity) { + + ApiEntity only = apiMapper.getByApiCode(entity.getApiCode()); + if (only != null) { + throw new BaseException(ResultCode.API_CODE_HAS_USED); + } + // 检测同一个地址是否被占用 + ApiEntity vo = new ApiEntity(); + vo.setApiUrl(entity.getApiUrl()); + vo.setReqMethod(entity.getReqMethod()); + List list = apiMapper.selectList(vo); + if (!CollectionUtils.isEmpty(list)) { + throw new BaseException(ResultCode.API_PATH_HAS_USED); + } + entity.setStatus(DataApiEnum.API_STATUS.WAIT.getCode()); + entity.setApiType(DataApiEnum.API_TYPE.AGILE.getCode()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setVersion(Constants.VERSION); + int insert = apiMapper.insert(entity); + if (insert != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateDataApi(ApiEntity entity) { + ApiEntity byId = apiMapper.getById(entity.getApiId()); + if (byId == null) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + ApiEntity only = apiMapper.getByApiCode(entity.getApiCode()); + if (only != null && !only.getApiId().equals(entity.getApiId())) { + throw new BaseException(ResultCode.API_CODE_HAS_USED); + } + + ApiEntity vo = new ApiEntity(); + vo.setApiUrl(entity.getApiUrl()); + vo.setReqMethod(entity.getReqMethod()); + List list = apiMapper.selectList(vo); + if (!CollectionUtils.isEmpty(list)) { + for (ApiEntity apiEntity : list) { + if(apiEntity.getReqMethod().equals(entity.getReqMethod()) + &&Objects.equals(apiEntity.getApiUrl(),entity.getApiUrl()) + &&!Objects.equals(apiEntity.getApiId(),entity.getApiId())){ + throw new BaseException(ResultCode.API_PATH_HAS_USED); + } + } + } + + entity.setApiType(DataApiEnum.API_TYPE.AGILE.getCode()); + int row = apiMapper.updateById(entity); + if (row != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + @Override + public ApiEntity getDataApiById(Long id) { + ApiEntity apiEntity = apiMapper.getById(id); + if (null == apiEntity) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + return apiEntity; + } + + @Override + public void deleteDataApiById(ApiDelRequest request) { + ApiEntity apiEntity = apiMapper.getById(request.getApiId()); + if (null == apiEntity) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + if (DataApiEnum.API_STATUS.DOWN.getCode().equals(apiEntity.getStatus())||apiEntity.getStatus().equals(DataApiEnum.API_STATUS.WAIT.getCode())) { + ApiEntity entity = new ApiEntity(); + entity.setApiId(request.getApiId()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setUpdateBy(request.getUserName()); + entity.setParams(ParamsUtil.idempotent(request.getRecToken(), null)); + int i = apiMapper.deleteById(entity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + }else{ + throw new BaseException(ResultCode.API_DELETE_ERROR); + } + + + } + + @Override + public void copyDataApi(Long id, String userName) { + ApiEntity apiEntity = Optional.ofNullable(apiMapper.getById(id)).orElseThrow(() -> new BaseException(ResultCode.DATE_NOT_EXIST)); + + ApiEntity copy = new ApiEntity(); + copy.setApiName(apiEntity.getApiName() + Constants.COPY ); + //原始API+时间戳作为新版本号 + String apiVersion = apiEntity.getApiVersion(); + apiVersion = apiVersion.concat(Constants.LINE).concat(baseMapper.selectSeq()+""); + copy.setApiVersion(apiVersion); + //获取原始用户API地址,组装新的地址 + String apiUrl = apiEntity.getApiUrl(); + String apiUrlAfter = AddressUtil.getApiUrl(apiUrl,apiEntity.getApiVersion()); + String newUrl = AddressUtil.getRequestPath(apiVersion,apiUrlAfter); + copy.setApiUrl(newUrl); + copy.setReqMethod(apiEntity.getReqMethod()); + copy.setResType(apiEntity.getResType()); + copy.setDeny(apiEntity.getDeny()); + copy.setRateLimit(apiEntity.getRateLimit()); + copy.setExecuteConfig(apiEntity.getExecuteConfig()); + copy.setReqParams(apiEntity.getReqParams()); + copy.setResParams(apiEntity.getResParams()); + copy.setStatus(DataApiEnum.API_STATUS.WAIT.getCode()); + copy.setCreateBy(userName); + copy.setSourceId(apiEntity.getSourceId()); + copy.setApiType(apiEntity.getApiType()); + copy.setApiCode(getNewApiCode()); + copy.setRecToken(IdUtils.getNewRecToken()); + int insert = apiMapper.insert(copy); + if (insert != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + /** + * @return + */ + public String getNewApiCode() { + Long seq = baseMapper.selectSeq(); + String seqStr = String.valueOf(seq); + return Constants.PRE_APICODE.concat(seqStr); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void registerDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.WAIT); + this.updateStatus(request, DataApiEnum.API_STATUS.REGISTER); + apiEntity.setStatus(DataApiEnum.API_STATUS.REGISTER.getCode()); + register(apiEntity); + } + + /** + * 注册API + * + * @param apiEntity + */ + private void register(ApiEntity apiEntity) { + if (!mappings.containsKey(apiEntity.getApiId().toString())) { + mappingHandlerMapping.registerMapping(apiEntity); + mappings.put(apiEntity.getApiId().toString(), apiEntity); + } + + } + + /** + * 取消注册API + * + * @param apiEntity + */ + private void unRegister(ApiEntity apiEntity) { + if (mappings.containsKey(apiEntity.getApiId().toString())) { + mappingHandlerMapping.unregisterMapping(apiEntity); + mappings.remove(apiEntity.getApiId().toString()); + } + } + + + @Transactional(rollbackFor = Exception.class) + @Override + public void cancelDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.REGISTER); + this.updateStatus(request, DataApiEnum.API_STATUS.WAIT); + unRegister(apiEntity); + } + + /** + * 下架api + * + * @param request + */ + @Transactional(rollbackFor = Exception.class) + @Override + public void downDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.RELEASE); + // 检查该API是否被使用 + int isUse = apiMapper.check(request.getApiId()); + if (isUse > 0) { + throw new BaseException(ResultCode.API_HAS_ORG); + } + this.updateStatus(request, DataApiEnum.API_STATUS.DOWN); + // 发布的API可以下架 + unRegister(apiEntity); + } + + /** + * 检查数据与状态 + * + * @param apiId 接口Id + * @param status 接口当前应该状态 + */ + public ApiEntity checkApi(Long apiId, DataApiEnum.API_STATUS status) { + ApiEntity apiEntity = apiMapper.getById(apiId); + if (apiEntity == null) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + if (!status.getCode().equals(apiEntity.getStatus())) { + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + return apiEntity; + } + + /** + * 更新API状态 + * + * @param request api基本参数 + * @param status 要更新的状态 + */ + public void updateStatus(ApiStatusRequest request, DataApiEnum.API_STATUS status) { + ApiEntity entity = new ApiEntity(); + entity.setApiId(request.getApiId()); + entity.setStatus(status.getCode()); + entity.setUpdateBy(request.getUserName()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setParams(ParamsUtil.idempotent(request.getRecToken(), null)); + int i = apiMapper.updateById(entity); + if (i != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + + } + + /** + * 发布api接口 + * @param request + */ + @Override + public void releaseDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.REGISTER); + + // 最后一次更新后,近10次的API接口测试数据 + ApiLogEntity logEntity = new ApiLogEntity(); + logEntity.setApiId(request.getApiId()); + logEntity.setCallerDate(apiEntity.getUpdateTime()); + ApiLogTime apiLogTime = apiLogMapper.countBy(logEntity); + + if (apiLogTime == null || apiLogTime.getCount() < num) { + throw new ServiceException("测试小于 10 次,不允许发布"); + } + if (apiLogTime.getAvgTime() > avgTime) { + throw new ServiceException("服务平均耗时大于10秒,不允许发布"); + } + // 发布 + this.updateStatus(request, DataApiEnum.API_STATUS.RELEASE); + + } + + @Override + public List queryByList(ApiEntity entity) { + return apiMapper.selectList(entity); + } + + @Override + public List buildApiTree(ApiEntity entity) { + entity.setStatus(DataApiEnum.API_STATUS.RELEASE.getCode()); + List selectList = apiMapper.selectList(entity); + if (!CollectionUtils.isEmpty(selectList)) { + Map> apiMap = selectList.stream().collect(Collectors.groupingBy(ApiEntity::getApiType)); + List treeSelectList = new ArrayList<>(); + Set keySet = apiMap.keySet(); + for (String s : keySet) { + TreeSelect treeSelect = new TreeSelect(); + String apiTypeName = DataApiEnum.API_TYPE.AGILE.getMsg(); + if (DataApiEnum.API_TYPE.SYSTEM.getCode().equals(s)) { + apiTypeName = DataApiEnum.API_TYPE.SYSTEM.getMsg(); + } + treeSelect.setLabel(apiTypeName); + List apiEntityList = apiMap.get(s); + List apiTreeList = new ArrayList<>(); + apiEntityList.stream().forEach(x -> { + TreeSelect tempTree = new TreeSelect(); + tempTree.setId(x.getApiId()); + tempTree.setLabel(x.getApiName()); + apiTreeList.add(tempTree); + }); + treeSelect.setChildren(apiTreeList); + treeSelectList.add(treeSelect); + } + return treeSelectList; + } + return new ArrayList<>(); + } + + /** + * 查询用户API列表 + * + * @param request + * @return + */ + @Override + public List getUserApiList(ApiUserRequest request) { + return apiMapper.getUserApi(request.getMemberId()); + } + + @Override + public Document wordDataApi(Long id){ + + ApiEntity dataApiEntity = apiMapper.getById(id); + if(dataApiEntity == null){ + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + Document doc = null; + try { + ClassPathResource classPathResource = new ClassPathResource("templates/api_1.0.1.docx"); + InputStream inputStream = classPathResource.getInputStream(); + doc = WordUtil.getInstance().getDocument(inputStream); + + // 提供字段 + String[] fieldNames = new String[]{"apiName", "apiVersion", "reqMethod", "resType", "apiUrl", "remark", "transCode", "secretkey"}; + Object[] fieldValues = new Object[]{dataApiEntity.getApiName(), dataApiEntity.getApiVersion(), dataApiEntity.getReqMethod(), dataApiEntity.getResType(), dataApiEntity.getApiUrl(), dataApiEntity.getRemark(), dataApiEntity.getApiCode() , "secretkey"}; + MailMerge mailMerge = doc.getMailMerge(); + mailMerge.execute(fieldNames, fieldValues); + // 请求参数 TableStart:ReqParamList TableEnd:ReqParamList + DataTable reqParamTable = new DataTable("ReqParamList"); + reqParamTable.getColumns().add("paramName"); + reqParamTable.getColumns().add("paramComment"); + reqParamTable.getColumns().add("paramType"); + reqParamTable.getColumns().add("nullable"); + reqParamTable.getColumns().add("exampleValue"); + List reqParamList = JacksonUtil.string2Obj(dataApiEntity.getReqParams(), new TypeReference>() {}); + //分页参数 + ReqParam pageNum = new ReqParam(); + pageNum.setParamName("pageNum"); + pageNum.setNullable("N"); + pageNum.setParamComment("分页页码"); + pageNum.setWhereType(DataApiEnum.WHERE_TYPE.EQUALS.getType()); + pageNum.setParamType(DataApiEnum.ParamType.INTEGER.getCode()); + pageNum.setExampleValue("默认是1"); + pageNum.setDefaultValue("1"); + + ReqParam pageSize = new ReqParam(); + pageSize.setParamName("pageSize"); + pageSize.setNullable("N"); + pageSize.setParamComment("分页大小"); + pageSize.setWhereType(DataApiEnum.WHERE_TYPE.EQUALS.getType()); + pageSize.setParamType(DataApiEnum.ParamType.INTEGER.getCode()); + pageSize.setExampleValue("默认是10"); + pageSize.setDefaultValue("10"); + + reqParamList = reqParamList == null? new ArrayList<>():reqParamList; + //分页参数 + reqParamList.add(pageNum); + reqParamList.add(pageSize); + + for (ReqParam reqParam : reqParamList) { + DataRow row = reqParamTable.newRow(); + row.set(0, reqParam.getParamName()); + row.set(1, reqParam.getParamComment()); + row.set(2,reqParam.getParamType()); + row.set(3, "1".equals(reqParam.getNullable()) ? "Y" : "N"); + row.set(4, reqParam.getExampleValue()); + reqParamTable.getRows().add(row); + } + + mailMerge.executeWithRegions(reqParamTable); + // 返回字段 TableStart:ResParamList TableEnd:ResParamList + DataTable resParamTable = new DataTable("ResParamList"); + resParamTable.getColumns().add("fieldName"); + resParamTable.getColumns().add("dataType"); + resParamTable.getColumns().add("fieldComment"); + resParamTable.getColumns().add("exampleValue"); + List resParamList = JacksonUtil.string2Obj(dataApiEntity.getResParams(), new TypeReference>() {}); + resParamList = resParamList ==null ?new ArrayList<>():resParamList; + for (ResParam resParam : resParamList) { + DataRow row = resParamTable.newRow(); + row.set(0, resParam.getFieldName()); + row.set(1, resParam.getDataType()); + row.set(2, resParam.getFieldComment()); + row.set(3, resParam.getExampleValue()); + resParamTable.getRows().add(row); + } + + mailMerge.executeWithRegions(resParamTable); + // 返回示例 reqExample resExample + ObjectNode objectNode = objectMapper.createObjectNode(); + for (ResParam param : resParamList) { + objectNode.put(param.getFieldName(), param.getExampleValue()); + } + + this.buildReturn(objectNode,mailMerge,dataApiEntity.getApiCode()); + WordUtil.getInstance().insertWatermarkText(doc, "jiuyv.sptcc.agile"); + return doc; + }catch (Exception e){ + LOGGER.error("生成接口文档异常",e); + } + return doc; + } + + void buildReturn(ObjectNode objectNode,MailMerge mailMerge,String transCode) throws Exception { + + LinkedList objectNodes = new LinkedList<>(); + objectNodes.add(objectNode); + PageResult pageResult = new PageResult<>(); + pageResult.setPageNum(1); + pageResult.setRows(objectNodes); + pageResult.setPageSize(20); + pageResult.setTotal(1L); + + RespVo respVo = new RespVo(); + respVo.setRespCode(ResultCode.SUCCESS.getCode()); + respVo.setRespDesc(ResultCode.SUCCESS.getCode()); + respVo.setRespSubCode(""); + respVo.setRespSubDesc(""); + respVo.setSeriNo(IdUtils.fastSimpleUUID()); + respVo.setOrgCode("JGH12222"); + respVo.setTimestamp(new Date()); + respVo.setTransCode(transCode); + respVo.setSign(Sm3Util.encrypt(respVo.toString())); + respVo.setBody(Sm4Util.encryptEcb("886f918cb40cb5a5014402a6c00cda74",JacksonUtil.obj2String(pageResult))); + + mailMerge.execute(new String[]{"reqExample", "resExample"}, new Object[]{ + objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(respVo), + objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(pageResult)}); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiLogServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiLogServiceImpl.java new file mode 100644 index 00000000..1e2bec03 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiLogServiceImpl.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiLogMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.service.api.ApiLogService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class ApiLogServiceImpl implements ApiLogService { + + @Resource + private ApiLogMapper apiLogMapper; + + @Resource + private BaseMapper baseMapper; + + @Override + public ApiLogEntity saveApiLog(ApiLogEntity Entity) { + Entity.setCallerDate(baseMapper.selectSysCurrentTime().getDate()); + apiLogMapper.insert(Entity); + return Entity; + } + + @Override + public ApiLogEntity getApiLogById(Long id) { + return apiLogMapper.getById(id); + } + + @Override + public List queryByList(ApiLogEntity entity) { + return apiLogMapper.selectList(entity); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiMappingEngine.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiMappingEngine.java new file mode 100644 index 00000000..c4ddf022 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiMappingEngine.java @@ -0,0 +1,105 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; +import com.jiuyv.sptcc.agile.dataservice.database.DataSourceFactory; +import com.jiuyv.sptcc.agile.dataservice.database.DbQuery; +import com.jiuyv.sptcc.agile.dataservice.database.DbQueryProperty; +import com.jiuyv.sptcc.agile.dataservice.dto.request.DbSchema; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.factory.AbstractFactory; +import com.jiuyv.sptcc.agile.dataservice.factory.FactoryProducer; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; +import com.jiuyv.sptcc.agile.dataservice.service.api.MetadataSourceService; +import com.jiuyv.sptcc.agile.dataservice.utils.PageUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.SqlBuilderUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ThrowableUtil; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.List; +import java.util.Map; +import java.util.Optional; + +@Service +public class ApiMappingEngine { + + private static final Logger logger = LoggerFactory.getLogger(ApiMappingEngine.class); + + @Autowired + private DataSourceFactory dataSourceFactory; + + @Autowired + private MetadataSourceService metadataSourceService; + + public PageResult> execute(ApiEntity dataApi, Map params) throws JsonProcessingException { + ObjectMapper objectMapper = new ObjectMapper(); + ExecuteConfig executeConfig = objectMapper.readValue(dataApi.getExecuteConfig(), ExecuteConfig.class); + MetadataSourceEntity dataSource = Optional.ofNullable(metadataSourceService.getMetadataSourceById(executeConfig.getSourceId())).orElseThrow(() -> new RuntimeException("API调用查询数据源出错")); + DbSchema dbSchema = objectMapper.readValue(dataSource.getDbSchema(), DbSchema.class); + DbQueryProperty dbQueryProperty = new DbQueryProperty(dataSource.getDbType(), dbSchema.getHost(), + dbSchema.getUsername(), dbSchema.getPassword(), dbSchema.getPort(), dbSchema.getDbName(), dbSchema.getSid()); + DbQuery dbQuery = Optional.ofNullable(dataSourceFactory.createDbQuery(dbQueryProperty)).orElseThrow(() -> new RuntimeException("创建数据查询接口出错")); + // 参数 + Integer pageNum = Integer.parseInt(String.valueOf(params.getOrDefault("pageNum", 1))); + Integer pageSize = Integer.parseInt(String.valueOf(params.getOrDefault("pageSize", 10))); + PageUtil pageUtil = new PageUtil(pageNum, pageSize); + Integer offset = pageUtil.getOffset(); + SqlBuilderUtil.SqlFilterResult sqlFilterResult; + try { + sqlFilterResult = SqlBuilderUtil.getInstance().applyFilters(executeConfig.getSqlText(), params); + } catch (Exception e) { + logger.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new RuntimeException("API调用动态构造SQL语句出错"); + } + Map acceptedFilters = sqlFilterResult.getAcceptedFilters(); + + PageResult> pageResult; + try { + logger.info("执行的sql {},offset {},pageSize {} ", sqlFilterResult.getSql(), offset, pageSize); + pageResult = dbQuery.queryByPage(sqlFilterResult.getSql(), acceptedFilters, offset, pageSize); + } catch (Exception e) { + logger.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new RuntimeException("API调用查询结果集出错"); + } + // 数据脱敏 + TypeReference> typeReference = new TypeReference>() { + }; + try { + List resParams = objectMapper.readValue(dataApi.getResParams(), typeReference); + if (!CollectionUtils.isEmpty(resParams)) { + // 并行流处理脱敏 + pageResult.getRows().parallelStream().forEach(m -> { + resParams.stream().forEach(r -> { + if (m.containsKey(r.getFieldName())) { + Object obj = m.get(r.getFieldName()); + if (null != obj) { + if (StringUtils.isNotEmpty(r.getCipherType()) && StringUtils.isNotEmpty(r.getCryptType())) { + AbstractFactory factory = FactoryProducer.getFactory(r.getCipherType()); + Crypto crypto = factory.getCrypto(r.getCryptType()); + String encrypt = crypto.encrypt(String.valueOf(obj)); + m.put(r.getFieldName(), encrypt); + } + } + } + }); + }); + } + } catch (Exception e) { + logger.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new RuntimeException("API调用数据脱敏出错"); + } + pageResult.setPageNum(pageNum); + pageResult.setPageSize(pageSize); + return pageResult; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/MetadataSourceServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/MetadataSourceServiceImpl.java new file mode 100644 index 00000000..e2318d35 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/MetadataSourceServiceImpl.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.MetadataSourceMapper; +import com.jiuyv.sptcc.agile.dataservice.service.api.MetadataSourceService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + *

+ * 数据源信息表 服务实现类 + *

+ */ +@Service +public class MetadataSourceServiceImpl implements MetadataSourceService { + + @Autowired + private MetadataSourceMapper metadataSourceMapper; + + @Override + public MetadataSourceEntity getMetadataSourceById(Long id) { + MetadataSourceEntity metadataSourceEntity = metadataSourceMapper.getById(id); + return metadataSourceEntity; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/impl/SyncRecordServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/impl/SyncRecordServiceImpl.java new file mode 100644 index 00000000..b2c64142 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/impl/SyncRecordServiceImpl.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.service.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.SyncRecordMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataStatusEnum; +import com.jiuyv.sptcc.agile.dataservice.service.ISyncRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.Date; +import java.util.List; + +/** + * 客流表文件Service业务层处理 + * + * @author shu_kai + * @date 2023-09-26 + */ +@Service +public class SyncRecordServiceImpl implements ISyncRecordService { + @Autowired + private SyncRecordMapper syncRecordMapper; + + /** + * 查询客流表文件列表 + * @return 客流表文件 + */ + @Override + public SyncRecord selectSyncRecordList(String fileType, Date txnDate) { + SyncRecord syncRecord = new SyncRecord(); + syncRecord.setTableName(fileType); + syncRecord.setTxnData(txnDate); + syncRecord.setDataStatus(DataStatusEnum.SUCCESS.getCode()); + List syncRecords = syncRecordMapper.selectSyncRecordList(syncRecord); + if(CollectionUtils.isEmpty(syncRecords)){ + return null; + } + return syncRecords.get(0); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgConfigService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgConfigService.java new file mode 100644 index 00000000..1f578e99 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgConfigService.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; + +import java.util.Date; +import java.util.List; + +/** + * 机构配置信息 + * + * @author yulei + **/ +public interface IOrgConfigService { + + List queryList(OrgConfig config); + + OrgConfig queryDetail(Long configId); + + void addOrgConfig(OrgConfig config); + + void updateOrgConfig(OrgConfig config); + + void deleteById(Long configId); + + /** + * 检测数据日期是否在可允许范围 + * @param metricDate + * @return + */ + boolean checkDataRange(Date metricDate,String orgNo); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgInfoService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgInfoService.java new file mode 100644 index 00000000..45f0fec3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgInfoService.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgDelReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoAddReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoEditReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoStatusReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; + +import java.util.Date; +import java.util.List; + +/** + * 【机构管理信息】Service接口 + * + * @author yulei + * @date 2023-06-16 + */ +public interface IOrgInfoService { + /** + * 查询【机构管理信息】 + * + * @param orgNo 【机构管理信息】主键 + * @return 【机构管理信息】 + */ + OrgInfoEntity selectOrgInfoByOrgNo(String orgNo); + + /** + * 查询【机构管理信息】列表 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 【机构管理信息】集合 + */ + List selectOrgInfoList(OrgInfoEntity orgInfoEntity); + + + /** + * 授权 + * + * @param orgNo + * @param apiIds + */ + void orgApiAuth(OrgApiAuthRequest request); + + /** + * 列表 + * + * @param orgNo + * @return + */ + Long[] orgApiAuthList(String orgNo); + + /** + * 新增机构 + * + * @param addReq + */ + void add(OrgInfoAddReq addReq); + + /** + * 更新结构信息 + * + * @param request + */ + void update(OrgInfoEditReq request); + + /** + * 删除机构 + * + * @param request + */ + void delete(OrgDelReq request); + + /** + * 启动机构 + * + * @param request + */ + void run(OrgInfoStatusReq request); + + /** + * 停止机构 + * + * @param request + */ + void stop(OrgInfoStatusReq request); + + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgStatisticsService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgStatisticsService.java new file mode 100644 index 00000000..2f061a9f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgStatisticsService.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; + +import java.util.List; + +/** + * 接口调用次数统计Service接口 + * + * @author yulei + * @date 2023-06-16 + */ +public interface IOrgStatisticsService { + + /** + * 查询接口调用次数统计列表 + * + * @param orgStatistics 接口调用次数统计 + * @return 接口调用次数统计集合 + */ + List selectList(OrgStatisticsEntity orgStatistics); + + /** + * 新增接口调用次数统计 + * + * @param orgStatistics 接口调用次数统计 + * @return 结果 + */ + int insertOrgStatistics(OrgStatisticsEntity orgStatistics); + + /** + * 新增接口调用次数统计 + * @param orgNo + * @param apiCode + * @param isuceess + */ + void insertOrgStatistics(String orgNo, String apiCode,Boolean isuceess); + + /** + * 获取会员的接口统计情况 + * + * @param memberId + * @return + */ + List getUserInfo(String memberId); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgApiAuthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgApiAuthService.java new file mode 100644 index 00000000..ef8507f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgApiAuthService.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; + +import java.util.List; + +/** + * 【机构接口权限表】(OrgApiAuth)表服务接口 + * + * @author makejava + * @since 2023-07-13 16:03:56 + */ +public interface OrgApiAuthService { + + + /** + * 分页查询 + * + * @param orgApiAuth 筛选条件 + * @param orgApiAuth 分页对象 + * @return 查询结果 + */ + List queryByPage(OrgApiAuth orgApiAuth); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgAuthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgAuthService.java new file mode 100644 index 00000000..1c7edb82 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgAuthService.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgAuthEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; + +import java.util.List; + +/** + * 机构权限接口 + * + * @ClassName : OrgAuthService + * @Author : sky + * @Date: 2023-07-13 13:49 + */ +public interface OrgAuthService { + + + /** + * 获取机构权限列表 + * @param req + * @return + */ + OrgAuthResp getOrgAuth(OrgAuthReq req); + + List selectAllApi(OrgAuthReq req); + + /** + * 机构权限校验 + * @param request + */ + OrgKeyResponse check(OrgAuthRequest request); + + /** + * 活接密钥 + * @param orgCode + * @return + */ + OrgKeyResponse getKey(String orgCode); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgApiAuthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgApiAuthServiceImpl.java new file mode 100644 index 00000000..ca70660a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgApiAuthServiceImpl.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.OrgApiAuthDao; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; +import com.jiuyv.sptcc.agile.dataservice.service.org.OrgApiAuthService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 【机构接口权限表】(OrgApiAuth)表服务实现类 + * + * @author makejava + * @since 2023-07-13 16:03:56 + */ +@Service("orgApiAuthService") +public class OrgApiAuthServiceImpl implements OrgApiAuthService { + @Resource + private OrgApiAuthDao orgApiAuthDao; + + /** + * 分页查询 + * + * @param orgApiAuth 筛选条件 + * @return 查询结果 + */ + @Override + public List queryByPage(OrgApiAuth orgApiAuth) { + return orgApiAuthDao.selectList(orgApiAuth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java new file mode 100644 index 00000000..36378e17 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java @@ -0,0 +1,226 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.OrgApiAuthDao; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgAuthEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.OrgAuthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.IpWhiteCheckUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.cache.annotation.Cacheable; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; + +/** + * @ClassName : OrgAuthServiceImpl + * @Description : + * @Author : sky + * @Date: 2023-07-13 16:39 + */ +@Service +public class OrgAuthServiceImpl implements OrgAuthService { + + private static final Logger LOGGER = LoggerFactory.getLogger(OrgAuthServiceImpl.class); + + @Resource + private OrgInfoMapper orgInfoDao; + @Resource + private OrgApiAuthDao orgApiAuthDao; + @Resource + private ApiMapper apiMapper; + @Resource + private OrgConfigMapper configMapper; + + + /** + * 获取机构权限列表 + * + * @param req + * @return + */ + @Override + public OrgAuthResp getOrgAuth(OrgAuthReq req) { + + OrgInfoEntity orgInfo = orgInfoDao.selectOrgInfoByOrgNo(req.getOrgCode()); + if (orgInfo == null) { + throw new BaseException(ResultCode.ORG_NOT_FOUND); + } + if (!OrgCrypto.OrgInfoStatusCrypto.UP.getKey().equals(orgInfo.getStatus())) { + throw new BaseException(ResultCode.API_IS_DOWN); + } + + OrgAuthResp orgAuthResp = new OrgAuthResp(); + orgAuthResp.setOrgCode(orgInfo.getOrgNo()); + orgAuthResp.setSubOrgCode(req.getSubOrgCode()); + orgAuthResp.setOrgName(orgInfo.getOrgName()); + orgAuthResp.setOrgType(orgInfo.getOrgType()); + + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); + + orgAuthResp.setSalt(deptSalt); + orgAuthResp.setEncrypt(deptEncrypt); + orgAuthResp.setIp(orgInfo.getIp()); + orgAuthResp.setDataBegin(orgInfo.getDataBegin()); + orgAuthResp.setDataEnd(orgInfo.getDataEnd()); + + List orgApiEntities = apiMapper.selectOrgApi(req.getOrgCode()); + if (CollectionUtils.isEmpty(orgApiEntities)) { + throw new BaseException(ResultCode.API_NOT_RIGHT); + } + List apis = new ArrayList<>(); + for (OrgApiEntity o : orgApiEntities) { + // 只有已发布的才有效 + if (ApiCrypto.ApiState.RELEASE.getCode().equals(o.getStatus())) { + OrgAuthResp.Api api = toApi(o); + apis.add(api); + + } + } + orgAuthResp.setApiList(apis); + return orgAuthResp; + } + + @Cacheable(value = "SECOND_CACHE", keyGenerator = "customKeyGenerator") + @Override + public List selectAllApi(OrgAuthReq req) { + return orgApiAuthDao.selectAllApi(req); + } + + @Override + public OrgKeyResponse check(OrgAuthRequest request) { + String orgCode = request.getOrgCode(); + LOGGER.info("机构校验 {}", orgCode); + OrgInfoEntity orgInfo = orgInfoDao.selectOrgInfoByOrgNo(orgCode); + if (orgInfo == null) { + throw new BaseException(ResultCode.ORG_NOT_FOUND); + } + if (!OrgCrypto.OrgInfoStatusCrypto.UP.getKey().equals(orgInfo.getStatus())) { + throw new BaseException(ResultCode.API_IS_DOWN); + } + OrgKeyResponse response = new OrgKeyResponse(); + + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); + response.setSalt(deptSalt); + response.setEncrypt(deptEncrypt); + // 该机构的授权接口 + List orgApiEntities = apiMapper.selectOrgApi(orgCode); + if (CollectionUtils.isEmpty(orgApiEntities)) { + throw new BaseException(ResultCode.API_NOT_RIGHT); + } + // 是否包含交易码 + String apiCode = request.getApiCode(); + LOGGER.info("交易码校验 {}", apiCode); + List collect = orgApiEntities.stream().filter(x -> Objects.equals(apiCode, x.getApiCode())).collect(Collectors.toList()); + if (CollectionUtils.isEmpty(collect)) { + throw new BaseException(ResultCode.API_NOT_RIGHT); + } + OrgApiEntity orgApiEntity = collect.get(0); + + OrgAuthResp.Api api= toApi(orgApiEntity); + response.setApi(api); + + /* + * "1.168.1.1" //设置单个IP的白名单 // + * "192.168.3.17-192.168.3.38" //设置一个IP范围 + * "192.168.4.0/24"; //設置一个网段 + * 三种格式允许并行 + */ + LOGGER.info("白名单校验 {},white list {}", request.getIp(), orgInfo.getIp()); + if (!IpWhiteCheckUtil.isPermited(request.getIp(), orgInfo.getIp())) { + throw new BaseException(ResultCode.ORG_IP_WHILE_LIST); + } + // 数据范围权限 + checkDataTime(request); + return response; + } + + private OrgAuthResp.Api toApi(OrgApiEntity orgApiEntity) { + OrgAuthResp.Api api = new OrgAuthResp.Api(); + api.setApiId(orgApiEntity.getApiId()); + api.setStatus(orgApiEntity.getStatus()); + api.setRemark(orgApiEntity.getRemark()); + api.setApiName(orgApiEntity.getApiName()); + api.setApiVersion(orgApiEntity.getApiVersion()); + api.setApiUrl(orgApiEntity.getApiUrl()); + api.setReqMethod(orgApiEntity.getReqMethod()); + api.setResType(orgApiEntity.getResType()); + api.setExecuteConfig(orgApiEntity.getExecuteConfig()); + api.setReqParams(orgApiEntity.getReqParams()); + api.setResParams(orgApiEntity.getResParams()); + api.setApiCode(orgApiEntity.getApiCode()); + api.setApiType(orgApiEntity.getApiType()); + return api; + } + + + /** + * 该接口很具有范围特性,接口必须是查询类接口,切必须带有查询时间限制 + * + * @param request + */ + private void checkDataTime(OrgAuthRequest request) { + Date dataDate = request.getDataDate(); + if (dataDate == null) { + return; + } + OrgConfig config = new OrgConfig(); + config.setOrgNo(request.getOrgCode()); + List list = configMapper.getList(config); + for (OrgConfig orgConfig : list) { + String configKey = orgConfig.getConfigKey(); + String configValue = orgConfig.getConfigValue(); + if (configKey.equals(ConfigCrypot.OrgCfnKeyEnum.DATA_BEGIN.getCode())) { + Date dataBegin = DateUtils.dateTime(DateUtils.YYYY_MM_DD, configValue); + if (dataDate.before(dataBegin)) { + throw new BaseException(ResultCode.DATA_TIME_NO_RIGHT); + } + } + if (configKey.equals(ConfigCrypot.OrgCfnKeyEnum.DATA_END.getCode())) { + Date dataEnd = DateUtils.dateTime(DateUtils.YYYY_MM_DD, configValue); + if (dataDate.after(dataEnd)) { + throw new BaseException(ResultCode.DATA_TIME_NO_RIGHT); + } + } + } + + } + + @Cacheable(value = "SECOND_CACHE", keyGenerator = "customKeyGenerator") + @Override + public OrgKeyResponse getKey(String orgCode) { + OrgInfoEntity orgInfo = orgInfoDao.selectOrgInfoByOrgNo(orgCode); + if (orgInfo == null) { + throw new BaseException(ResultCode.ORG_NOT_FOUND); + } + OrgKeyResponse response = new OrgKeyResponse(); + response.setSalt(orgInfo.getSalt()); + response.setEncrypt(orgInfo.getEncrypt()); + return response; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgConfigServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgConfigServiceImpl.java new file mode 100644 index 00000000..b0250db1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgConfigServiceImpl.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * 机构配置信息 + * + * @author yulei + **/ +@Service +public class OrgConfigServiceImpl implements IOrgConfigService { + + @Resource + private OrgConfigMapper orgConfigMapper; + + @Override + public List queryList(OrgConfig config) { + return orgConfigMapper.getList(config); + } + + @Override + public OrgConfig queryDetail(Long configId) { + return orgConfigMapper.getById(configId); + } + + @Override + public void addOrgConfig(OrgConfig config) { + orgConfigMapper.insert(config); + } + + @Override + public void updateOrgConfig(OrgConfig config) { + OrgConfig byId = orgConfigMapper.getById(config.getConfigId()); + if (byId == null) { + throw new BaseException("配置信息不存在"); + } + if (!byId.getOrgNo().equals(config.getOrgNo())) { + throw new BaseException("不允许切换机构"); + } + int row = orgConfigMapper.updateById(config); + if (row != 1) { + throw new BaseException(ResultCode.FAILED); + } + } + + @Override + public void deleteById(Long configId) { + orgConfigMapper.deleteById(configId); + } + + @Override + public boolean checkDataRange(Date metricDate,String orgNo) { + if(metricDate == null){ + return true; + } + OrgConfig config = new OrgConfig(); + config.setOrgNo(orgNo); + List list = orgConfigMapper.getList(config); + String dataBegin = null; + String dateEnd = null; + for (OrgConfig orgConfig : list) { + if(ConfigCrypot.OrgCfnKeyEnum.DATA_BEGIN.getCode().equals(orgConfig.getConfigKey())){ + dataBegin = orgConfig.getConfigValue(); + } + if(ConfigCrypot.OrgCfnKeyEnum.DATA_END.getCode().equals(orgConfig.getConfigKey())){ + dateEnd = orgConfig.getConfigValue(); + } + } + if(null != dataBegin){ + Date beginDate = DateUtils.parseDate(dataBegin); + if(metricDate.before(beginDate)){ + return false; + } + } + if(null != dateEnd){ + Date endDate = DateUtils.parseDate(dateEnd); + if(metricDate.after(endDate)){ + return false; + } + } + return true; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java new file mode 100644 index 00000000..162af5bd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java @@ -0,0 +1,346 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.core.BaseTime; +import com.jiuyv.sptcc.agile.dataservice.common.enums.DeleteEnum; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.OrgApiAuthDao; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.*; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgDelReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoAddReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoEditReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoStatusReq; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgInfoService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 【机构管理信息】Service业务层处理 + * + * @author shu_k + * @date 2023-06-16 + */ +@Service +public class OrgInfoServiceImpl implements IOrgInfoService { + + @Resource + private OrgInfoMapper orgInfoMapper; + + @Resource + private OrgApiAuthDao orgApiAuthMapper; + + @Resource + private OrgConfigMapper configMapper; + @Resource + private ApiMapper apiMapper; + + @Resource + private BaseMapper baseMapper; + + /** + * 查询【机构管理信息】 + * + * @param orgNo 【机构管理信息】主键 + * @return 【机构管理信息】 + */ + @Override + public OrgInfoEntity selectOrgInfoByOrgNo(String orgNo) { + OrgInfoEntity orgInfo = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); + orgInfo.setSalt(deptSalt); + orgInfo.setEncrypt(deptEncrypt); + return orgInfo; + } + + /** + * 查询【机构管理信息】列表 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 【机构管理信息】 + */ + @Override + public List selectOrgInfoList(OrgInfoEntity orgInfoEntity) { + return orgInfoMapper.selectOrgInfoList(orgInfoEntity); + } + + /** + * 机构授权 + * @param request + */ + @Transactional(rollbackFor = Exception.class) + @Override + public void orgApiAuth(OrgApiAuthRequest request) { + String orgNo = request.getOrgNo(); + Long[] apiIds = request.getApiIds(); + List apis = null; + if (apiIds.length != 0) { + //是否有效id + apis = apiMapper.getByIds(apiIds); + if (apis.size() != apiIds.length) { + throw new BaseException(ResultCode.DATE_NOT_EXIST.getCode(), "接口数据不匹配"); + } + } + + // 删除原绑定信息 + orgApiAuthMapper.deleteByOrgNo(orgNo); + for (Long apiId : apiIds) { + OrgApiAuth vo = new OrgApiAuth(); + vo.setOrgNo(orgNo); + vo.setApiId(apiId); + orgApiAuthMapper.insert(vo); + } + + //删除下载接口权限 + OrgConfig config = new OrgConfig(); + config.setOrgNo(orgNo); + config.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); + configMapper.deleteByEntity(config); + //如果该接口是下载接口,交易码是download,默认拥有全部下载权限 + if (apis == null) { + return ; + } + List collect = apis.stream().map(ApiEntity::getApiCode).collect(Collectors.toList()); + OrgInfoEntity orgInfoEntity = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + if (collect.contains(ApicodeEnum.DWONLOAD.getCode())) { + FileTypeEnum[] values = FileTypeEnum.values(); + for (FileTypeEnum value : values) { + OrgConfig vo = new OrgConfig(); + vo.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); + vo.setConfigValue(value.getCode()); + vo.setOrgNo(orgNo); + vo.setOrgName(orgInfoEntity.getOrgName()); + vo.setStatus(ConfigCrypot.ConfigStatus.NORMAL.getCode()); + vo.setConfigDesc(value.getMsg()); + vo.setDelFlag(DeleteEnum.NO.getCode()); + vo.setMemberId(orgInfoEntity.getMemberId()); + vo.setRecToken(IdUtils.getNewRecToken()); + vo.setVersionNum(Constants.VERSION); + vo.setCreateBy(request.getUserId().toString()); + vo.setCreateByName(request.getUserName()); + configMapper.insert(vo); + } + } + } + + @Override + public Long[] orgApiAuthList(String orgNo) { + OrgApiAuth authEntity = new OrgApiAuth(); + authEntity.setOrgNo(orgNo); + List authEntityList = orgApiAuthMapper.selectList(authEntity); + return authEntityList.stream().map(OrgApiAuth::getApiId).toArray(Long[]::new); + } + + /** + * 新增机构 + * + * @param addReq + */ + @Override + public void add(OrgInfoAddReq addReq) { + Long aLong = baseMapper.selectSeq(); + String orgNo = IdUtils.buildSeq(aLong, Constants.ORG_NO_PREFIX, Constants.ORG_NO_LENGTH); + String memberId = addReq.getMemberId(); + if(memberId != null){ + OrgInfoEntity entity = orgInfoMapper.getByMemberId(addReq.getMemberId()); + if (entity != null) { + throw new BaseException(ResultCode.PORTAL_USER_HAS_BINGED); + } + } + + OrgInfoEntity infoEntity = toEntity(addReq); + infoEntity.setOrgNo(orgNo); + infoEntity.setStatus(OrgCrypto.OrgStatus.STOP.getCode()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setCreateByName(addReq.getUserName()); + infoEntity.setCreateByName(addReq.getUserName()); + orgInfoMapper.insertOrgInfo(infoEntity); + } + + private OrgInfoEntity toEntity(OrgInfoBase base) { + OrgInfoEntity entity = new OrgInfoEntity(); + entity.setOrgName(base.getOrgName()); + entity.setOrgType(base.getOrgType()); + entity.setOrgDesc(base.getOrgDesc()); + //密钥数据库加密存储 + String encryptSalt = Sm4Util.encryptEcb(base.getSalt()); + String encryptEcpt = Sm4Util.encryptEcb(base.getEncrypt()); + entity.setSalt(encryptSalt); + entity.setEncrypt(encryptEcpt); + entity.setStartTime(base.getStartTime()); + entity.setEndTime(base.getEndTime()); + entity.setStatus(base.getStatus()); + entity.setCreateByName(base.getUserName()); + entity.setUpdateByName(base.getUserName()); + entity.setIp(base.getIp()); + entity.setContractTel(Sm4Util.encryptEcb(base.getContractTel())); + entity.setDataBegin(base.getStartTime()); + entity.setDataEnd(base.getEndTime()); + entity.setMemberId(base.getMemberId()); + entity.setCreateBy(String.valueOf(base.getUserId())); + entity.setRemark(base.getRemark()); + return entity; + } + + /** + * 更新结构信息 + * + * @param request + */ + @Override + public void update(OrgInfoEditReq request) { + + OrgInfoEntity validate = validate(request.getOrgNo(), OrgCrypto.OrgStatus.STOP); + + String memberId = request.getMemberId(); + if(memberId != null && !memberId.equals(validate.getMemberId())){ + OrgInfoEntity entity = orgInfoMapper.getByMemberId(memberId); + if (entity != null) { + throw new BaseException(ResultCode.PORTAL_USER_HAS_BINGED); + } + } + + OrgInfoEntity infoEntity = toEntity(request); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.updateOrgInfo(infoEntity); + if (i != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + + } + + /** + * 删除机构 + * + * @param request + */ + @Override + public void delete(OrgDelReq request) { + + validate(request.getOrgNo(), OrgCrypto.OrgStatus.NORMAL, false); + + OrgInfoEntity infoEntity = new OrgInfoEntity(); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateBy("" + request.getUserId()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.delete(infoEntity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + //删除机构配置 + configMapper.deleteByOrgNo(request.getOrgNo()); + //删除机构绑定接口 + orgApiAuthMapper.deleteByOrgNo(request.getOrgNo()); + + } + + /** + * 启动机构 + * + * @param request + */ + @Override + public void run(OrgInfoStatusReq request) { + OrgInfoEntity vo = validate(request.getOrgNo(), OrgCrypto.OrgStatus.NORMAL, false); + + Date endTime = vo.getEndTime(); + BaseTime baseTime = baseMapper.selectSysCurrentTime(); + Date now = baseTime.getDate(); + //已经在到期时间之后 + if (now.after(endTime)) { + throw new BaseException(ResultCode.ORG_DATE_TIME_ERROR); + } + OrgInfoEntity infoEntity = new OrgInfoEntity(); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setStatus(OrgCrypto.OrgStatus.NORMAL.getCode()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateBy("" + request.getUserId()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.updateOrgInfo(infoEntity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + /** + * 停止机构 + * + * @param request + */ + @Override + public void stop(OrgInfoStatusReq request) { + validate(request.getOrgNo(), OrgCrypto.OrgStatus.NORMAL); + OrgInfoEntity infoEntity = new OrgInfoEntity(); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setStatus(OrgCrypto.OrgStatus.STOP.getCode()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateBy("" + request.getUserId()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.updateOrgInfo(infoEntity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + /** + * @param orgNo 主键 + * @param status 不允许操作的状态 + */ + private OrgInfoEntity validate(String orgNo, OrgCrypto.OrgStatus status) { + return validate(orgNo, status, true); + } + + /** + * @param orgNo 主键 + * @param status 不允许操作的状态 + * @param isWish 是否希望的状态 + */ + private OrgInfoEntity validate(String orgNo, OrgCrypto.OrgStatus status, boolean isWish) { + OrgInfoEntity vo = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + if (vo == null) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + if (isWish) { + //期望的状态 + if (!status.getCode().equals(vo.getStatus())) { + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + } else { + //不期望的状态 + if (status.getCode().equals(vo.getStatus())) { + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + } + return vo; + } + + + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgStatisticsServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgStatisticsServiceImpl.java new file mode 100644 index 00000000..c10ea939 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgStatisticsServiceImpl.java @@ -0,0 +1,157 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.enums.DeleteEnum; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgStatisticsMapper; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgStatisticsService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.sun.org.apache.xpath.internal.operations.Bool; +import org.mybatis.spring.MyBatisSystemException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +/** + * 接口调用次数统计Service业务层处理 + * + * @author yulei + * @date 2023-06-16 + */ +@Service +public class OrgStatisticsServiceImpl implements IOrgStatisticsService { + + private static final Logger LOGGER = LoggerFactory.getLogger(OrgStatisticsServiceImpl.class); + @Resource + private OrgStatisticsMapper orgStatisticsMapper; + + @Resource + private OrgInfoMapper orgInfoMapper; + + @Resource + private ApiMapper apiMapper; + + @Resource + BaseMapper baseMapper; + /** + * 查询接口调用次数统计列表 + * + * @param orgStatistics 接口调用次数统计 + * @return 接口调用次数统计 + */ + @Override + public List selectList(OrgStatisticsEntity orgStatistics) { + return orgStatisticsMapper.selectOrgStatisticsList(orgStatistics); + } + + /** + * 新增接口调用次数统计 + * + * @param orgStatistics 接口调用次数统计 + * @return 结果 + */ + @Override + public int insertOrgStatistics(OrgStatisticsEntity orgStatistics) { + return orgStatisticsMapper.insertOrgStatistics(orgStatistics); + } + + @Override + public List getUserInfo(String memberId) { + + OrgInfoEntity orgInfoEntity = orgInfoMapper.getByMemberId(memberId); + if (orgInfoEntity == null) { + return new ArrayList<>(); + } + OrgStatisticsEntity orgStatistics = new OrgStatisticsEntity(); + orgStatistics.setOrgNo(orgInfoEntity.getOrgNo()); + return orgStatisticsMapper.selectOrgStatisticsList(orgStatistics); + } + + @Override + public void insertOrgStatistics(String orgNo, String apiCode, Boolean isSuccess) { + + if(orgNo ==null || apiCode == null ||isSuccess ==null){ + LOGGER.info("Statistics api ,orgNo {},apiCode {},isSuccess{}",orgNo,apiCode,isSuccess); + return; + } + OrgInfoEntity orgInfoEntity = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + ApiEntity byApiCode = apiMapper.getByApiCode(apiCode); + if(orgInfoEntity ==null || byApiCode ==null){ + LOGGER.info("不合法的请求"); + return; + } + OrgStatisticsEntity vo = new OrgStatisticsEntity(); + vo.setApiId(byApiCode.getApiId()); + vo.setOrgNo(orgNo); + OrgStatisticsEntity orgStatistics = orgStatisticsMapper.selectByApi(vo); + if(orgStatistics ==null){ + //新增 + try { + doSave(orgNo, isSuccess, orgInfoEntity, byApiCode); + }catch (MyBatisSystemException e){ + //并发执行了,主键冲突 + orgStatistics = orgStatisticsMapper.selectByApi(vo); + doIncrease(isSuccess, orgStatistics); + } + + }else{ + //更新 + doIncrease(isSuccess, orgStatistics); + } + } + + /** + * 统计次数 + * @param isSuccess 是否成功 + * @param orgStatistics 统计信息 + */ + private void doIncrease(Boolean isSuccess, OrgStatisticsEntity orgStatistics) { + if(orgStatistics == null){ + LOGGER.warn(" unknown exception: orgStatistics is null"); + return ; + } + orgStatistics.setSuccessTotal(Boolean.TRUE.equals(isSuccess)?1:0); + orgStatistics.setFailTotal(Boolean.TRUE.equals(isSuccess)?0:1); + orgStatistics.setUpdateTime(baseMapper.selectSysCurrentTime().getDate()); + orgStatisticsMapper.increase(orgStatistics); + } + + /** + * 初始化数据 + * @param orgNo 机构 + * @param isSuccess 是否成功 + * @param orgInfoEntity 机构信息 + * @param byApiCode 编码 + */ + private void doSave(String orgNo, Boolean isSuccess, OrgInfoEntity orgInfoEntity, ApiEntity byApiCode) { + OrgStatisticsEntity orgStatisticsEntity = new OrgStatisticsEntity(); + orgStatisticsEntity.setOrgNo(orgNo); + orgStatisticsEntity.setOrgName(orgInfoEntity.getOrgName()); + orgStatisticsEntity.setApiId(byApiCode.getApiId()); + orgStatisticsEntity.setSuccessTotal(Boolean.TRUE.equals(isSuccess)?1:0); + orgStatisticsEntity.setFailTotal(Boolean.TRUE.equals(isSuccess)?0:1); + orgStatisticsEntity.setApiName(byApiCode.getApiName()); + orgStatisticsEntity.setVersionNum(0); + orgStatisticsEntity.setRecToken(IdUtils.getNewRecToken()); + orgStatisticsEntity.setCreateByName(Constants.SYSTEM_NAME); + orgStatisticsEntity.setUpdateByName(Constants.SYSTEM_NAME); + orgStatisticsEntity.setCreateBy(Constants.SYSTEM_NAME); + orgStatisticsEntity.setCreateTime(baseMapper.selectSysCurrentTime().getDate()); + orgStatisticsEntity.setUpdateBy(Constants.SYSTEM_NAME); + orgStatisticsEntity.setUpdateTime(baseMapper.selectSysCurrentTime().getDate()); + orgStatisticsEntity.setDelFlag(DeleteEnum.NO.getCode()); + orgStatisticsMapper.insertOrgStatistics(orgStatisticsEntity); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IFileService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IFileService.java new file mode 100644 index 00000000..cecfb5e6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IFileService.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import feign.Response; +import org.springframework.http.ResponseEntity; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; + +/** + * @ClassName : IFileService + * @Description : 文件流 + * @Author : sky + * @Date: 2023-09-14 10:51 + */ +public interface IFileService { + + /** + * 文件下载 + * + * @param request + * @return + */ + Response downloadFile(DownLoadRequest request, HttpServletResponse response) throws IOException; + + + /** + * 文件下载 + * @return + */ + ResponseEntity download(); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineInfoService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineInfoService.java new file mode 100644 index 00000000..39579200 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineInfoService.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineInfo; + +import java.util.List; + +/** + * 线路基础信息Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineInfoService +{ + /** + * 查询线路基础信息 + * + * @param lineName 线路基础信息主键 + * @return 线路基础信息 + */ + public LineInfo selectLineInfoByLineName(String lineName); + + /** + * 查询线路基础信息列表 + * + * @param lineInfo 线路基础信息 + * @return 线路基础信息集合 + */ + public List selectLineInfoList(LineInfo lineInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricDayService.java new file mode 100644 index 00000000..91c0d91d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricDayService.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; + +import java.util.List; + +/** + * 线路每天客流宝量指标Service接口 + * + * @author shu_k + * @date 2023-09-18 + */ +public interface ILineMetricDayService { + + + /** + * 查询线路每天客流宝量指标列表 + * + * @param lineMetricDay 线路每天客流宝量指标 + * @return 线路每天客流宝量指标集合 + */ + List selectLineMetricDayList(LineMetricDay lineMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricHourService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricHourService.java new file mode 100644 index 00000000..66f6d014 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricHourService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; + +import java.util.List; + +/** + * 线路小时客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineMetricHourService { + /** + * 查询线路小时客流量统计 + * + * @param id 线路小时客流量统计主键 + * @return 线路小时客流量统计 + */ + LineMetricHour selectlineMetricHourById(Long id); + + /** + * 查询线路小时客流量统计列表 + * + * @param lineMetricHour 线路小时客流量统计 + * @return 线路小时客流量统计集合 + */ + List selectlineMetricHourList(LineMetricHour lineMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricMonthService.java new file mode 100644 index 00000000..d0a75298 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; + +import java.util.List; + +/** + * 线路月客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineMetricMonthService { + /** + * 查询线路月客流量统计 + * + * @param id 线路月客流量统计主键 + * @return 线路月客流量统计 + */ + LineMetricMonth selectlineMetricMonthById(Long id); + + /** + * 查询线路月客流量统计列表 + * + * @param lineMetricMonth 线路月客流量统计 + * @return 线路月客流量统计集合 + */ + List selectlineMetricMonthList(LineMetricMonth lineMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationInfoService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationInfoService.java new file mode 100644 index 00000000..d750f4c9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationInfoService.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationInfo; + +import java.util.List; + +/** + * 站点基础信息Service接口 + * + * @author ruoyi + * @date 2023-09-19 + */ +public interface ILineStationInfoService +{ + /** + * 查询站点基础信息 + * + * @param lineCode 站点基础信息主键 + * @return 站点基础信息 + */ + public LineStationInfo selectLineStationInfoByLineCode(String lineCode); + + /** + * 查询站点基础信息列表 + * + * @param lineStationInfo 站点基础信息 + * @return 站点基础信息集合 + */ + public List selectLineStationInfoList(LineStationInfo lineStationInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricDayService.java new file mode 100644 index 00000000..5ef95842 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; + +import java.util.List; + +/** + * 站点日客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationMetricDayService { + /** + * 查询站点日客流量统计 + * + * @param id 站点日客流量统计主键 + * @return 站点日客流量统计 + */ + LineStationMetricDay selectLineStationMetricDayById(Long id); + + /** + * 查询站点日客流量统计列表 + * + * @param lineStationMetricDay 站点日客流量统计 + * @return 站点日客流量统计集合 + */ + List selectLineStationMetricDayList(LineStationMetricDay lineStationMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricHourService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricHourService.java new file mode 100644 index 00000000..641d1da0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricHourService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; + +import java.util.List; + +/** + * 站点小时客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationMetricHourService { + /** + * 查询站点小时客流量统计 + * + * @param id 站点小时客流量统计主键 + * @return 站点小时客流量统计 + */ + LineStationMetricHour selectLineStationMetricHourById(Long id); + + /** + * 查询站点小时客流量统计列表 + * + * @param lineStationMetricHour 站点小时客流量统计 + * @return 站点小时客流量统计集合 + */ + List selectLineStationMetricHourList(LineStationMetricHour lineStationMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricMonthService.java new file mode 100644 index 00000000..bd096b7e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; + +import java.util.List; + +/** + * 站点月客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationMetricMonthService { + /** + * 查询站点月客流量统计 + * + * @param id 站点月客流量统计主键 + * @return 站点月客流量统计 + */ + LineStationMetricMonth selectLineStationMetricMonthById(Long id); + + /** + * 查询站点月客流量统计列表 + * + * @param lineStationMetricMonth 站点月客流量统计 + * @return 站点月客流量统计集合 + */ + List selectLineStationMetricMonthList(LineStationMetricMonth lineStationMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransDayService.java new file mode 100644 index 00000000..e98bade2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; + +import java.util.List; + +/** + * 站点日换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationTransDayService { + /** + * 查询站点日换乘客流量统计 + * + * @param id 站点日换乘客流量统计主键 + * @return 站点日换乘客流量统计 + */ + LineStationTransDay selectLineStationTransDayById(Long id); + + /** + * 查询站点日换乘客流量统计列表 + * + * @param lineStationTransDay 站点日换乘客流量统计 + * @return 站点日换乘客流量统计集合 + */ + List selectLineStationTransDayList(LineStationTransDay lineStationTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransHourService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransHourService.java new file mode 100644 index 00000000..13d69615 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransHourService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; + +import java.util.List; + +/** + * 站点小时换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationTransHourService { + /** + * 查询站点小时换乘客流量统计 + * + * @param id 站点小时换乘客流量统计主键 + * @return 站点小时换乘客流量统计 + */ + LineStationTransHour selectLineStationTransHourById(Long id); + + /** + * 查询站点小时换乘客流量统计列表 + * + * @param lineStationTransHour 站点小时换乘客流量统计 + * @return 站点小时换乘客流量统计集合 + */ + List selectLineStationTransHourList(LineStationTransHour lineStationTransHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransMonthService.java new file mode 100644 index 00000000..5d3b9d45 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; + +import java.util.List; + +/** + * 站点月换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationTransMonthService { + /** + * 查询站点月换乘客流量统计 + * + * @param id 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + LineStationTransMonth selectLineStationTransMonthById(Long id); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param lineStationTransMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectLineStationTransMonthList(LineStationTransMonth lineStationTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IRouteMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IRouteMetricDayService.java new file mode 100644 index 00000000..b8f50074 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IRouteMetricDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; + +import java.util.List; + +/** + * 班次日客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IRouteMetricDayService { + /** + * 查询班次日客流量统计 + * + * @param id 班次日客流量统计主键 + * @return 班次日客流量统计 + */ + RouteMetricDay selectRouteMetricDayById(Long id); + + /** + * 查询班次日客流量统计列表 + * + * @param routeMetricDay 班次日客流量统计 + * @return 班次日客流量统计集合 + */ + List selectRouteMetricDayList(RouteMetricDay routeMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricDayService.java new file mode 100644 index 00000000..aef48bb5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; + +import java.util.List; + +/** + * 站点日常乘客客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqMetricDayService { + /** + * 查询站点日常乘客客流量统计 + * + * @param id 站点日常乘客客流量统计主键 + * @return 站点日常乘客客流量统计 + */ + StationFreqMetricDay selectStationFreqMetricDayById(Long id); + + /** + * 查询站点日常乘客客流量统计列表 + * + * @param stationFreqMetricDay 站点日常乘客客流量统计 + * @return 站点日常乘客客流量统计集合 + */ + List selectStationFreqMetricDayList(StationFreqMetricDay stationFreqMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricMonthService.java new file mode 100644 index 00000000..6478a8b8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; + +import java.util.List; + +/** + * 站点月换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqMetricMonthService { + /** + * 查询站点月换乘客流量统计 + * + * @param lineCode 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + StationFreqMetricMonth selectStationFreqMetricMonthByLineCode(String lineCode); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param stationFreqMetricMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectStationFreqMetricMonthList(StationFreqMetricMonth stationFreqMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransDayService.java new file mode 100644 index 00000000..f8f07f43 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqTransDayService { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransDay selectStationFreqTransDayById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransDay 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransDayList(StationFreqTransDay stationFreqTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransMonthService.java new file mode 100644 index 00000000..309f63f7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqTransMonthService { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransMonth selectStationFreqTransMonthById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransMonth 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransMonthList(StationFreqTransMonth stationFreqTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/FileServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/FileServiceImpl.java new file mode 100644 index 00000000..54a5de2a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/FileServiceImpl.java @@ -0,0 +1,178 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jcraft.jsch.ChannelSftp; +import com.jcraft.jsch.SftpException; +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.config.sftp.SftpPool; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataStatusEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import com.jiuyv.sptcc.agile.dataservice.service.ISyncRecordService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IFileService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import feign.Response; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.ContentDisposition; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StreamUtils; + +import javax.annotation.Resource; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.InputStream; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.List; +import java.util.Vector; + +/** + * 文件下载 + * + * @Date: 2023-09-14 13:34 + */ +@Service +public class FileServiceImpl implements IFileService { + + private static final Logger logger = LoggerFactory.getLogger(FileServiceImpl.class); + @Resource + private SftpPool sftpPool; + @Resource + private ISyncRecordService syncRecordService; + @Resource + private OrgConfigMapper configMapper; + + @Value("${sftp.sdk.path}") + private String sdkPath; + + /** + * 文件下载 + * + * @param request + * @return + */ + @Override + public Response downloadFile(DownLoadRequest request, HttpServletResponse response) throws IOException { + + //文件是否有下载权限 + OrgConfig cfg = new OrgConfig(); + cfg.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); + cfg.setOrgNo(request.getOrgNo()); + List list = configMapper.getValueList(cfg); + if(CollectionUtils.isEmpty(list)|| !list.contains(request.getFileType())){ + throw new BaseException(ResultCode.FILE_DOWN_NO_RIGHT); + } + // 文件是否生成 + SyncRecord syncRecord = syncRecordService.selectSyncRecordList(request.getFileType(), request.getDate()); + if (syncRecord == null || !DataStatusEnum.SUCCESS.getCode().equals(syncRecord.getDataStatus())) { + logger.warn("文件不存在"); + throw new BaseException(ResultCode.FILE_DOWN_NO_EXIST); + } + + //文件下载 + String path = syncRecord.getPath(); + String fileName = path.substring(path.lastIndexOf(Constants.SEPARATOR) + 1); + String dir = path.substring(0, path.lastIndexOf(Constants.SEPARATOR)); + logger.info("文件地址:{},文件名: {}",path,fileName); + + response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE); + byte[] buff = new byte[1024]; + try (InputStream inputStream = getByteArray(dir, fileName); + ServletOutputStream outputStream = response.getOutputStream()) { + response.setHeader("Content-Disposition", "attachment;fileName=" + fileName + ";filename*=utf-8''" + URLEncoder.encode(fileName, "utf-8")); + int len = 0; + while ((len = inputStream.read(buff)) > 0) { + outputStream.write(buff, 0, len); + } + } catch (Exception e1) { + logger.error("encode error", e1); + throw new IOException(e1.getMessage()); + } + return null; + } + + @Override + public ResponseEntity download() { + int i = sdkPath.lastIndexOf(Constants.SEPARATOR); + String fileName = sdkPath.substring(i + 1); + String dir = sdkPath.substring(0, i); + InputStream inputStream = getByteArray(dir, fileName); + + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); + headers.setContentDisposition(ContentDisposition.attachment().filename(fileName).build()); + try { + return ResponseEntity.ok().headers(headers).body(StreamUtils.copyToByteArray(inputStream)); + } catch (IOException e) { + throw new BaseException(ResultCode.FILE_DOWN_FAIL); + } + } + + public String encoderURL(String str) { + try { + return URLEncoder.encode(str, StandardCharsets.UTF_8.toString()).replace("+", "%20"); + } catch (UnsupportedEncodingException e) { + logger.error("", e); + throw new BaseException(""); + } + } + + + private InputStream getByteArray(String targetPath, String fileName) { + ChannelSftp sftpChannel = null; + try { + logger.info("文件路径{},文件名称{}",targetPath,fileName); + sftpChannel = sftpPool.borrowObject(); + sftpChannel.cd(targetPath); + return sftpChannel.get(fileName); + } catch (Exception e) { + logger.error("文件[{},{}]获取失败", targetPath,fileName, e); + throw new BaseException("文件获取失败"); + } finally { + if (sftpChannel != null) { + sftpPool.returnObject(sftpChannel); + } + } + } + + /** + * 判断是否有该目录或文件 + * + * @param channel 通道 + * @param directory 主目录 + * @param resources 需要检测的目录或文件 + * @return 存在返回true 不存在返回false + */ + @SuppressWarnings("unchecked") + private boolean isResourceExist(ChannelSftp channel, String directory, String resources) { + // 获取目录下的文件和子目录列表 + Vector entries; + try { + + entries = channel.ls(directory); + } catch (SftpException e) { + logger.error("文件服务器异常", e); + throw new BaseException("No such file"); + } + if (entries == null) { + return false; + } + for (ChannelSftp.LsEntry entry : entries) { + if (entry.getFilename().equals(resources)) { + return true; + } + } + return false; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineInfoServiceImpl.java new file mode 100644 index 00000000..26cd4c8e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineInfoServiceImpl.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineInfo; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 线路基础信息Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineInfoServiceImpl implements ILineInfoService { + @Autowired + private LineInfoMapper lineInfoMapper; + + /** + * 查询线路基础信息 + * + * @param lineName 线路基础信息主键 + * @return 线路基础信息 + */ + @Override + public LineInfo selectLineInfoByLineName(String lineName) { + return lineInfoMapper.selectLineInfoByLineName(lineName); + } + + /** + * 查询线路基础信息列表 + * + * @param lineInfo 线路基础信息 + * @return 线路基础信息 + */ + @Override + public List selectLineInfoList(LineInfo lineInfo) { + return lineInfoMapper.selectLineInfoList(lineInfo); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricDayServiceImpl.java new file mode 100644 index 00000000..e9829f30 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricDayServiceImpl.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricDayService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 线路每天客流宝量指标Service业务层处理 + * + * @author shu_k + * @date 2023-09-18 + */ +@Service +public class LineMetricDayServiceImpl implements ILineMetricDayService { + + private final LineMetricDayMapper lineMetricDayMapper; + + @Autowired + public LineMetricDayServiceImpl(LineMetricDayMapper lineMetricDayMapper) { + this.lineMetricDayMapper = lineMetricDayMapper; + } + + /** + * 查询线路每天客流宝量指标列表 + * + * @param lineMetricDay 线路每天客流宝量指标 + * @return 线路每天客流宝量指标 + */ + @Override + public List selectLineMetricDayList(LineMetricDay lineMetricDay) { + return lineMetricDayMapper.selectLineMetricDayList(lineMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricHourServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricHourServiceImpl.java new file mode 100644 index 00000000..166fab1e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricHourServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineMetricHourMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 线路小时客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineMetricHourServiceImpl implements ILineMetricHourService { + @Resource + private LineMetricHourMapper lineMetricHourMapper; + + /** + * 查询线路小时客流量统计 + * + * @param id 线路小时客流量统计主键 + * @return 线路小时客流量统计 + */ + @Override + public LineMetricHour selectlineMetricHourById(Long id) { + return lineMetricHourMapper.selectlineMetricHourById(id); + } + + /** + * 查询线路小时客流量统计列表 + * + * @param lineMetricHour 线路小时客流量统计 + * @return 线路小时客流量统计 + */ + @Override + public List selectlineMetricHourList(LineMetricHour lineMetricHour) { + return lineMetricHourMapper.selectlineMetricHourList(lineMetricHour); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricMonthServiceImpl.java new file mode 100644 index 00000000..960aa4aa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineMetricMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 线路月客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineMetricMonthServiceImpl implements ILineMetricMonthService { + @Resource + private LineMetricMonthMapper lineMetricMonthMapper; + + /** + * 查询线路月客流量统计 + * + * @param id 线路月客流量统计主键 + * @return 线路月客流量统计 + */ + @Override + public LineMetricMonth selectlineMetricMonthById(Long id) { + return lineMetricMonthMapper.selectlineMetricMonthById(id); + } + + /** + * 查询线路月客流量统计列表 + * + * @param lineMetricMonth 线路月客流量统计 + * @return 线路月客流量统计 + */ + @Override + public List selectlineMetricMonthList(LineMetricMonth lineMetricMonth) { + return lineMetricMonthMapper.selectlineMetricMonthList(lineMetricMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationInfoServiceImpl.java new file mode 100644 index 00000000..e03e15e4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationInfoServiceImpl.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationInfo; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 站点基础信息Service业务层处理 + * + * @author ruoyi + * @date 2023-09-19 + */ +@Service +public class LineStationInfoServiceImpl implements ILineStationInfoService +{ + @Autowired + private LineStationInfoMapper lineStationInfoMapper; + + /** + * 查询站点基础信息 + * + * @param lineCode 站点基础信息主键 + * @return 站点基础信息 + */ + @Override + public LineStationInfo selectLineStationInfoByLineCode(String lineCode) + { + return lineStationInfoMapper.selectLineStationInfoByLineCode(lineCode); + } + + /** + * 查询站点基础信息列表 + * + * @param lineStationInfo 站点基础信息 + * @return 站点基础信息 + */ + @Override + public List selectLineStationInfoList(LineStationInfo lineStationInfo) + { + return lineStationInfoMapper.selectLineStationInfoList(lineStationInfo); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricDayServiceImpl.java new file mode 100644 index 00000000..dd6eb8bb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationMetricDayServiceImpl implements ILineStationMetricDayService { + @Resource + private LineStationMetricDayMapper lineStationMetricDayMapper; + + /** + * 查询站点日客流量统计 + * + * @param id 站点日客流量统计主键 + * @return 站点日客流量统计 + */ + @Override + public LineStationMetricDay selectLineStationMetricDayById(Long id) { + return lineStationMetricDayMapper.selectLineStationMetricDayById(id); + } + + /** + * 查询站点日客流量统计列表 + * + * @param lineStationMetricDay 站点日客流量统计 + * @return 站点日客流量统计 + */ + @Override + public List selectLineStationMetricDayList(LineStationMetricDay lineStationMetricDay) { + return lineStationMetricDayMapper.selectLineStationMetricDayList(lineStationMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricHourServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricHourServiceImpl.java new file mode 100644 index 00000000..9b65f2ef --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricHourServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationMetricHourMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点小时客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationMetricHourServiceImpl implements ILineStationMetricHourService { + @Resource + private LineStationMetricHourMapper lineStationMetricHourMapper; + + /** + * 查询站点小时客流量统计 + * + * @param id 站点小时客流量统计主键 + * @return 站点小时客流量统计 + */ + @Override + public LineStationMetricHour selectLineStationMetricHourById(Long id) { + return lineStationMetricHourMapper.selectLineStationMetricHourById(id); + } + + /** + * 查询站点小时客流量统计列表 + * + * @param lineStationMetricHour 站点小时客流量统计 + * @return 站点小时客流量统计 + */ + @Override + public List selectLineStationMetricHourList(LineStationMetricHour lineStationMetricHour) { + return lineStationMetricHourMapper.selectLineStationMetricHourList(lineStationMetricHour); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricMonthServiceImpl.java new file mode 100644 index 00000000..11951016 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationMetricMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点月客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationMetricMonthServiceImpl implements ILineStationMetricMonthService { + @Resource + private LineStationMetricMonthMapper lineStationMetricMonthMapper; + + /** + * 查询站点月客流量统计 + * + * @param id 站点月客流量统计主键 + * @return 站点月客流量统计 + */ + @Override + public LineStationMetricMonth selectLineStationMetricMonthById(Long id) { + return lineStationMetricMonthMapper.selectLineStationMetricMonthById(id); + } + + /** + * 查询站点月客流量统计列表 + * + * @param lineStationMetricMonth 站点月客流量统计 + * @return 站点月客流量统计 + */ + @Override + public List selectLineStationMetricMonthList(LineStationMetricMonth lineStationMetricMonth) { + return lineStationMetricMonthMapper.selectLineStationMetricMonthList(lineStationMetricMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransDayServiceImpl.java new file mode 100644 index 00000000..8330b424 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationTransDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationTransDayServiceImpl implements ILineStationTransDayService { + @Resource + private LineStationTransDayMapper lineStationTransDayMapper; + + /** + * 查询站点日换乘客流量统计 + * + * @param id 站点日换乘客流量统计主键 + * @return 站点日换乘客流量统计 + */ + @Override + public LineStationTransDay selectLineStationTransDayById(Long id) { + return lineStationTransDayMapper.selectLineStationTransDayById(id); + } + + /** + * 查询站点日换乘客流量统计列表 + * + * @param lineStationTransDay 站点日换乘客流量统计 + * @return 站点日换乘客流量统计 + */ + @Override + public List selectLineStationTransDayList(LineStationTransDay lineStationTransDay) { + return lineStationTransDayMapper.selectLineStationTransDayList(lineStationTransDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransHourServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransHourServiceImpl.java new file mode 100644 index 00000000..be651446 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransHourServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationTransHourMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransHourService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点小时换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationTransHourServiceImpl implements ILineStationTransHourService { + @Resource + private LineStationTransHourMapper lineStationTransHourMapper; + + /** + * 查询站点小时换乘客流量统计 + * + * @param id 站点小时换乘客流量统计主键 + * @return 站点小时换乘客流量统计 + */ + @Override + public LineStationTransHour selectLineStationTransHourById(Long id) { + return lineStationTransHourMapper.selectLineStationTransHourById(id); + } + + /** + * 查询站点小时换乘客流量统计列表 + * + * @param lineStationTransHour 站点小时换乘客流量统计 + * @return 站点小时换乘客流量统计 + */ + @Override + public List selectLineStationTransHourList(LineStationTransHour lineStationTransHour) { + return lineStationTransHourMapper.selectLineStationTransHourList(lineStationTransHour); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransMonthServiceImpl.java new file mode 100644 index 00000000..284d0bbc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationTransMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点月换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationTransMonthServiceImpl implements ILineStationTransMonthService { + @Resource + private LineStationTransMonthMapper lineStationTransMonthMapper; + + /** + * 查询站点月换乘客流量统计 + * + * @param id 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + @Override + public LineStationTransMonth selectLineStationTransMonthById(Long id) { + return lineStationTransMonthMapper.selectLineStationTransMonthById(id); + } + + /** + * 查询站点月换乘客流量统计列表 + * + * @param lineStationTransMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计 + */ + @Override + public List selectLineStationTransMonthList(LineStationTransMonth lineStationTransMonth) { + return lineStationTransMonthMapper.selectLineStationTransMonthList(lineStationTransMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/RouteMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/RouteMetricDayServiceImpl.java new file mode 100644 index 00000000..b016eaf9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/RouteMetricDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IRouteMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 班次日客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class RouteMetricDayServiceImpl implements IRouteMetricDayService { + @Resource + private RouteMetricDayMapper routeMetricDayMapper; + + /** + * 查询班次日客流量统计 + * + * @param id 班次日客流量统计主键 + * @return 班次日客流量统计 + */ + @Override + public RouteMetricDay selectRouteMetricDayById(Long id) { + return routeMetricDayMapper.selectRouteMetricDayById(id); + } + + /** + * 查询班次日客流量统计列表 + * + * @param routeMetricDay 班次日客流量统计 + * @return 班次日客流量统计 + */ + @Override + public List selectRouteMetricDayList(RouteMetricDay routeMetricDay) { + return routeMetricDayMapper.selectRouteMetricDayList(routeMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricDayServiceImpl.java new file mode 100644 index 00000000..1c74eeb9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日常乘客客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqMetricDayServiceImpl implements IStationFreqMetricDayService { + @Resource + private StationFreqMetricDayMapper stationFreqMetricDayMapper; + + /** + * 查询站点日常乘客客流量统计 + * + * @param id 站点日常乘客客流量统计主键 + * @return 站点日常乘客客流量统计 + */ + @Override + public StationFreqMetricDay selectStationFreqMetricDayById(Long id) { + return stationFreqMetricDayMapper.selectStationFreqMetricDayById(id); + } + + /** + * 查询站点日常乘客客流量统计列表 + * + * @param stationFreqMetricDay 站点日常乘客客流量统计 + * @return 站点日常乘客客流量统计 + */ + @Override + public List selectStationFreqMetricDayList(StationFreqMetricDay stationFreqMetricDay) { + return stationFreqMetricDayMapper.selectStationFreqMetricDayList(stationFreqMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricMonthServiceImpl.java new file mode 100644 index 00000000..38a5f209 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqMetricMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点月换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqMetricMonthServiceImpl implements IStationFreqMetricMonthService { + @Resource + private StationFreqMetricMonthMapper stationFreqMetricMonthMapper; + + /** + * 查询站点月换乘客流量统计 + * + * @param lineCode 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + @Override + public StationFreqMetricMonth selectStationFreqMetricMonthByLineCode(String lineCode) { + return stationFreqMetricMonthMapper.selectStationFreqMetricMonthByLineCode(lineCode); + } + + /** + * 查询站点月换乘客流量统计列表 + * + * @param stationFreqMetricMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计 + */ + @Override + public List selectStationFreqMetricMonthList(StationFreqMetricMonth stationFreqMetricMonth) { + return stationFreqMetricMonthMapper.selectStationFreqMetricMonthList(stationFreqMetricMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransDayServiceImpl.java new file mode 100644 index 00000000..24b34e6c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqTransDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqTransDayServiceImpl implements IStationFreqTransDayService { + @Resource + private StationFreqTransDayMapper stationFreqTransDayMapper; + + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public StationFreqTransDay selectStationFreqTransDayById(Long id) { + return stationFreqTransDayMapper.selectStationFreqTransDayById(id); + } + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransDay 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public List selectStationFreqTransDayList(StationFreqTransDay stationFreqTransDay) { + return stationFreqTransDayMapper.selectStationFreqTransDayList(stationFreqTransDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransMonthServiceImpl.java new file mode 100644 index 00000000..75e82f4a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqTransMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqTransMonthServiceImpl implements IStationFreqTransMonthService { + @Resource + private StationFreqTransMonthMapper stationFreqTransMonthMapper; + + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public StationFreqTransMonth selectStationFreqTransMonthById(Long id) { + return stationFreqTransMonthMapper.selectStationFreqTransMonthById(id); + } + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransMonth 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public List selectStationFreqTransMonthList(StationFreqTransMonth stationFreqTransMonth) { + return stationFreqTransMonthMapper.selectStationFreqTransMonthList(stationFreqTransMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/ICentimeDelayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/ICentimeDelayService.java new file mode 100644 index 00000000..420dae8d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/ICentimeDelayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; + +import java.util.List; + +/** + * 延迟上送比率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface ICentimeDelayService { + /** + * 查询延迟上送比率 + * + * @param id 延迟上送比率主键 + * @return 延迟上送比率 + */ + CentimeDelay selectCentimeDelayById(Long id); + + /** + * 查询延迟上送比率列表 + * + * @param centimeDelay 延迟上送比率 + * @return 延迟上送比率集合 + */ + List selectCentimeDelayList(CentimeDelay centimeDelay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IPosMatchRateService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IPosMatchRateService.java new file mode 100644 index 00000000..70cabd44 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IPosMatchRateService.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; + +import java.util.Date; +import java.util.List; + +/** + * Pos匹配率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IPosMatchRateService { + /** + * 查询Pos匹配率 + * + * @param id Pos匹配率主键 + * @return Pos匹配率 + */ + PosMatchRate selectPosMatchRateById(Long id); + + /** + * 查询Pos匹配率列表 + * + * @param posMatchRate Pos匹配率 + * @return Pos匹配率集合 + */ + List selectPosMatchRateList(PosMatchRate posMatchRate); + + + /** + * pos匹配率异常告警 + * @param date + * @return + */ + boolean check(String date); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteDailyCountService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteDailyCountService.java new file mode 100644 index 00000000..21a9a884 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteDailyCountService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; + +import java.util.List; + +/** + * 日营运线路条数Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IRouteDailyCountService { + /** + * 查询日营运线路条数 + * + * @param id 日营运线路条数主键 + * @return 日营运线路条数 + */ + RouteDailyCount selectRouteDailyCountById(Long id); + + /** + * 查询日营运线路条数列表 + * + * @param routeDailyCount 日营运线路条数 + * @return 日营运线路条数集合 + */ + List selectRouteDailyCountList(RouteDailyCount routeDailyCount); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteMissService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteMissService.java new file mode 100644 index 00000000..e58b5b50 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteMissService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; + +import java.util.List; + +/** + * 班次缺失率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IRouteMissService { + /** + * 查询班次缺失率 + * + * @param id 班次缺失率主键 + * @return 班次缺失率 + */ + RouteMiss selectRouteMissById(Long id); + + /** + * 查询班次缺失率列表 + * + * @param routeMiss 班次缺失率 + * @return 班次缺失率集合 + */ + List selectRouteMissList(RouteMiss routeMiss); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteTurnoverTimeService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteTurnoverTimeService.java new file mode 100644 index 00000000..83a1b6be --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteTurnoverTimeService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; + +import java.util.List; + +/** + * 班次周转时间Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IRouteTurnoverTimeService { + /** + * 查询班次周转时间 + * + * @param id 班次周转时间主键 + * @return 班次周转时间 + */ + RouteTurnoverTime selectRouteTurnoverTimeById(Long id); + + /** + * 查询班次周转时间列表 + * + * @param routeTurnoverTime 班次周转时间 + * @return 班次周转时间集合 + */ + List selectRouteTurnoverTimeList(RouteTurnoverTime routeTurnoverTime); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IStationMissService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IStationMissService.java new file mode 100644 index 00000000..4a415f21 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IStationMissService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; + +import java.util.List; + +/** + * 站点缺失率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IStationMissService { + /** + * 查询站点缺失率 + * + * @param id 站点缺失率主键 + * @return 站点缺失率 + */ + StationMiss selectStationMissById(Long id); + + /** + * 查询站点缺失率列表 + * + * @param stationMiss 站点缺失率 + * @return 站点缺失率集合 + */ + List selectStationMissList(StationMiss stationMiss); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IVehicleDailyCountService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IVehicleDailyCountService.java new file mode 100644 index 00000000..14779d4e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IVehicleDailyCountService.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; + +import java.util.List; + +/** + * 日营运车辆数Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IVehicleDailyCountService { + /** + * 查询日营运车辆数 + * + * @param id 日营运车辆数主键 + * @return 日营运车辆数 + */ + VehicleDailyCount selectVehicleDailyCountById(Long id); + + /** + * 查询日营运车辆数列表 + * + * @param vehicleDailyCount 日营运车辆数 + * @return 日营运车辆数集合 + */ + List selectVehicleDailyCountList(VehicleDailyCount vehicleDailyCount); + + /** + * 根据条件统计车辆数 + * @param req + * @return + */ + Long countBus(VehicleDailyCount req); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/CentimeDelayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/CentimeDelayServiceImpl.java new file mode 100644 index 00000000..2442dd6d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/CentimeDelayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.CentimeDelayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.ICentimeDelayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 延迟上送比率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class CentimeDelayServiceImpl implements ICentimeDelayService { + @Autowired + private CentimeDelayMapper centimeDelayMapper; + + /** + * 查询延迟上送比率 + * + * @param id 延迟上送比率主键 + * @return 延迟上送比率 + */ + @Override + public CentimeDelay selectCentimeDelayById(Long id) { + return centimeDelayMapper.selectCentimeDelayById(id); + } + + /** + * 查询延迟上送比率列表 + * + * @param centimeDelay 延迟上送比率 + * @return 延迟上送比率 + */ + @Override + public List selectCentimeDelayList(CentimeDelay centimeDelay) { + return centimeDelayMapper.selectCentimeDelayList(centimeDelay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/PosMatchRateServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/PosMatchRateServiceImpl.java new file mode 100644 index 00000000..c4a73b32 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/PosMatchRateServiceImpl.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.PosMatchRateMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IPosMatchRateService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.List; + +/** + * Pos匹配率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class PosMatchRateServiceImpl implements IPosMatchRateService { + + /** + * 默认90%匹配率,如果当天的小于该值,短信告警 + */ + @Value("${agile.config.posRatePoint:0.9}") + private double posRatePoint; + @Resource + private PosMatchRateMapper posMatchRateMapper; + + /** + * 查询Pos匹配率 + * + * @param id Pos匹配率主键 + * @return Pos匹配率 + */ + @Override + public PosMatchRate selectPosMatchRateById(Long id) { + return posMatchRateMapper.selectPosMatchRateById(id); + } + + /** + * 查询Pos匹配率列表 + * + * @param posMatchRate Pos匹配率 + * @return Pos匹配率 + */ + @Override + public List selectPosMatchRateList(PosMatchRate posMatchRate) { + return posMatchRateMapper.selectPosMatchRateList(posMatchRate); + } + + + @Override + public boolean check(String date) { + BigDecimal bigDecimal = posMatchRateMapper.selectByDate(date); + if(bigDecimal ==null){ + return false; + } + return bigDecimal.doubleValue()>posRatePoint; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteDailyCountServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteDailyCountServiceImpl.java new file mode 100644 index 00000000..82780af1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteDailyCountServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteDailyCountMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 日营运线路条数Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class RouteDailyCountServiceImpl implements IRouteDailyCountService { + @Autowired + private RouteDailyCountMapper routeDailyCountMapper; + + /** + * 查询日营运线路条数 + * + * @param id 日营运线路条数主键 + * @return 日营运线路条数 + */ + @Override + public RouteDailyCount selectRouteDailyCountById(Long id) { + return routeDailyCountMapper.selectRouteDailyCountById(id); + } + + /** + * 查询日营运线路条数列表 + * + * @param routeDailyCount 日营运线路条数 + * @return 日营运线路条数 + */ + @Override + public List selectRouteDailyCountList(RouteDailyCount routeDailyCount) { + return routeDailyCountMapper.selectRouteDailyCountList(routeDailyCount); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteMissServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteMissServiceImpl.java new file mode 100644 index 00000000..c9c63d19 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteMissServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteMissMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 班次缺失率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class RouteMissServiceImpl implements IRouteMissService { + @Autowired + private RouteMissMapper routeMissMapper; + + /** + * 查询班次缺失率 + * + * @param id 班次缺失率主键 + * @return 班次缺失率 + */ + @Override + public RouteMiss selectRouteMissById(Long id) { + return routeMissMapper.selectRouteMissById(id); + } + + /** + * 查询班次缺失率列表 + * + * @param routeMiss 班次缺失率 + * @return 班次缺失率 + */ + @Override + public List selectRouteMissList(RouteMiss routeMiss) { + return routeMissMapper.selectRouteMissList(routeMiss); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteTurnoverTimeServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteTurnoverTimeServiceImpl.java new file mode 100644 index 00000000..740869a0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteTurnoverTimeServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteTurnoverTimeMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteTurnoverTimeService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 班次周转时间Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class RouteTurnoverTimeServiceImpl implements IRouteTurnoverTimeService { + @Autowired + private RouteTurnoverTimeMapper routeTurnoverTimeMapper; + + /** + * 查询班次周转时间 + * + * @param id 班次周转时间主键 + * @return 班次周转时间 + */ + @Override + public RouteTurnoverTime selectRouteTurnoverTimeById(Long id) { + return routeTurnoverTimeMapper.selectRouteTurnoverTimeById(id); + } + + /** + * 查询班次周转时间列表 + * + * @param routeTurnoverTime 班次周转时间 + * @return 班次周转时间 + */ + @Override + public List selectRouteTurnoverTimeList(RouteTurnoverTime routeTurnoverTime) { + return routeTurnoverTimeMapper.selectRouteTurnoverTimeList(routeTurnoverTime); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/StationMissServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/StationMissServiceImpl.java new file mode 100644 index 00000000..a7f1ef89 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/StationMissServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationMissMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IStationMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 站点缺失率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class StationMissServiceImpl implements IStationMissService { + @Autowired + private StationMissMapper stationMissMapper; + + /** + * 查询站点缺失率 + * + * @param id 站点缺失率主键 + * @return 站点缺失率 + */ + @Override + public StationMiss selectStationMissById(Long id) { + return stationMissMapper.selectStationMissById(id); + } + + /** + * 查询站点缺失率列表 + * + * @param stationMiss 站点缺失率 + * @return 站点缺失率 + */ + @Override + public List selectStationMissList(StationMiss stationMiss) { + return stationMissMapper.selectStationMissList(stationMiss); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/VehicleDailyCountServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/VehicleDailyCountServiceImpl.java new file mode 100644 index 00000000..ecee629c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/VehicleDailyCountServiceImpl.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.VehicleDailyCountMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IVehicleDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 日营运车辆数Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class VehicleDailyCountServiceImpl implements IVehicleDailyCountService { + @Autowired + private VehicleDailyCountMapper vehicleDailyCountMapper; + + /** + * 查询日营运车辆数 + * + * @param id 日营运车辆数主键 + * @return 日营运车辆数 + */ + @Override + public VehicleDailyCount selectVehicleDailyCountById(Long id) { + return vehicleDailyCountMapper.selectVehicleDailyCountById(id); + } + + /** + * 查询日营运车辆数列表 + * + * @param vehicleDailyCount 日营运车辆数 + * @return 日营运车辆数 + */ + @Override + public List selectVehicleDailyCountList(VehicleDailyCount vehicleDailyCount) { + return vehicleDailyCountMapper.selectVehicleDailyCountList(vehicleDailyCount); + } + + @Override + public Long countBus(VehicleDailyCount req) { + return vehicleDailyCountMapper.countBus(req); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/IOrgTask.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/IOrgTask.java new file mode 100644 index 00000000..00b2f8f8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/IOrgTask.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.service.task; + +import java.util.Date; + +public interface IOrgTask { + + /** + * 机构到期提醒 + * @param date + */ + Boolean expire(Date date); + + /** + * 机构到期下架 + * @param date + * @return Boolean + */ + Boolean down(Date date); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/impl/OrgTaskImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/impl/OrgTaskImpl.java new file mode 100644 index 00000000..e24a99bc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/impl/OrgTaskImpl.java @@ -0,0 +1,143 @@ +package com.jiuyv.sptcc.agile.dataservice.service.task.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.feign.MessageFeign; +import com.jiuyv.sptcc.agile.dataservice.service.task.IOrgTask; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptccc.agile.api.fegin.dto.publicPhoneMsgLog.ReqPublicPhoneMsgSendDTO; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +@Service +public class OrgTaskImpl implements IOrgTask { + + private static final Logger LOGGER = LoggerFactory.getLogger(OrgTaskImpl.class); + @Resource + private OrgInfoMapper orgInfoMapper; + @Resource + private MessageFeign messageFeign; + + @Value("${spring.application.name}") + private String systemName; + + /** + * 默认30,15,3天提前告警 + */ + @Value("${org.expire.interval.date:30,15,3}") + private String intervalDate; + + @Override + public Boolean expire(Date date) { + String[] split = intervalDate.split(","); + for (String interval : split) { + if (StringUtils.isNotBlank(interval)) { + // 计算到期日期符合到期提醒预期的 + int i = Integer.parseInt(interval.trim()); + Date endDate = DateUtils.addDays(date, i); + try { + expire(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,endDate), i); + } catch (Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("机构到期发送短信失败", e); + } else { + LOGGER.info("机构到期发送短信失败:{}", e.getMessage()); + } + } + } + } + return true; + } + + @Override + public Boolean down(Date date) { + List list = orgInfoMapper.afterEndDate(date); + if(CollectionUtils.isEmpty(list)){ + return true; + } + // 状态变更 + for (OrgInfoEntity orgInfoEntity : list) { + OrgInfoEntity orgInfo = new OrgInfoEntity(); + orgInfo.setOrgNo(orgInfoEntity.getOrgNo()); + orgInfo.setStatus(OrgCrypto.OrgStatus.END.getCode()); + orgInfo.setParams(ParamsUtil.idempotent(orgInfoEntity.getRecToken())); + orgInfo.setRecToken(IdUtils.getNewRecToken()); + int i = orgInfoMapper.updateOrgInfo(orgInfo); + // 乐观锁,更新失败 + if (1 != i) { + return false; + } + } + + try { + // 消息发送 + String phones = list.stream().map(x -> Sm4Util.decryptEcb(x.getContractTel())).collect(Collectors.joining(",")); + ReqPublicPhoneMsgSendDTO message = new ReqPublicPhoneMsgSendDTO(); + message.setPhoneNumber(phones); + message.setMsgTemplateCode("org_expire"); + message.setSysType(systemName); + message.setMsgMapParams(new HashMap<>()); + LOGGER.info("messageFeign request: {}", JacksonUtil.obj2String(message)); + R longR = messageFeign.sendPhoneMsg(message); + LOGGER.info("messageFeign response: {}", JacksonUtil.obj2String(longR)); + return true; + }catch (Exception e){ + if(LOGGER.isDebugEnabled()){ + LOGGER.error("短信提醒失败",e); + }else{ + LOGGER.info("短信提醒发送失败:{}",e.getMessage()); + } + } + return true; + + } + + /** + * @param date 到期时间 + * @param i 剩余天数 + */ + private void expire(String date, int i) { + List list = orgInfoMapper.selectEndDate(date); + if(CollectionUtils.isEmpty(list)){ + return ; + } + try{ + String phones = list.stream().map(x -> Sm4Util.decryptEcb(x.getContractTel())).collect(Collectors.joining(",")); + ReqPublicPhoneMsgSendDTO message = new ReqPublicPhoneMsgSendDTO(); + message.setPhoneNumber(phones); + message.setMsgTemplateCode("org_expire_reminder"); + message.setSysType(systemName); + Map param = new HashMap<>(); + param.put("expireDate", date); + param.put("days", String.valueOf(i)); + message.setMsgMapParams(param); + LOGGER.info("messageFeign request: {}", JacksonUtil.obj2String(message)); + R longR = messageFeign.sendPhoneMsg(message); + LOGGER.info("messageFeign response: {}", JacksonUtil.obj2String(longR)); + }catch (Exception e){ + if(LOGGER.isDebugEnabled()){ + LOGGER.error("短信提醒失败",e); + }else{ + LOGGER.info("短信提醒发送失败:{}",e.getMessage()); + } + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/task/AgileApiTask.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/task/AgileApiTask.java new file mode 100644 index 00000000..21fdd348 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/task/AgileApiTask.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.task; + +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +/** + * 敏捷API定时任务 + * + * @author yulei + */ +@Component +public class AgileApiTask { + + @Autowired + private AgileApiService apiService; + + /** + * 发布接口 + */ + @Scheduled(cron = "0/30 * * * * ? ") + public void releaseDataApi(){ + apiService.releaseDataApi(); + } + + /** + * 注销接口 + */ + @Scheduled(cron = "0/30 * * * * ? ") + public void cancelDataApi(){ + apiService.cancelDataApi(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/AddressUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/AddressUtil.java new file mode 100644 index 00000000..ef1a69a7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/AddressUtil.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; + +/** + * @ClassName : AdrressUtil + * @Description : 请求地址 + * @Author : sky + * @Date: 2023-09-20 18:18 + */ +public final class AddressUtil { + + private AddressUtil() { + throw new UnsupportedOperationException(); + } + + /** + * 调用接口 /services/v1.0.0/user/1 + * + * @param version + * @param path + * @return + */ + public static String getRequestPath(String version, String path) { + if (version == null) { + version = Constants.VERSION_DEFAULT; + } + String fullPath = Constants.PREFIX + Constants.SEPARATOR + + version + + Constants.SEPARATOR + + path; + return fullPath.replaceAll(Constants.SEPARATOR_DOUBLE, Constants.SEPARATOR); + } + + + /** + * 返回用户填写URL + * @param fullUrl /{prefix}/{version}/path + * @param version 站位符 + * @return path + */ + public static String getApiUrl(String fullUrl,String version){ + String noModule = fullUrl.replaceAll(Constants.PREFIX, Constants.SPACE); + String path = noModule.replaceAll(version, Constants.SPACE); + return path.replaceAll(Constants.SEPARATOR_DOUBLE, Constants.SEPARATOR); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DateUtils.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DateUtils.java new file mode 100644 index 00000000..9240d418 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DateUtils.java @@ -0,0 +1,157 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.lang.management.ManagementFactory; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * 时间工具类 + * + * @author admin + */ +public class DateUtils { + + private static final Logger LOGGER = LoggerFactory.getLogger(DateUtils.class); + + public static final String YYYY = "yyyy"; + + public static final String YYYY_MM = "yyyy-MM"; + + public static final String YYYY_MM_DD = "yyyy-MM-dd"; + + public static final String YYYYMMDD = "yyyyMMdd"; + + public static final String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; + + public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; + + public static final String HH_MM_SS = "HH:mm:ss"; + + private static final String[] parsePatterns = {YYYY_MM_DD, YYYY_MM_DD_HH_MM_SS, "yyyy-MM-dd HH:mm", YYYY_MM, YYYYMMDD, + "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", + "yyyy.MM.dd HH:mm", "yyyy.MM"}; + + /** + * 获取当前日期, 默认格式为yyyy-MM-dd + * + * @return String + */ + public static String getDate() { + return dateTimeNow(YYYY_MM_DD); + } + + public static String getTime() { + return dateTimeNow(YYYY_MM_DD_HH_MM_SS); + } + + public static String dateTimeNow() { + return dateTimeNow(YYYYMMDDHHMMSS); + } + + public static String dateTimeNow(final String format) { + return parseDateToStr(format, new Date()); + } + + public static String dateTime(final Date date) { + return parseDateToStr(YYYY_MM_DD, date); + } + + public static String parseDateToStr(final String format, final Date date) { + return new SimpleDateFormat(format).format(date); + } + + public static Date dateTime(final String format, final String ts) { + try { + return new SimpleDateFormat(format).parse(ts); + } catch (ParseException e) { + LOGGER.error("ParseException error :{}",e.getMessage()); + return null; + } + } + + public static Date dateTime(){ + Calendar calendar = Calendar.getInstance(); + int year = calendar.get(Calendar.YEAR); + int month = calendar.get(Calendar.MONTH); + int day = calendar.get(Calendar.DATE); + calendar.set(year,month,day,0,0,0); + return calendar.getTime(); + } + + + public static Date date(){ + return new Date(); + } + + /** + * 日期型字符串转化为日期 格式 + */ + public static Date parseDate(Object str) { + if (str == null) { + return null; + } + try { + return org.apache.commons.lang3.time.DateUtils.parseDate(str.toString(), parsePatterns); + } catch (ParseException e) { + LOGGER.error("ParseException error :{}",e.getMessage()); + return null; + } + } + + /** + * 日期天数加减 + * + * @param date + * @param days + * @return + */ + public static Date addDays(final Date date, int days) { + Calendar instance = Calendar.getInstance(); + instance.setTime(date); + instance.add(Calendar.DATE, days); + return instance.getTime(); + } + + /** + * 获取服务器启动时间 + */ + public static Date getServerStartDate() { + long time = ManagementFactory.getRuntimeMXBean().getStartTime(); + return new Date(time); + } + + /** + * 计算相差天数 + */ + public static int differentDaysByMillisecond(Date date1, Date date2) { + return Math.abs((int) ((date2.getTime() - date1.getTime()) / (1000 * 3600 * 24))); + } + + /** + * 计算两个时间差 + */ + public static String getDatePoor(Date endDate, Date nowDate) { + long nd = 1000 * 24 * 60 * 60L; + long nh = 1000 * 60 * 60L; + long nm = 1000 * 60L; + // long ns = 1000; + // 获得两个时间的毫秒时间差异 + long diff = endDate.getTime() - nowDate.getTime(); + // 计算差多少天 + long day = diff / nd; + // 计算差多少小时 + long hour = diff % nd / nh; + // 计算差多少分钟 + long min = diff % nd % nh / nm; + // 计算差多少秒//输出结果 + // long sec = diff % nd % nh % nm / ns; + return day + "天" + hour + "小时" + min + "分钟"; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DifferUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DifferUtil.java new file mode 100644 index 00000000..26db5004 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DifferUtil.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +public class DifferUtil { + + public static Long differ(Long except, Long actual){ + if(except == null ){ + except = 0L; + } + if(actual == null){ + actual = 0L; + } + return actual-except; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IPUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IPUtil.java new file mode 100644 index 00000000..d11c7ffd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IPUtil.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import javax.servlet.http.HttpServletRequest; +import java.net.*; +import java.util.Enumeration; + +public class IPUtil { + + public static String getLocalIP() throws SocketException { + String localIP = null; + Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces(); + InetAddress ip = null; + while (allNetInterfaces.hasMoreElements()) { + NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement(); + Enumeration addresses = netInterface.getInetAddresses(); + while (addresses.hasMoreElements()) { + ip = (InetAddress) addresses.nextElement(); + if (ip != null && ip instanceof Inet4Address) { + localIP = ip.getHostAddress(); + if (!"127.0.0.1".equalsIgnoreCase(localIP)) { + return localIP; + } + } + } + } + return localIP; + } + + /** + * 获取当前网络ip + * @param request + * @return + */ + public static String getIpAddr(HttpServletRequest request) { + String ipAddress = request.getHeader("x-forwarded-for"); + if (ipAddress == null || ipAddress.isEmpty() || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getHeader("Proxy-Client-IP"); + } + if (ipAddress == null || ipAddress.isEmpty() || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getHeader("WL-Proxy-Client-IP"); + } + if (ipAddress == null || ipAddress.isEmpty() || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getRemoteAddr(); + if (ipAddress.equals("127.0.0.1") || ipAddress.equals("0:0:0:0:0:0:0:1")) { + //根据网卡取本机配置的IP + InetAddress inet = null; + try { + inet = InetAddress.getLocalHost(); + } catch (UnknownHostException e) { + e.printStackTrace(); + } + ipAddress = inet != null ? inet.getHostAddress() : null; + } + } + //对于通过多个代理的情况,第一个IP为客户端真实IP,多个IP按照','分割 + if (ipAddress != null && ipAddress.length() > 15) { //"***.***.***.***".length() = 15 + if (ipAddress.contains(",")) { + ipAddress = ipAddress.substring(0, ipAddress.indexOf(",")); + } + } + return ipAddress; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IpWhiteCheckUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IpWhiteCheckUtil.java new file mode 100644 index 00000000..7c2b4192 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IpWhiteCheckUtil.java @@ -0,0 +1,260 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.regex.Pattern; + +/** + * + * ip 白名单校验 + */ +public final class IpWhiteCheckUtil { + // IP的正则 + private static final Pattern pattern = Pattern + .compile("(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})\\." + "(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})\\." + + "(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})\\." + "(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})"); + public static final String DEFAULT_ALLOW_ALL_FLAG = "*";// 允许所有ip标志位 + public static final String DEFAULT_DENY_ALL_FLAG = "0"; // 禁止所有ip标志位 + + /** + * + * getAvaliIpList:(根据IP白名单设置获取可用的IP列表). + * + * @date 2017-4-17 下午02:50:20 + * @param allowIp + * @return + */ + private static Set getAvaliIpList(String allowIp) { + String[] splitRex = allowIp.split(";");// 拆分出白名单正则 + Set ipList = new HashSet<>(splitRex.length); + for (String allow : splitRex) { + if (allow.contains("*")) {// 处理通配符 * + String[] ips = allow.split("\\."); + String[] from = new String[] { "0", "0", "0", "0" }; + String[] end = new String[] { "255", "255", "255", "255" }; + List tem = new ArrayList<>(); + for (int i = 0; i < ips.length; i++) + if (ips[i].contains("*")) { + tem = complete(ips[i]); + from[i] = null; + end[i] = null; + } else { + from[i] = ips[i]; + end[i] = ips[i]; + } + + StringBuilder fromIP = new StringBuilder(); + StringBuilder endIP = new StringBuilder(); + for (int i = 0; i < 4; i++) + if (from[i] != null) { + fromIP.append(from[i]).append("."); + endIP.append(end[i]).append("."); + } else { + fromIP.append("[*]."); + endIP.append("[*]."); + } + fromIP.deleteCharAt(fromIP.length() - 1); + endIP.deleteCharAt(endIP.length() - 1); + + for (String s : tem) { + String ip = fromIP.toString().replace("[*]", s.split(";")[0]) + "-" + + endIP.toString().replace("[*]", s.split(";")[1]); + if (validate(ip)) { + ipList.add(ip); + } + } + } else if (allow.contains("/")) {// 处理 网段 xxx.xxx.xxx./24 + ipList.add(allow); + } else {// 处理单个 ip 或者 范围 + if (validate(allow)) { + ipList.add(allow); + } + } + + } + + return ipList; + } + + /** + * 对单个IP节点进行范围限定 + * + * @param arg + * @return 返回限定后的IP范围,格式为List[10;19, 100;199] + */ + private static List complete(String arg) { + List com = new ArrayList<>(); + int len = arg.length(); + if (len == 1) { + com.add("0;255"); + } else if (len == 2) { + String s1 = complete(arg, 1); + if (s1 != null) + com.add(s1); + String s2 = complete(arg, 2); + if (s2 != null) + com.add(s2); + } else { + String s1 = complete(arg, 1); + if (s1 != null) + com.add(s1); + } + return com; + } + + private static String complete(String arg, int length) { + String from = ""; + String end = ""; + if (length == 1) { + from = arg.replace("*", "0"); + end = arg.replace("*", "9"); + } else { + from = arg.replace("*", "00"); + end = arg.replace("*", "99"); + } + if (Integer.valueOf(from) > 255) + return null; + if (Integer.valueOf(end) > 255) + end = "255"; + return from + ";" + end; + } + + /** + * 在添加至白名单时进行格式校验 + * + * @param ip + * @return + */ + private static boolean validate(String ip) { + String[] temp = ip.split("-"); + for (String s : temp) + if (!pattern.matcher(s).matches()) { + return false; + } + return true; + } + + /** + * + * isPermited:(根据IP,及可用Ip列表来判断ip是否包含在白名单之中). + * + * @date 2017-4-17 下午03:01:03 + * @param ip + * @param ipList + * @return + */ + private static boolean isPermited(String ip, Set ipList) { + if (ipList.isEmpty() || ipList.contains(ip)) + return true; + for (String allow : ipList) { + if (allow.contains("-")) {// 处理 类似 192.168.0.0-192.168.2.1 + String[] tempAllow = allow.split("-"); + String[] from = tempAllow[0].split("\\."); + String[] end = tempAllow[1].split("\\."); + String[] tag = ip.split("\\."); + boolean check = true; + for (int i = 0; i < 4; i++) {// 对IP从左到右进行逐段匹配 + int s = Integer.parseInt(from[i]); + int t = Integer.parseInt(tag[i]); + int e = Integer.parseInt(end[i]); + if (!(s <= t && t <= e)) { + check = false; + break; + } + } + if (check) + return true; + } else if (allow.contains("/")) {// 处理 网段 xxx.xxx.xxx./24 + int splitIndex = allow.indexOf("/"); + // 取出子网段 + String ipSegment = allow.substring(0, splitIndex); // 192.168.3.0 + // 子网数 + String netmask = allow.substring(splitIndex + 1);// 24 + // ip 转二进制 + long ipLong = ipToLong(ip); + //子网二进制 + long maskLong=(2L<<32 -1) -(2L << Integer.valueOf(32-Integer.valueOf(netmask))-1); + // ip与和子网相与 得到 网络地址 + String calcSegment = longToIP(ipLong & maskLong); + // 如果计算得出网络地址和库中网络地址相同 则合法 + if(ipSegment.equals(calcSegment))return true; + } + } + return false; + } + + /** + * + * isPermited:(根据IP地址,及IP白名单设置规则判断IP是否包含在白名单). + * + * @date 2017-4-17 下午03:01:37 + * @param ip + * @param ipWhiteConfig + * @return + */ + public static boolean isPermited(String ip, String ipWhiteConfig) { + if(null == ipWhiteConfig || ipWhiteConfig.isEmpty()){ + //没有配置白名单,默认通过 + return true; + } + if (null == ip || ip.isEmpty()) + return false; + //ip格式不对 + if(!pattern.matcher(ip).matches())return false; + if (DEFAULT_ALLOW_ALL_FLAG.equals(ipWhiteConfig)) + return true; + if (DEFAULT_DENY_ALL_FLAG.equals(ipWhiteConfig)) + return false; + Set ipList = getAvaliIpList(ipWhiteConfig); + return isPermited(ip, ipList); + } + + private static long ipToLong(String strIP) { + long[] ip = new long[4]; + // 先找到IP地址字符串中.的位置 + int position1 = strIP.indexOf("."); + int position2 = strIP.indexOf(".", position1 + 1); + int position3 = strIP.indexOf(".", position2 + 1); + // 将每个.之间的字符串转换成整型 + ip[0] = Long.parseLong(strIP.substring(0, position1)); + ip[1] = Long.parseLong(strIP.substring(position1 + 1, position2)); + ip[2] = Long.parseLong(strIP.substring(position2 + 1, position3)); + ip[3] = Long.parseLong(strIP.substring(position3 + 1)); + return (ip[0] << 24) + (ip[1] << 16) + (ip[2] << 8) + ip[3]; + } + + // 将10进制整数形式转换成127.0.0.1形式的IP地址 + private static String longToIP(long longIP) { + StringBuilder sb = new StringBuilder(""); + // 直接右移24位 + sb.append(String.valueOf(longIP >>> 24)); + sb.append("."); + // 将高8位置0,然后右移16位 + sb.append(String.valueOf((longIP & 0x00FFFFFF) >>> 16)); + sb.append("."); + sb.append(String.valueOf((longIP & 0x0000FFFF) >>> 8)); + sb.append("."); + sb.append(String.valueOf(longIP & 0x000000FF)); + return sb.toString(); + } + + public static void main(String[] args) { + + System.out.println(IpWhiteCheckUtil.isPermited("127.0.0.1","192.168.4.17")); + String ipWhilte = + "1.168.1.1;" + //设置单个IP的白名单 // + // "192.*;" //设置ip通配符,对一个ip段进行匹配 + "192.168.3.17-192.168.3.38;" //设置一个IP范围 + +"192.168.4.0/24"; //設置一个网段 + System.out.println(IpWhiteCheckUtil.isPermited("1.168.1.1",ipWhilte)); //true + System.out.println(IpWhiteCheckUtil.isPermited("192.168.1.2",ipWhilte)); //false + System.out.println(IpWhiteCheckUtil.isPermited("192.168.3.16",ipWhilte)); //false + System.out.println(IpWhiteCheckUtil.isPermited("192.168.3.37",ipWhilte)); //true + System.out.println(IpWhiteCheckUtil.isPermited("192.168.4.1",ipWhilte));//true + + + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/JacksonUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/JacksonUtil.java new file mode 100644 index 00000000..d071aff8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/JacksonUtil.java @@ -0,0 +1,236 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.*; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.StringUtils; + +import java.io.File; +import java.io.IOException; +import java.text.SimpleDateFormat; +import java.util.List; + +/** + * @ClassName : JsonUtil + * @Description : jackson工具类 + * @Author : sky + * @Date: 2023-06-07 10:55 + */ +public class JacksonUtil { + + private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper(); + + private static final ObjectMapper OBJECT_MAPPER_SNAKE_CASE = new ObjectMapper(); + // 日期格式化 + private static final String STANDARD_FORMAT = "yyyy-MM-dd HH:mm:ss"; + + private final static Logger log = LoggerFactory.getLogger(JacksonUtil.class); + + static { + //对象的所有字段全部列入 + OBJECT_MAPPER.setSerializationInclusion(JsonInclude.Include.ALWAYS); + //取消默认转换timestamps形式 + OBJECT_MAPPER.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + //忽略空Bean转json的错误 + OBJECT_MAPPER.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + //所有的日期格式都统一为以下的样式,即yyyy-MM-dd HH:mm:ss + OBJECT_MAPPER.setDateFormat(new SimpleDateFormat(STANDARD_FORMAT)); + //忽略 在json字符串中存在,但是在java对象中不存在对应属性的情况。防止错误 + OBJECT_MAPPER.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + } + + static { + //对象的所有字段全部列入 + OBJECT_MAPPER_SNAKE_CASE.setSerializationInclusion(JsonInclude.Include.ALWAYS); + //取消默认转换timestamps形式 + OBJECT_MAPPER_SNAKE_CASE.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + //忽略空Bean转json的错误 + OBJECT_MAPPER_SNAKE_CASE.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + //所有的日期格式都统一为以下的样式,即yyyy-MM-dd HH:mm:ss + OBJECT_MAPPER_SNAKE_CASE.setDateFormat(new SimpleDateFormat(STANDARD_FORMAT)); + //忽略 在json字符串中存在,但是在java对象中不存在对应属性的情况。防止错误 + OBJECT_MAPPER_SNAKE_CASE.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + //转换为下划线 + OBJECT_MAPPER_SNAKE_CASE.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); + } + + private JacksonUtil() { + } + + public static ObjectMapper getInstance(){ + return OBJECT_MAPPER; + } + + /** + * 对象转Json格式字符串 + * + * @param obj 对象 + * @return Json格式字符串 + */ + public static String obj2String(T obj) { + if (obj == null) { + return null; + } + try { + return obj instanceof String ? (String) obj : OBJECT_MAPPER.writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 对象转file + * + * @param fileName + * @param obj + */ + public static void obj2File(String fileName, Object obj) { + if (obj == null) { + return; + } + try { + OBJECT_MAPPER.writeValue(new File(fileName), obj); + } catch (IOException e) { + e.printStackTrace(); + } + } + + /** + * 对象转Json格式字符串; 属性名从驼峰改为下划线形式 + * + * @param obj 对象 + * @return Json格式字符串 + */ + public static String obj2StringFieldSnakeCase(T obj) { + if (obj == null) { + return null; + } + try { + ObjectMapper objectMapper = OBJECT_MAPPER_SNAKE_CASE; + return obj instanceof String ? (String) obj : objectMapper.writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象; 属性名从下划线形式改为驼峰 + * + * @param str 要转换的字符串 + * @param clazz 自定义对象的class对象 + * @return 自定义对象 + */ + public static T string2ObjFieldLowerCamelCase(String str, Class clazz) { + if (StringUtils.isEmpty(str) || clazz == null) { + return null; + } + try { + ObjectMapper objectMapper = OBJECT_MAPPER_SNAKE_CASE; + return clazz.equals(String.class) ? (T) str : objectMapper.readValue(str, clazz); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象(List); 属性名从下划线形式改为驼峰 + * + * @param str 要转换的字符串 + * @param typeReference 自定义对象的typeReference List 对象 + * @return 自定义对象 + */ + public static List string2ListFieldLowerCamelCase(String str, TypeReference> typeReference) { + if (StringUtils.isEmpty(str) || typeReference == null) { + return null; + } + try { + ObjectMapper objectMapper = OBJECT_MAPPER_SNAKE_CASE; + return objectMapper.readValue(str, typeReference); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return null; + } + } + + /** + * 对象转Json格式字符串(格式化的Json字符串) + * + * @param obj 对象 + * @return 美化的Json格式字符串 + */ + public static String obj2StringPretty(T obj) { + if (obj == null) { + return null; + } + try { + return obj instanceof String ? (String) obj : OBJECT_MAPPER.writerWithDefaultPrettyPrinter().writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象 + * + * @param str 要转换的字符串 + * @param clazz 自定义对象的class对象 + * @return 自定义对象 + */ + public static T string2Obj(String str, Class clazz) { + if (StringUtils.isEmpty(str) || clazz == null) { + return null; + } + try { + return clazz.equals(String.class) ? (T) str : OBJECT_MAPPER.readValue(str, clazz); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义字段转为list + * + * @param str + * @param typeReference + * @param + * @return + */ + public static T string2Obj(String str, TypeReference typeReference) { + if (StringUtils.isEmpty(str) || typeReference == null) { + return null; + } + try { + return (T) (typeReference.getType().equals(String.class) ? str : OBJECT_MAPPER.readValue(str, typeReference)); + } catch (IOException e) { + log.warn("Parse String to Object error", e.getMessage()); + return null; + } + } + + public static T string2Obj(String str, Class collectionClazz, Class... elementClazzes) { + JavaType javaType = OBJECT_MAPPER.getTypeFactory().constructParametricType(collectionClazz, elementClazzes); + try { + return OBJECT_MAPPER.readValue(str, javaType); + } catch (IOException e) { + log.warn("Parse String to Object error : {}" + e.getMessage()); + return null; + } + } + + public static String parseArray(Object[] arguments) { + try { + return OBJECT_MAPPER.writeValueAsString(arguments); + } catch (JsonProcessingException e) { + log.warn("Parse String to Object error : {}" + e.getMessage()); + return ""; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/LogPrintUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/LogPrintUtil.java new file mode 100644 index 00000000..86ffacf3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/LogPrintUtil.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.slf4j.Logger; + +/** + * @ClassName : LogUtil + * @Description : 日志打印 + * @Author : sky + * @Date: 2022-07-28 16:11 + */ +public final class LogPrintUtil { + + + private LogPrintUtil() { + throw new UnsupportedOperationException(); + } + + /** + * 错误日志打印 + * + * @param log 执行器 + * @param message 自定义错误 + * @param e 异常 + */ + public static void logError(Logger log,String message, Exception e){ + log.info(message); + if (log.isDebugEnabled()) { + log.error("异常信息",e); + }else { + log.info("异常信息:",e); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/MD5Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/MD5Util.java new file mode 100644 index 00000000..d1df0f50 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/MD5Util.java @@ -0,0 +1,110 @@ +// package com.jiuyv.sptcc.agile.dataservice.utils; +// +// import javax.crypto.Cipher; +// import javax.crypto.SecretKeyFactory; +// import javax.crypto.spec.DESKeySpec; +// import javax.crypto.spec.IvParameterSpec; +// import java.security.Key; +// import java.security.MessageDigest; +// import java.security.NoSuchAlgorithmException; +// import java.security.spec.AlgorithmParameterSpec; +// import java.util.Base64; +// +// public class MD5Util { +// +// /** 向量(同时拥有向量和密匙才能解密),此向量必须是8byte,多少都报错 */ +// private final byte[] DESIV = new byte[] { 0x22, 0x54, 0x36, 110, 0x40, (byte) 0xac, (byte) 0xad, (byte) 0xdf }; +// /** 自定义密钥,个数不能太短,太短报错,过长,它默认只取前N位(N的具体值,大家另行查找资料) */ +// private final String deSkey = "datax-cloud"; +// /** 加密算法的参数接口 */ +// private AlgorithmParameterSpec iv = null; +// private Key key = null; +// private String CHARSET = "UTF-8"; +// +// private static volatile MD5Util instance; +// +// /** +// * 构造函数 +// * @throws Exception +// */ +// private MD5Util() throws Exception { +// // 设置密钥参数 +// DESKeySpec keySpec = new DESKeySpec(deSkey.getBytes(this.CHARSET)); +// // 设置向量 +// iv = new IvParameterSpec(DESIV); +// // 获得密钥工厂 +// SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES"); +// // 得到密钥对象 +// key = keyFactory.generateSecret(keySpec); +// } +// +// public static MD5Util getInstance() throws Exception { +// if(instance == null) { +// synchronized (MD5Util.class) { +// if(instance == null) { +// instance = new MD5Util(); +// } +// } +// } +// return instance; +// } +// +// /** +// * 加密 +// * @param data +// * @return +// * @throws Exception +// */ +// public String encode(String data) throws Exception { +// // 得到加密对象Cipher +// Cipher enCipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); +// // 设置工作模式为加密模式,给出密钥和向量 +// enCipher.init(Cipher.ENCRYPT_MODE, key, iv); +// byte[] pasByte = enCipher.doFinal(data.getBytes(this.CHARSET)); +// return Base64.getEncoder().encodeToString(pasByte); +// } +// +// /** +// * 解密 +// * @param data +// * @return +// * @throws Exception +// */ +// public String decode(String data) throws Exception { +// Cipher deCipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); +// deCipher.init(Cipher.DECRYPT_MODE, key, iv); +// //此处注意doFinal()的参数的位数必须是8的倍数,否则会报错(通过encode加密的字符串读出来都是8的倍数位,但写入文件再读出来,就可能因为读取的方式的问题,导致最后此处的doFinal()的参数的位数不是8的倍数) +// //此处必须用base64Decoder,若用data。getBytes()则获取的字符串的byte数组的个数极可能不是8的倍数,而且不与上面的BASE64Encoder对应(即使解密不报错也不会得到正确结果) +// byte[] pasByte = deCipher.doFinal(Base64.getDecoder().decode(data)); +// return new String(pasByte, this.CHARSET); +// } +// +// /** +// * 获取MD5的值,可用于对比校验 +// * @param sourceStr +// * @return +// */ +// private static String getMD5Value(String sourceStr) { +// String result = ""; +// try { +// MessageDigest md = MessageDigest.getInstance("MD5"); +// md.update(sourceStr.getBytes()); +// byte b[] = md.digest(); +// int i; +// StringBuffer buf = new StringBuffer(""); +// for (int offset = 0; offset < b.length; offset++) { +// i = b[offset]; +// if (i < 0) { +// i += 256; +// } +// if (i < 16) { +// buf.append("0"); +// } +// buf.append(Integer.toHexString(i)); +// } +// result = buf.toString(); +// } catch (NoSuchAlgorithmException e) { +// } +// return result; +// } +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/NamedParameterUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/NamedParameterUtil.java new file mode 100644 index 00000000..1925046c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/NamedParameterUtil.java @@ -0,0 +1,119 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.springframework.util.Assert; + +import java.util.*; + +/** + * 带参数sql处理工具类 + */ +public class NamedParameterUtil { + + private NamedParameterUtil() {} + + /** + * 定义特殊字符(增加最后的自定义的'}') + */ + private static final char[] PARAMETER_SEPARATORS = + new char[] {'"', '\'', ':', '&', ',', ';', '(', ')', '|', '=', '+', '-', '*', '%', '/', '\\', '<', '>', '^', '}'}; + + /** + * 对带参数sql的统计式封装,便于后续肢解拼装 + * @param originalSql + * @return + */ + public static ParsedSql parseSqlStatement(String originalSql) { + Assert.notNull(originalSql, "SQL must not be null"); + ParsedSql parsedSql = new ParsedSql(originalSql); + Set namedParameters = new HashSet(); + char[] sqlchars = originalSql.toCharArray(); + int namedParamCount = 0; + int unNamedParamCount = 0; + int totalParamCount = 0; + int i = 0; + while (i < sqlchars.length) { + char statement = sqlchars[i]; + if (statement == ':') { + int j = i + 1; + while (j < sqlchars.length && !isSeparatorsChar(sqlchars[j])) { + j++; + } + if (j - i > 1) { + String paramName = originalSql.substring(i + 1, j); + if (!namedParameters.contains(paramName)) { + namedParameters.add(paramName); + namedParamCount++; + } + parsedSql.addParamNames(paramName, i, j); + totalParamCount++; + } + i = j - 1; + } else if (statement == '?') { + unNamedParamCount++; + totalParamCount++; + } + i++; + } + parsedSql.setNamedParamCount(namedParamCount); + parsedSql.setUnnamedParamCount(unNamedParamCount); + parsedSql.setTotalParamCount(totalParamCount); + return parsedSql; + } + + /** + * 获得不带参数的sql,即替换参数为? + * @param parsedSql + * @param params + * @return + */ + public static String substituteNamedParams(ParsedSql parsedSql, Map params){ + String original = parsedSql.getOriginalSql(); + StringBuffer actual = new StringBuffer(""); + int lastIndex = 0; + List paramNames = parsedSql.getParamNames(); + for (int i = 0; i < paramNames.size(); i++) { + int[] indexs = parsedSql.getParamIndexs(i); + int startIndex = indexs[0]; + int endIndex = indexs[1]; + String paramName = paramNames.get(i); + actual.append(original.substring(lastIndex, startIndex)); + actual.append("?"); + lastIndex = endIndex; + } + actual.append(original.subSequence(lastIndex, original.length())); + return actual.toString(); + } + + /** + * 获得sql所需参数K,V + * @param parsedSql + * @param params + * @return + */ + public static LinkedHashMap buildValueArray(ParsedSql parsedSql, Map params){ + List paramNames = parsedSql.getParamNames(); + LinkedHashMap acceptedFilters = new LinkedHashMap<>(parsedSql.getTotalParamCount()); + if (parsedSql.getNamedParamCount() > 0 && parsedSql.getUnnamedParamCount() > 0) { + throw new RuntimeException("parameter方式与?方式不能混合!"); + } + for (int i = 0; i < paramNames.size(); i++) { + String keyName = paramNames.get(i); + if (params.containsKey(keyName)) { + acceptedFilters.put(keyName, params.get(keyName)); + } + } + return acceptedFilters; + } + + private static boolean isSeparatorsChar(char statement){ + if (Character.isWhitespace(statement)) { + return true; + } + for (int i = 0; i < PARAMETER_SEPARATORS.length; i++) { + if (statement == PARAMETER_SEPARATORS[i]) { + return true; + } + } + return false; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/PageUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/PageUtil.java new file mode 100644 index 00000000..74b37bd9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/PageUtil.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.io.Serializable; + +public class PageUtil implements Serializable { + + private static final long serialVersionUID = 1L; + + private static final Integer DEFAULT_MAX_COUNT = 5000; + + // 当前页码 + private Integer pageNum = 1; + // 分页条数 + private Integer pageSize = 20; + + public Integer getPageNum() { + return pageNum; + } + + public void setPageNum(Integer pageNum) { + this.pageNum = pageNum; + } + + public Integer getPageSize() { + return pageSize; + } + + public void setPageSize(Integer pageSize) { + this.pageSize = pageSize; + if (this.pageSize > 0) { + this.pageSize = this.pageSize > DEFAULT_MAX_COUNT ? DEFAULT_MAX_COUNT : this.pageSize; + } else { + this.pageSize = 20; + } + } + + public PageUtil(Integer pageNum, Integer pageSize) { + this.pageNum = pageNum; + this.pageSize = pageSize; + if (this.pageSize > 0) { + this.pageSize = this.pageSize > DEFAULT_MAX_COUNT ? DEFAULT_MAX_COUNT : this.pageSize; + } else { + this.pageSize = 20; + } + } + + public Integer getOffset() { + pageSize = pageSize == null ? 20 : pageSize; + pageNum = pageNum == null ? 1 : pageNum; + int offset = pageNum > 0 ? (pageNum - 1) * pageSize : 0; + return offset; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParamsUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParamsUtil.java new file mode 100644 index 00000000..ab2127d1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParamsUtil.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import org.apache.commons.lang3.StringUtils; + +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +/** + * @ClassName : ParamsUtil + * @Description : + * @Author : sky + * @Date: 2023-09-05 18:12 + */ +public class ParamsUtil { + + public static Map idempotent( String recToken) { + return idempotent(recToken,null); + } + + public static Map idempotent( String recToken, Long versionNum) { + Map params = new HashMap<>(); + if(StringUtils.isBlank(recToken)){ + throw new BaseException("RecToken 不能为空"); + } + if (StringUtils.isNotEmpty(recToken)) { + params.put("recToken", recToken); + } + if (versionNum != null) { + params.put("versionNum", versionNum); + } + return params; + } + + public static Map range(Range range){ + Map params = new HashMap<>(); + Date beginDate = range.getBeginDate(); + Date endDate = range.getEndDate(); + params.put("beginDate", beginDate); + params.put("endDate", endDate); + return params; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParsedSql.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParsedSql.java new file mode 100644 index 00000000..1b532130 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParsedSql.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +/** + * 此类封装NamedParameterSql + */ +public class ParsedSql implements Serializable { + + private static final long serialVersionUID=1L; + + private String originalSql; + //参数名 + private List paramNames = new ArrayList<>(); + //参数在sql中对应的位置 + private List paramIndexs = new ArrayList<>(); + //统计参数个数(不包含重复) + private int namedParamCount; + //统计sql中?的个数 + private int unnamedParamCount; + + private int totalParamCount; + + public ParsedSql(String originalSql){ + this.originalSql = originalSql; + } + + public List getParamNames() { + return paramNames; + } + + public void addParamNames(String paramName,int startIndex,int endIndex) { + paramNames.add(paramName); + paramIndexs.add(new int[]{startIndex,endIndex}); + } + + public int[] getParamIndexs(int position) { + return paramIndexs.get(position); + } + + public String getOriginalSql() { + return originalSql; + } + + public int getNamedParamCount() { + return namedParamCount; + } + + public void setNamedParamCount(int namedParamCount) { + this.namedParamCount = namedParamCount; + } + + public int getUnnamedParamCount() { + return unnamedParamCount; + } + + public void setUnnamedParamCount(int unnamedParamCount) { + this.unnamedParamCount = unnamedParamCount; + } + + public int getTotalParamCount() { + return totalParamCount; + } + + public void setTotalParamCount(int totalParamCount) { + this.totalParamCount = totalParamCount; + } + + @Override + public String toString() { + return "ParsedSql{" + + "originalSql='" + originalSql + '\'' + + ", paramNames=" + paramNames + + ", paramIndexs=" + paramIndexs + + ", namedParamCount=" + namedParamCount + + ", unnamedParamCount=" + unnamedParamCount + + ", totalParamCount=" + totalParamCount + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ServletUtils.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ServletUtils.java new file mode 100644 index 00000000..3a8e82f1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ServletUtils.java @@ -0,0 +1,113 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.springframework.web.context.request.RequestAttributes; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import java.io.IOException; +import java.rmi.AccessException; + + +/** + * 客户端工具类 + * + * @author admin + */ +public final class ServletUtils { + + private ServletUtils() throws AccessException { + throw new AccessException("ServletUtils construct not access"); + } + + /** + * 获取request + */ + public static HttpServletRequest getRequest() { + ServletRequestAttributes requestAttributes = getRequestAttributes(); + if (null != requestAttributes) { + return requestAttributes.getRequest(); + } + return null; + } + + /** + * 获取response + */ + public static HttpServletResponse getResponse() { + ServletRequestAttributes requestAttributes = getRequestAttributes(); + if (null != requestAttributes) { + return requestAttributes.getResponse(); + } + return null; + } + + /** + * 获取session + */ + public static HttpSession getSession() { + HttpServletRequest request = getRequest(); + if (null != request) { + return request.getSession(); + } + return null; + } + + public static ServletRequestAttributes getRequestAttributes() { + RequestAttributes attributes = RequestContextHolder.getRequestAttributes(); + if (null != attributes) { + return (ServletRequestAttributes) attributes; + } + return null; + } + + /** + * 将字符串渲染到客户端 + * + * @param response 渲染对象 + * @param string 待渲染的字符串 + */ + public static void renderString(HttpServletResponse response, String string) { + try { + response.setStatus(200); + response.setContentType("application/json"); + response.setCharacterEncoding("utf-8"); + response.getWriter().print(string); + } catch (IOException e) { + e.printStackTrace(); + } + } + + /** + * 写入图片信息 + * + */ + public static void renderImg(HttpServletResponse response, String fileType, + String fileName, byte[] fileContent) { + response.setContentType(getContentType(fileType)); + response.setHeader("Pragma", "No-cache"); + response.setHeader("Cache-Control", "no-cache"); + try { + response.getOutputStream().write(fileContent); + } catch (IOException e) { + e.printStackTrace(); + } + } + + public static String getContentType(String fileType) { + if ("gif".equalsIgnoreCase(fileType)) { + return "image/gif"; + } else if ("jpg".equalsIgnoreCase(fileType) || "jpeg".equalsIgnoreCase(fileType)) { + return "image/jpg"; + } else if ("png".equalsIgnoreCase(fileType)) { + return "image/png"; + } else if ("bmp".equalsIgnoreCase(fileType)) { + return "image/bmp"; + } else { + return "application/octet-stream"; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/SqlBuilderUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/SqlBuilderUtil.java new file mode 100644 index 00000000..5811b5cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/SqlBuilderUtil.java @@ -0,0 +1,296 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.Assert; +import org.springframework.util.CollectionUtils; + +import java.io.Serializable; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +/** + * 用于动态构造sql语句 + * ${ segment... } 为一个条件代码块 + * + * String sql = "select * from user where 1=1 + * ${ and username = :username } + * ${ and password = :password } + * ${ and age = :age }" + * + * Map filters = new HashMap(); + * filters.put("username", "yuwei"); + * filters.put("age", "12"); + * filters.put("id", "123"); + * + * SqlFilterResult result = SqlBuilderUtil.applyFilters(sql, filters); + * + * result.getSql()结果 + * select * from user where 1=1 and username=:username and age=:age + * + * result.getAcceptedFilters()结果 + * {username=yuwei} + * {age=12} + */ +public class SqlBuilderUtil { + + private static Logger logger = LoggerFactory.getLogger(SqlBuilderUtil.class); + + private SqlBuilderUtil() {} + + private static volatile SqlBuilderUtil instance; + + public static SqlBuilderUtil getInstance() { + if(instance == null) { + synchronized (SqlBuilderUtil.class) { + if(instance == null) { + instance = new SqlBuilderUtil(); + } + } + } + return instance; + } + + /** + * 空格 + */ + private final String SPACE = " "; + /** + * 冒号占位符 + */ + private final String COLON = ":"; + /** + * 问号占位符 + */ + private final String MARK = "?"; + /** + * where关键字 + */ + private final String WHERE_SQL = "WHERE"; + /** + * AND连接符 + */ + private final String WHERE_AND = "AND"; + /** + * where 1=1条件 + */ + private final String WHERE_INIT = WHERE_SQL + " 1 = 1"; + /** + * 左括号 + */ + private final String LEFT_BRACKET = "("; + /** + * 右括号 + */ + private final String RIGHT_BRACKET = ")"; + /** + * 百分号% + */ + private final String PERCENT_SIGN = "%"; + /** + * 单引号 ' + */ + private final String SINGLE_QUOTE = "'"; + /** + * 条件代码块标记开始 + */ + public final String MARK_KEY_START = "${"; + /** + * 条件代码块标记结束 + */ + public final String MARK_KEY_END = "}"; + + /** + * 拼接命名参数sql + * @param sql + * @param params + * @return + */ + public String buildHql(String sql, List params){ + Assert.notNull(sql, "SQL must not be null"); + return buildHql(new StringBuffer(sql), params); + } + + private String buildHql(StringBuffer sql, List params){ + if(CollectionUtils.isEmpty(params)){ + return sql.toString(); + } + sql.append(SPACE).append(WHERE_INIT); + for (int i = 0; i < params.size(); i++) { + ReqParam reqParam = params.get(i); + sql.append(SPACE).append(MARK_KEY_START).append(WHERE_AND).append(SPACE).append(reqParam.getParamName()); + if (DataApiEnum.WHERE_TYPE.LIKE.getType().equals(reqParam.getWhereType())) { + // LIKE '%' :username '%' ,:username 两边一定要有空格,如果没有空格,是查询不到数据的 + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(SPACE) + .append(COLON).append(reqParam.getParamName()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.LIKE_LEFT.getType().equals(reqParam.getWhereType())) { + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(SPACE) + .append(COLON).append(reqParam.getParamName()).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.LIKE_RIGHT.getType().equals(reqParam.getWhereType())) { + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(COLON).append(reqParam.getParamName()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.NULL.getType().equals(reqParam.getWhereType()) || DataApiEnum.WHERE_TYPE.NOT_NULL.getType().equals(reqParam.getWhereType())){ + // is null或is not null不需要参数值 + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.IN.getType().equals(reqParam.getWhereType())){ + // in (:ids) + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(LEFT_BRACKET) + .append(COLON).append(reqParam.getParamName()) + .append(RIGHT_BRACKET).append(MARK_KEY_END); + } else { + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(COLON).append(reqParam.getParamName()).append(MARK_KEY_END); + } + } + return sql.toString(); + } + + /** + * 根据入参动态构造sql语句 + * @param sql + * @param filters + * @return + */ + public SqlFilterResult applyFilters(String sql, Map filters){ + Assert.notNull(sql, "SQL must not be null"); + return applyFilters(new StringBuffer(sql), filters); + } + + private SqlFilterResult applyFilters(StringBuffer sql, Map filters){ + LinkedHashMap acceptedFilters = new LinkedHashMap<>(); + for (int i = 0, end = 0, start = sql.indexOf(MARK_KEY_START); ((start = sql.indexOf(MARK_KEY_START, end)) >= 0); i++) { + end = sql.indexOf(MARK_KEY_END, start); + // 封装该条件代码块中的NamedParameterSql + ParsedSql parsedSql = getSegmentParsedSql(sql, start, end); + if (parsedSql.getParamNames() == null || parsedSql.getParamNames().size() < 1){ + throw new IllegalArgumentException("Not key found in segment=" + sql.substring(start, end + MARK_KEY_END.length())); + } + // 判断输入参数filters中是否存在查询参数 + if (isAcceptedKeys(filters, parsedSql.getParamNames())) { + // 动态构造可执行的sql语句,去掉条件代码块两边的${ }标记符 + if (logger.isDebugEnabled()) { + logger.debug("The filter namedParameters=" + parsedSql.getParamNames() + " is accepted on segment=" + sql.substring(start, end + MARK_KEY_END.length())); + } + // 下面方法2选1可以获取条件代码块 + // select id, name from user where 1 = 1 and id = :id +// String segment = sql.substring(start + MARK_KEY_START.length(), end); + String segment = parsedSql.getOriginalSql(); + // 转换命名参数:为? + // select id, name from user where 1 = 1 and id = ? +// String segment = NamedParameterUtil.substituteNamedParams(parsedSql, filters); + // 获取传参中包含命名参数的数据 + LinkedHashMap linkAcceptedFilters = NamedParameterUtil.buildValueArray(parsedSql, filters); + acceptedFilters.putAll(linkAcceptedFilters); + sql.replace(start, end + MARK_KEY_END.length(), segment); + end = start + segment.length(); + } else { + // 抛弃该条件代码块 + if (logger.isDebugEnabled()) { + logger.debug("The filter namedParameters=" + parsedSql.getParamNames() + " is removed from the query on segment=" + sql.substring(start, end + MARK_KEY_END.length())); + } + sql.replace(start, end + MARK_KEY_END.length(), ""); + end = start; + } + } + return new SqlFilterResult(sql.toString(), acceptedFilters); + } + + /** + * 验证入参,并过滤值为空的入参 + */ + private boolean isAcceptedKeys(Map filters, List keys) { + for (int i = 0; i < keys.size(); i++) { + String key = keys.get(i); + Object value = getProperty(filters, key); + if (!isValuePopulated(value, true)) { + return false; + } + } + return true; + } + + /** + * 封装该条件代码块中的NamedParameterSql + */ + private ParsedSql getSegmentParsedSql(StringBuffer sql, int start, int end) { + String segment = sql.substring(start + MARK_KEY_START.length(), end); + ParsedSql parsedSql = NamedParameterUtil.parseSqlStatement(segment); + return parsedSql; + } + + /** + * 获取参数值 + * @param filters + * @param key + * @return + */ + private Object getProperty(Map filters, String key) { + if (filters == null || filters.isEmpty()) + return null; + return filters.get(key); + } + + /** + * 验证参数值是否空 + * @param value + * @param isRemoveEmpty + * @return + */ + private boolean isValuePopulated(Object value, boolean isRemoveEmpty) { + if (value == null) { + return false; + } + if (isRemoveEmpty) { +// return ObjectUtil.isNotEmpty(value); + return value != null; + } else { + return true; + } + } + + public static class SqlFilterResult implements Serializable { + + private static final long serialVersionUID=1L; + + private String sql; + + private Map acceptedFilters; + + public SqlFilterResult(String sql, Map acceptedFilters) { + this.setSql(sql); + this.setAcceptedFilters(acceptedFilters); + } + + public String getSql() { + return sql; + } + + public void setSql(String sql) { + this.sql = sql; + } + + public Map getAcceptedFilters() { + return acceptedFilters; + } + + public void setAcceptedFilters(Map acceptedFilters) { + this.acceptedFilters = acceptedFilters; + } + + @Override + public String toString() { + return "SqlFilterResult{" + + "sql='" + sql + '\'' + + ", acceptedFilters=" + acceptedFilters + + '}'; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/StringUtilT.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/StringUtilT.java new file mode 100644 index 00000000..0a81dddd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/StringUtilT.java @@ -0,0 +1,145 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.springframework.util.AntPathMatcher; + +import java.util.Collection; +import java.util.List; +import java.util.Map; + + +/** + * 字符串工具类 + * + * @author admin + */ +public final class StringUtilT { + + private StringUtilT() { + throw new UnsupportedOperationException(); + } + + /** + * 空字符串 + */ + private static final String NULLSTR = ""; + + /** + * 下划线 + */ + private static final char SEPARATOR = '_'; + + + /** + * 去空格 + */ + public static String trim(String str) { + return (str == null ? "" : str.trim()); + } + + /** + * 截取字符串 + * + * @param str 字符串 + * @param start 开始 + * @return 结果 + */ + public static String substring(final String str, int start) { + if (str == null) { + return NULLSTR; + } + + if (start < 0) { + start = str.length() + start; + } + + if (start < 0) { + start = 0; + } + if (start > str.length()) { + return NULLSTR; + } + + return str.substring(start); + } + + /** + * 截取字符串 + * + * @param str 字符串 + * @param start 开始 + * @param end 结束 + * @return 结果 + */ + public static String substring(final String str, int start, int end) { + if (str == null) { + return NULLSTR; + } + + if (end < 0) { + end = str.length() + end; + } + if (start < 0) { + start = str.length() + start; + } + + if (end > str.length()) { + end = str.length(); + } + + if (start > end) { + return NULLSTR; + } + + if (start < 0) { + start = 0; + } + if (end < 0) { + end = 0; + } + + return str.substring(start, end); + } + + + /** + * 驼峰转下划线命名 + */ + public static String toUnderScoreCase(String str) { + if (str == null) { + return null; + } + StringBuilder sb = new StringBuilder(); + // 前置字符是否大写 + boolean preCharIsUpperCase = true; + // 当前字符是否大写 + boolean curreCharIsUpperCase = true; + // 下一字符是否大写 + boolean nexteCharIsUpperCase = true; + for (int i = 0; i < str.length(); i++) { + char c = str.charAt(i); + if (i > 0) { + preCharIsUpperCase = Character.isUpperCase(str.charAt(i - 1)); + } else { + preCharIsUpperCase = false; + } + + curreCharIsUpperCase = Character.isUpperCase(c); + + if (i < (str.length() - 1)) { + nexteCharIsUpperCase = Character.isUpperCase(str.charAt(i + 1)); + } + + if (preCharIsUpperCase && curreCharIsUpperCase && !nexteCharIsUpperCase) { + sb.append(SEPARATOR); + } + if ((i != 0 && !preCharIsUpperCase) && curreCharIsUpperCase) { + sb.append(SEPARATOR); + } + sb.append(Character.toLowerCase(c)); + } + + return sb.toString(); + } + + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ThrowableUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ThrowableUtil.java new file mode 100644 index 00000000..0409437e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ThrowableUtil.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.io.PrintWriter; +import java.io.StringWriter; + +/** + * 异常工具 + */ +public class ThrowableUtil { + + /** + * 获取堆栈信息 + * @param throwable + * @return + */ + public static String getStackTrace(Throwable throwable){ + StringWriter sw = new StringWriter(); + PrintWriter pw = new PrintWriter(sw); + try { + throwable.printStackTrace(pw); + return sw.toString(); + } finally { + pw.close(); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/MD5.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/MD5.java new file mode 100644 index 00000000..74fbddfe --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/MD5.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.data; + +import org.apache.commons.codec.digest.DigestUtils; + +import java.math.BigInteger; +import java.nio.charset.StandardCharsets; +import java.security.MessageDigest; + +/** + * Description: md5加密解密 + */ +public class MD5 { + + public static String md5(String dateString) throws Exception { + MessageDigest md5 = null; + byte[] digest = MessageDigest.getInstance("md5").digest(dateString.getBytes(StandardCharsets.UTF_8)); + String md5code = new BigInteger(1, digest).toString(16); + // 如果生成数字未满32位,需要前面补0 + for (int i = 0; i < 32 - md5code.length(); i++) { + md5code = "0" + md5code; + } + return md5code; + } + + // ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。 + //(1)0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符), + // 如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等;通信专用字 符:SOH(文头)、EOT(文尾)、ACK(确认)等; + // ASCII值为8、9、10 和13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的 应用程序,而对文本显示有不同的影响。 + // 2)32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字。 + //(3)65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。 + public static String md5PlusSalt(String keyword) { + // md5加密 + String md5 = DigestUtils.md5Hex(keyword); + // md5+盐 + return getString(md5); + + } + private static String getString(String md5) { + char[] cArray = md5.toCharArray(); + for (int i = 0; i < cArray.length; i++) { + if (cArray[i] >= 48 && cArray[i] <= 57) { + cArray[i] = (char) (105 - cArray[i]); + + } + } + // 都可以使用 + return String.valueOf(cArray); + } + + // 解密+盐 + public static String md5MinusSalt(String md5) { + return getString(md5); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/PhoneUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/PhoneUtil.java new file mode 100644 index 00000000..d70422b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/PhoneUtil.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.data; + +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.MOBILEPHONECrypto; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; + +public class PhoneUtil { + + public static String decryptEcb(String phone) { + String s = Sm4Util.decryptEcb(phone); + if (null == s) { + return null; + } + MOBILEPHONECrypto mobilephoneCrypto = new MOBILEPHONECrypto(); + return mobilephoneCrypto.encrypt(s); + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java new file mode 100644 index 00000000..58cb47a9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java @@ -0,0 +1,84 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.sm; + + + +import org.bouncycastle.crypto.digests.SM3Digest; +import org.bouncycastle.crypto.macs.HMac; +import org.bouncycastle.crypto.params.KeyParameter; +import org.bouncycastle.jce.provider.BouncyCastleProvider; +import org.bouncycastle.pqc.math.linearalgebra.ByteUtils; + +import java.io.UnsupportedEncodingException; +import java.nio.charset.StandardCharsets; +import java.security.Security; +import java.util.Arrays; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:35 + */ +public class Sm3Util { + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + /** + * 无密钥加密 + * @param text + * @return + */ + public static String encrypt(String text) throws UnsupportedEncodingException { + String resultHexStr = ""; + byte[] srcData = text.getBytes(StandardCharsets.UTF_8); + byte[] resultHash = hash(srcData); + resultHexStr = ByteUtils.toHexString(resultHash); + return resultHexStr; + } + + public static byte[] hash(byte[] srcData){ + SM3Digest digest = new SM3Digest(); + digest.update(srcData, 0, srcData.length); + byte[] hash = new byte[digest.getDigestSize()]; + digest.doFinal(hash, 0); + return hash; + } + + /** + * 有密钥加密 + * @param key + * @param srcData + * @return + */ + public static byte[] hmac(byte[] key, byte[] srcData){ + KeyParameter keyParameter = new KeyParameter(key); + SM3Digest digest = new SM3Digest(); + HMac mac = new HMac(digest); + mac.init(keyParameter); + mac.update(srcData, 0, srcData.length); + byte[] result = new byte[mac.getMacSize()]; + mac.doFinal(result, 0); + return result; + } + + /** + * 校验 + * @param srcStr + * @param sm3HexString + * @return + * @throws UnsupportedEncodingException + */ + public static boolean verify(String srcStr, String sm3HexString) throws UnsupportedEncodingException { + boolean flag; + byte[] srcData = srcStr.getBytes(StandardCharsets.UTF_8); + byte[] sm3Hash = ByteUtils.fromHexString(sm3HexString); + byte[] newHash = hash(srcData); + flag = Arrays.equals(sm3Hash, newHash); + return flag; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java new file mode 100644 index 00000000..9e6204cf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java @@ -0,0 +1,120 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.sm; + + +import org.apache.commons.codec.DecoderException; +import org.apache.commons.codec.binary.Base64; +import org.apache.commons.codec.binary.Hex; +import org.bouncycastle.jce.provider.BouncyCastleProvider; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; + +import javax.crypto.*; +import javax.crypto.spec.SecretKeySpec; +import java.nio.charset.StandardCharsets; +import java.security.*; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:04 + */ +public final class Sm4Util { + + public static final String ALGORITHM_NAME = "SM4"; + public static final String ALGORITHM_NAME_ECB_PADDING = "SM4/ECB/PKCS7Padding"; + public static final String ALGORITHM_NAME_ECB_NOPADDING = "SM4/ECB/NoPadding"; + public static final String ALGORITHM_NAME_CBC_PADDING = "SM4/CBC/PKCS7Padding"; + public static final String ALGORITHM_NAME_CBC_NOPADDING = "SM4/CBC/NoPadding"; + /** + * 数据加密密钥,不要动 + */ + public static final String SM4_KEY = "886f918cb40cb5a5014402a6c00cda74"; + /** + * SM4算法目前只支持128位(即密钥16字节) + */ + public static final int DEFAULT_KEY_SIZE = 128; + private static final Logger LOGGER = LoggerFactory.getLogger(Sm4Util.class); + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + private Sm4Util() throws IllegalAccessException { + throw new IllegalAccessException("access not allow"); + } + + public static byte[] generateKey(int keySize) throws NoSuchAlgorithmException, NoSuchProviderException { + KeyGenerator kg = KeyGenerator.getInstance(ALGORITHM_NAME, BouncyCastleProvider.PROVIDER_NAME); + kg.init(keySize, new SecureRandom()); + return kg.generateKey().getEncoded(); + } + + public static byte[] encrypt_ECB_Padding(byte[] key, byte[] data) + throws InvalidKeyException, NoSuchAlgorithmException, NoSuchProviderException, + NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.ENCRYPT_MODE, key); + return cipher.doFinal(data); + } + + public static byte[] decrypt_ECB_Padding(byte[] key, byte[] cipherText) + throws IllegalBlockSizeException, BadPaddingException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.DECRYPT_MODE, key); + return cipher.doFinal(cipherText); + } + + + private static Cipher generateECBCipher(String algorithmName, int mode, byte[] key) + throws NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException, + InvalidKeyException { + Cipher cipher = Cipher.getInstance(algorithmName, BouncyCastleProvider.PROVIDER_NAME); + Key sm4Key = new SecretKeySpec(key, ALGORITHM_NAME); + cipher.init(mode, sm4Key); + return cipher; + } + + + public static String encryptEcb(String key, String text) throws DecoderException, NoSuchPaddingException, IllegalBlockSizeException, NoSuchAlgorithmException, BadPaddingException, InvalidKeyException, NoSuchProviderException { + return Base64.encodeBase64String(Sm4Util.encrypt_ECB_Padding(Hex.decodeHex(key), text.getBytes(StandardCharsets.UTF_8))); + } + + public static String decryptEcb(String key, String text) throws DecoderException, IllegalBlockSizeException, NoSuchPaddingException, BadPaddingException, NoSuchAlgorithmException, InvalidKeyException, NoSuchProviderException { + return new String(Sm4Util.decrypt_ECB_Padding(Hex.decodeHex(key), Base64.decodeBase64((text)))); + } + + public static String generateKeyHex() throws NoSuchAlgorithmException, NoSuchProviderException { + return Hex.encodeHexString(Sm4Util.generateKey(DEFAULT_KEY_SIZE)); + } + + + public static String encryptEcb(String text) { + try { + return encryptEcb(SM4_KEY, text); + } catch (Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("sm4 encryptEcb failed", e); + } else { + LOGGER.info("sm4 encryptEcb failed: {}", e.getMessage()); + } + return text; + } + } + + public static String decryptEcb(String text) { + try { + return decryptEcb(SM4_KEY, text); + } catch (Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("sm4 encryptEcb failed", e); + } else { + LOGGER.info("sm4 encryptEcb failed: {}", e.getMessage()); + } + return text; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/IdUtils.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/IdUtils.java new file mode 100644 index 00000000..6b6531fc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/IdUtils.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.uuid; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; + +/** + * ID生成器工具类 + * + * @author admin + */ +public class IdUtils { + + public static final String ZORE = "0"; + /** + * 获取随机UUID + * + * @return 随机UUID + */ + public static String randomUUID() { + return UUID.randomUUID().toString(); + } + + /** + * 简化的UUID,去掉了横线 + * + * @return 简化的UUID,去掉了横线 + */ + public static String simpleUUID() { + return UUID.randomUUID().toString(true); + } + + /** + * 获取随机UUID,使用性能更好的ThreadLocalRandom生成UUID + * + * @return 随机UUID + */ + public static String fastUUID() { + return UUID.fastUUID().toString(); + } + + /** + * 简化的UUID,去掉了横线,使用性能更好的ThreadLocalRandom生成UUID + * + * @return 简化的UUID,去掉了横线 + */ + public static String fastSimpleUUID() { + return UUID.fastUUID().toString(true).replace(Constants.LINE,Constants.SPACE); + } + + /** + * 生成一个10位随机码recToken + * + * @return + */ + public static String getNewRecToken() { + return fastSimpleUUID().substring(0, 10); + } + + /** + * 构建规则编码 + * @param seqNo 序列值 + * @param prefix 前缀 + * @param length 希望长度 + * @return + */ + public static String buildSeq(Long seqNo, String prefix,Integer length){ + + + if(seqNo == null||prefix ==null ){ + return ""; + } + StringBuilder str = new StringBuilder(); + str.append(prefix) + .append(seqNo); + + Integer reduce = length- str.length(); + if(reduce > 0 ) { + for (Integer i = 0; i < reduce; i++) { + str.insert(prefix.length(),ZORE); + } + } + return str.toString(); + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/UUID.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/UUID.java new file mode 100644 index 00000000..77b5f627 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/UUID.java @@ -0,0 +1,437 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.uuid; + +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.util.Random; +import java.util.concurrent.ThreadLocalRandom; + +/** + * 提供通用唯一识别码(universally unique identifier)(UUID)实现 + * + * @author admin + */ +public final class UUID implements java.io.Serializable, Comparable { + private static final long serialVersionUID = -1185015143654744140L; + /** + * 此UUID的最高64有效位 + */ + private final long mostSigBits; + /** + * 此UUID的最低64有效位 + */ + private final long leastSigBits; + + /** + * 私有构造 + * + * @param data 数据 + */ + private UUID(byte[] data) { + long msb = 0; + long lsb = 0; + assert data.length == 16 : "data must be 16 bytes in length"; + for (int i = 0; i < 8; i++) { + msb = (msb << 8) | (data[i] & 0xff); + } + for (int i = 8; i < 16; i++) { + lsb = (lsb << 8) | (data[i] & 0xff); + } + this.mostSigBits = msb; + this.leastSigBits = lsb; + } + + /** + * 使用指定的数据构造新的 UUID。 + * + * @param mostSigBits 用于 {@code UUID} 的最高有效 64 位 + * @param leastSigBits 用于 {@code UUID} 的最低有效 64 位 + */ + public UUID(long mostSigBits, long leastSigBits) { + this.mostSigBits = mostSigBits; + this.leastSigBits = leastSigBits; + } + + /** + * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的本地线程伪随机数生成器生成该 UUID。 + * + * @return 随机生成的 {@code UUID} + */ + public static UUID fastUUID() { + return randomUUID(false); + } + + /** + * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的强伪随机数生成器生成该 UUID。 + * + * @return 随机生成的 {@code UUID} + */ + public static UUID randomUUID() { + return randomUUID(true); + } + + /** + * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的强伪随机数生成器生成该 UUID。 + * + * @param isSecure 是否使用{@link SecureRandom}如果是可以获得更安全的随机码,否则可以得到更好的性能 + * @return 随机生成的 {@code UUID} + */ + public static UUID randomUUID(boolean isSecure) { + final Random ng = isSecure ? Holder.numberGenerator : getRandom(); + + byte[] randomBytes = new byte[16]; + ng.nextBytes(randomBytes); + randomBytes[6] &= 0x0f; /* clear version */ + randomBytes[6] |= 0x40; /* set to version 4 */ + randomBytes[8] &= 0x3f; /* clear variant */ + randomBytes[8] |= 0x80; /* set to IETF variant */ + return new UUID(randomBytes); + } + + /** + * 根据指定的字节数组获取类型 3(基于名称的)UUID 的静态工厂。 + * + * @param name 用于构造 UUID 的字节数组。 + * @return 根据指定数组生成的 {@code UUID} + */ + public static UUID nameUUIDFromBytes(byte[] name) { + MessageDigest md; + try { + md = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException nsae) { + throw new InternalError("MD5 not supported"); + } + byte[] md5Bytes = md.digest(name); + md5Bytes[6] &= 0x0f; /* clear version */ + md5Bytes[6] |= 0x30; /* set to version 3 */ + md5Bytes[8] &= 0x3f; /* clear variant */ + md5Bytes[8] |= 0x80; /* set to IETF variant */ + return new UUID(md5Bytes); + } + + /** + * 根据 {@link #toString()} 方法中描述的字符串标准表示形式创建{@code UUID}。 + * + * @param name 指定 {@code UUID} 字符串 + * @return 具有指定值的 {@code UUID} + * @throws IllegalArgumentException 如果 name 与 {@link #toString} 中描述的字符串表示形式不符抛出此异常 + */ + public static UUID fromString(String name) { + String[] components = name.split("-"); + if (components.length != 5) { + throw new IllegalArgumentException("Invalid UUID string: " + name); + } + for (int i = 0; i < 5; i++) { + components[i] = "0x" + components[i]; + } + + long mostSigBits = Long.decode(components[0]).longValue(); + mostSigBits <<= 16; + mostSigBits |= Long.decode(components[1]).longValue(); + mostSigBits <<= 16; + mostSigBits |= Long.decode(components[2]).longValue(); + + long leastSigBits = Long.decode(components[3]).longValue(); + leastSigBits <<= 48; + leastSigBits |= Long.decode(components[4]).longValue(); + + return new UUID(mostSigBits, leastSigBits); + } + + /** + * 返回指定数字对应的hex值 + * + * @param val 值 + * @param digits 位 + * @return 值 + */ + private static String digits(long val, int digits) { + long hi = 1L << (digits * 4); + return Long.toHexString(hi | (val & (hi - 1))).substring(1); + } + + /** + * 获取{@link SecureRandom},类提供加密的强随机数生成器 (RNG) + * + * @return {@link SecureRandom} + */ + public static SecureRandom getSecureRandom() { + try { + return SecureRandom.getInstance("SHA1PRNG"); + } catch (NoSuchAlgorithmException e) { + throw new RuntimeException(""); + } + } + + /** + * 获取随机数生成器对象
+ * ThreadLocalRandom是JDK 7之后提供并发产生随机数,能够解决多个线程发生的竞争争夺。 + * + * @return {@link ThreadLocalRandom} + */ + public static ThreadLocalRandom getRandom() { + return ThreadLocalRandom.current(); + } + + /** + * 返回此 UUID 的 128 位值中的最低有效 64 位。 + * + * @return 此 UUID 的 128 位值中的最低有效 64 位。 + */ + public long getLeastSignificantBits() { + return leastSigBits; + } + + /** + * 返回此 UUID 的 128 位值中的最高有效 64 位。 + * + * @return 此 UUID 的 128 位值中最高有效 64 位。 + */ + public long getMostSignificantBits() { + return mostSigBits; + } + + /** + * 与此 {@code UUID} 相关联的版本号. 版本号描述此 {@code UUID} 是如何生成的。 + *

+ * 版本号具有以下含意: + *

    + *
  • 1 基于时间的 UUID + *
  • 2 DCE 安全 UUID + *
  • 3 基于名称的 UUID + *
  • 4 随机生成的 UUID + *
+ * + * @return 此 {@code UUID} 的版本号 + */ + public int version() { + // Version is bits masked by 0x000000000000F000 in MS long + return (int) ((mostSigBits >> 12) & 0x0f); + } + + /** + * 与此 {@code UUID} 相关联的变体号。变体号描述 {@code UUID} 的布局。 + *

+ * 变体号具有以下含意: + *

    + *
  • 0 为 NCS 向后兼容保留 + *
  • 2 IETF RFC 4122(Leach-Salz), 用于此类 + *
  • 6 保留,微软向后兼容 + *
  • 7 保留供以后定义使用 + *
+ * + * @return 此 {@code UUID} 相关联的变体号 + */ + public int variant() { + // This field is composed of a varying number of bits. + // 0 - - Reserved for NCS backward compatibility + // 1 0 - The IETF aka Leach-Salz variant (used by this class) + // 1 1 0 Reserved, Microsoft backward compatibility + // 1 1 1 Reserved for future definition. + return (int) ((leastSigBits >>> (64 - (leastSigBits >>> 62))) & (leastSigBits >> 63)); + } + + /** + * 与此 UUID 相关联的时间戳值。 + * + *

+ * 60 位的时间戳值根据此 {@code UUID} 的 time_low、time_mid 和 time_hi 字段构造。
+ * 所得到的时间戳以 100 毫微秒为单位,从 UTC(通用协调时间) 1582 年 10 月 15 日零时开始。 + * + *

+ * 时间戳值仅在在基于时间的 UUID(其 version 类型为 1)中才有意义。
+ * 如果此 {@code UUID} 不是基于时间的 UUID,则此方法抛出 UnsupportedOperationException。 + * + * @throws UnsupportedOperationException 如果此 {@code UUID} 不是 version 为 1 的 UUID。 + */ + public long timestamp() throws UnsupportedOperationException { + checkTimeBase(); + return (mostSigBits & 0x0FFFL) << 48// + | ((mostSigBits >> 16) & 0x0FFFFL) << 32// + | mostSigBits >>> 32; + } + + /** + * 与此 UUID 相关联的时钟序列值。 + * + *

+ * 14 位的时钟序列值根据此 UUID 的 clock_seq 字段构造。clock_seq 字段用于保证在基于时间的 UUID 中的时间唯一性。 + *

+ * {@code clockSequence} 值仅在基于时间的 UUID(其 version 类型为 1)中才有意义。 如果此 UUID 不是基于时间的 UUID,则此方法抛出 + * UnsupportedOperationException。 + * + * @return 此 {@code UUID} 的时钟序列 + * @throws UnsupportedOperationException 如果此 UUID 的 version 不为 1 + */ + public int clockSequence() throws UnsupportedOperationException { + checkTimeBase(); + return (int) ((leastSigBits & 0x3FFF000000000000L) >>> 48); + } + + /** + * 与此 UUID 相关的节点值。 + * + *

+ * 48 位的节点值根据此 UUID 的 node 字段构造。此字段旨在用于保存机器的 IEEE 802 地址,该地址用于生成此 UUID 以保证空间唯一性。 + *

+ * 节点值仅在基于时间的 UUID(其 version 类型为 1)中才有意义。
+ * 如果此 UUID 不是基于时间的 UUID,则此方法抛出 UnsupportedOperationException。 + * + * @return 此 {@code UUID} 的节点值 + * @throws UnsupportedOperationException 如果此 UUID 的 version 不为 1 + */ + public long node() throws UnsupportedOperationException { + checkTimeBase(); + return leastSigBits & 0x0000FFFFFFFFFFFFL; + } + + /** + * 返回此{@code UUID} 的字符串表现形式。 + * + *

+ * UUID 的字符串表示形式由此 BNF 描述: + * + *

+     * {@code
+     * UUID                   = ----
+     * time_low               = 4*
+     * time_mid               = 2*
+     * time_high_and_version  = 2*
+     * variant_and_sequence   = 2*
+     * node                   = 6*
+     * hexOctet               = 
+     * hexDigit               = [0-9a-fA-F]
+     * }
+     * 
+ * + * + * + * @return 此{@code UUID} 的字符串表现形式 + * @see #toString(boolean) + */ + @Override + public String toString() { + return toString(false); + } + + /** + * 返回此{@code UUID} 的字符串表现形式。 + * + *

+ * UUID 的字符串表示形式由此 BNF 描述: + * + *

+     * {@code
+     * UUID                   = ----
+     * time_low               = 4*
+     * time_mid               = 2*
+     * time_high_and_version  = 2*
+     * variant_and_sequence   = 2*
+     * node                   = 6*
+     * hexOctet               = 
+     * hexDigit               = [0-9a-fA-F]
+     * }
+     * 
+ * + * + * + * @param isSimple 是否简单模式,简单模式为不带'-'的UUID字符串 + * @return 此{@code UUID} 的字符串表现形式 + */ + public String toString(boolean isSimple) { + final StringBuilder builder = new StringBuilder(isSimple ? 32 : 36); + // time_low + builder.append(digits(mostSigBits >> 32, 8)); + if (!isSimple) { + builder.append('-'); + } + // time_mid + builder.append(digits(mostSigBits >> 16, 4)); + if (!isSimple) { + builder.append('-'); + } + // time_high_and_version + builder.append(digits(mostSigBits, 4)); + if (!isSimple) { + builder.append('-'); + } + // variant_and_sequence + builder.append(digits(leastSigBits >> 48, 4)); + if (!isSimple) { + builder.append('-'); + } + // node + builder.append(digits(leastSigBits, 12)); + + return builder.toString(); + } + + // Comparison Operations + + /** + * 返回此 UUID 的哈希码。 + * + * @return UUID 的哈希码值。 + */ + @Override + public int hashCode() { + long hilo = mostSigBits ^ leastSigBits; + return ((int) (hilo >> 32)) ^ (int) hilo; + } + + // ------------------------------------------------------------------------------------------------------------------- + // Private method start + + /** + * 将此对象与指定对象比较。 + *

+ * 当且仅当参数不为 {@code null}、而是一个 UUID 对象、具有与此 UUID 相同的 varriant、包含相同的值(每一位均相同)时,结果才为 {@code true}。 + * + * @param obj 要与之比较的对象 + * @return 如果对象相同,则返回 {@code true};否则返回 {@code false} + */ + @Override + public boolean equals(Object obj) { + if ((null == obj) || (obj.getClass() != UUID.class)) { + return false; + } + UUID id = (UUID) obj; + return (mostSigBits == id.mostSigBits && leastSigBits == id.leastSigBits); + } + + /** + * 将此 UUID 与指定的 UUID 比较。 + * + *

+ * 如果两个 UUID 不同,且第一个 UUID 的最高有效字段大于第二个 UUID 的对应字段,则第一个 UUID 大于第二个 UUID。 + * + * @param val 与此 UUID 比较的 UUID + * @return 在此 UUID 小于、等于或大于 val 时,分别返回 -1、0 或 1。 + */ + @Override + public int compareTo(UUID val) { + // The ordering is intentionally set up so that the UUIDs + // can simply be numerically compared as two numbers + return (this.mostSigBits < val.mostSigBits ? -1 : // + (this.mostSigBits > val.mostSigBits ? 1 : // + (this.leastSigBits < val.leastSigBits ? -1 : // + (this.leastSigBits > val.leastSigBits ? 1 : // + 0)))); + } + + /** + * 检查是否为time-based版本UUID + */ + private void checkTimeBase() { + if (version() != 1) { + throw new UnsupportedOperationException("Not a time-based UUID"); + } + } + + /** + * SecureRandom 的单例 + */ + private static class Holder { + static final SecureRandom numberGenerator = getSecureRandom(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MapMailMergeDataSource.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MapMailMergeDataSource.java new file mode 100644 index 00000000..aef2d8ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MapMailMergeDataSource.java @@ -0,0 +1,91 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.word; + +import com.aspose.words.IMailMergeDataSource; +import com.aspose.words.ref.Ref; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class MapMailMergeDataSource implements IMailMergeDataSource { + + private final List> dataList; + + private int index; + + /** + * word模板中的«TableStart:tableName»«TableEnd:tableName»对应 + */ + private String tableName = null; + + /** + * @param dataList 数据集 + * @param tableName 与模板中的Name对应 + */ + public MapMailMergeDataSource(List> dataList, String tableName) { + this.dataList = dataList; + this.tableName = tableName; + index = -1; + } + + /** + * @param data 单个数据集 + * @param tableName 与模板中的Name对应 + */ + public MapMailMergeDataSource(Map data, String tableName) { + this.dataList = new ArrayList<>(); + this.dataList.add(data); + this.tableName = tableName; + index = -1; + } + + /** + * 获取结果集总数 + * + * @return + */ + private int getCount() { + return this.dataList.size(); + } + + @Override + public IMailMergeDataSource getChildDataSource(String arg0) + throws Exception { + return null; + } + + @Override + public String getTableName() throws Exception { + return this.tableName; + } + + /** + * 实现接口 + * 获取当前index指向数据行的数据 + * 将数据存入args数组中即可 + * + * @return ***返回false则不绑定数据*** + */ + @Override + public boolean getValue(String key, Ref args) throws Exception { + if (index < 0 || index >= this.getCount()) { + return false; + } + if (args != null) { + args.set(this.dataList.get(index).get(key)); + return true; + } else { + return false; + } + } + + /** + * 实现接口 + * 判断是否还有下一条记录 + */ + @Override + public boolean moveNext() throws Exception { + index += 1; + return index < this.getCount(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MergeDataSource.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MergeDataSource.java new file mode 100644 index 00000000..71f5a5cd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MergeDataSource.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.word; + +import com.aspose.words.Document; +import com.aspose.words.MailMerge; + +import java.util.List; +import java.util.Map; + +public class MergeDataSource { + + /** + * word模板普通数据填充 + * @param name + * @param value + * @param modelPath + * @return + * @throws Exception + */ + public Document load(String[] name, Object[] value, String modelPath) throws Exception { + Document doc = new Document(modelPath); + // 这里可以做特殊字段处理(如:图片插入、字符对应的特殊符号[https://wenku.baidu.com/view/81b41244336c1eb91a375dcb.html]) +// DocumentBuilder builder = new DocumentBuilder(doc); +// builder.moveToMergeField(key); +// builder.insertImage((BufferedImage) value); + MailMerge merge = doc.getMailMerge(); + merge.execute(name, value); + return doc; + } + + + /** + * word模板里有集合的表格填充 + * @param name + * @param value + * @param modelPath + * @param dataList + * @return + * @throws Exception + */ + public Document load(String[] name, Object[] value, String modelPath, List> dataList, String tableName) throws Exception { + Document doc = new Document(modelPath); + MailMerge merge = doc.getMailMerge(); + merge.execute(name, value); + merge.executeWithRegions(new MapMailMergeDataSource(dataList, tableName)); + return doc; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/WordUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/WordUtil.java new file mode 100644 index 00000000..245a514b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/WordUtil.java @@ -0,0 +1,300 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.word; + +import com.aspose.words.Shape; +import com.aspose.words.*; +import com.jiuyv.sptcc.agile.dataservice.utils.LogPrintUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.awt.*; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.util.List; +import java.util.Map; + +public final class WordUtil { + + private static final Logger log = LoggerFactory.getLogger(WordUtil.class); + private WordUtil() {} + private static volatile WordUtil instance; + + public static WordUtil getInstance() { + if(instance == null) { + synchronized (WordUtil.class) { + if(instance == null) { + instance = new WordUtil(); + } + } + } + return instance; + } + + /** + * 去除水印 + */ + static { + String license = + "\n" + + " \n" + + " \n" + + " Aspose.Cells for Java\n" + + " Aspose.Words for Java\n" + + " Aspose.Slides for Java\n" + + " \n" + + " Enterprise\n" + + " 20991231\n" + + " 20991231\n" + + " 8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7\n" + + " \n" + + " datax\n" + + ""; + try { + new License().setLicense(new ByteArrayInputStream(license.getBytes(StandardCharsets.UTF_8))); + } catch (Exception e) { + LogPrintUtil.logError(log,"去除水印报错",e); + } + } + + /** + * 获取文档 + * + * @param fileName 模板文件 F:\模板.docx + * @return + * @throws Exception + */ + public Document getDocument(String fileName) throws Exception { + return new Document(fileName); + } + + /** + * 获取文档 + * + * @param inputStream 模板文件输入流 + * @return + * @throws Exception + */ + public Document getDocument(InputStream inputStream) throws Exception { + return new Document(inputStream); + } + + /** + * 普通数据模板 返回缓冲输入流 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @return 缓冲输入流 供controller层下载 + * @throws Exception + */ + public ByteArrayInputStream fillWordData(String[] name, Object[] value, String modelPath) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + doc.save(bos, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + return new ByteArrayInputStream(bos.toByteArray()); + } + + /** + * 普通数据模板 直接保存到指定位置 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @param destPath 保存文件 F:\测试.docx + * @throws Exception + */ + public void fillWordData(String[] name, Object[] value, String modelPath, String destPath) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath); + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } + + /** + * 带集合的数据模板 返回缓冲输入流 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @param dataList 集合数据 + * @param tableName 集合名称 + * @throws Exception + */ + public ByteArrayInputStream fillWordListData(String[] name, Object[] value, String modelPath, List> dataList, String tableName) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath, dataList, tableName); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + doc.save(bos, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + return new ByteArrayInputStream(bos.toByteArray()); + } + + /** + * 带集合的数据模板 直接保存到指定位置 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @param destPath 保存文件 F:\测试.docx + * @param dataList 集合数据 + * @param tableName 集合名称 + * @throws Exception + */ + public void fillWordListData(String[] name, Object[] value, String modelPath, String destPath, List> dataList, String tableName) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath, dataList, tableName); + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } + + /** + * word转pdf + * @param srcPath 文件路径 F:\\test\\审批流提交.docx + * @param destPath 目标路径 F:\\test\\20200420.pdf + * @throws Exception + */ + public void word2pdf(String srcPath, String destPath) throws Exception { + // 转换开始前时间 + long old = System.currentTimeMillis(); + // 要转换的word文档的路径 + Document doc = new Document(srcPath); + // 全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF, EPUB, XPS, SWF 相互转换 + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.PDF)); + // 转换结束后时间 + long now = System.currentTimeMillis(); + log.info("共耗时:{}毫秒",(now-old)); + } + + /** + * 创建空文档 + * + * @param destPath 文件路径 F:\\test\\审批流提交.docx + * @return + */ + public void createWord(String destPath) throws Exception { + Document doc = new Document(); + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } + + /** + * 加水印方法 + * + * @param doc word文件流 + * @param watermarkText 水印内容 + */ + public void insertWatermarkText(Document doc, String watermarkText) throws Exception { + Shape watermark = new Shape(doc, ShapeType.TEXT_PLAIN_TEXT); + watermark.setName("WaterMark"); + watermark.getTextPath().setText(watermarkText); + watermark.getTextPath().setFontFamily("Arial"); + watermark.setWidth(500); + watermark.setHeight(100); + watermark.setRotation(-40); + watermark.getFill().setColor(Color.GRAY); + watermark.setStrokeColor(Color.GRAY); + watermark.setRelativeHorizontalPosition(RelativeHorizontalPosition.PAGE); + watermark.setRelativeVerticalPosition(RelativeVerticalPosition.PAGE); + watermark.setWrapType(WrapType.NONE); + watermark.setVerticalAlignment(VerticalAlignment.CENTER); + watermark.setHorizontalAlignment(HorizontalAlignment.CENTER); + Paragraph watermarkPara = new Paragraph(doc); + watermarkPara.appendChild(watermark); + for (Section sect : doc.getSections()) { + insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_PRIMARY); + insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_FIRST); + insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_EVEN); + } + } + + private void insertWatermarkIntoHeader(Paragraph watermarkPara, Section sect, int headerType) { + HeaderFooter header = sect.getHeadersFooters().getByHeaderFooterType(headerType); + if (header == null) { + header = new HeaderFooter(sect.getDocument(), headerType); + sect.getHeadersFooters().add(header); + } + header.appendChild(watermarkPara.deepClone(true)); + } + + public static void main(String[] args) throws Exception { + /** + * private static volatile WordUtil instance; + * + * public static WordUtil getInstance() { + * if(instance == null) { + * synchronized (WordUtil.class) { + * if(instance == null) { + * instance = new WordUtil(); + * } + * } + * } + * return instance; + * } + */ +// Map map = new HashMap<>(); +// map.put("companyName", "测试"); +// map.put("totalSalary", new BigDecimal("12.34")); +// List> list = new ArrayList<>(); +// Map map1 = new HashMap<>(); +// map1.put("id", "1"); +// map1.put("name", "测试1"); +// map1.put("age", 12); +// map1.put("sex", "男"); +// map1.put("salary", new BigDecimal("5.0")); +// list.add(map1); +// Map map2 = new HashMap<>(); +// map2.put("id", "2"); +// map2.put("name", "测试2"); +// map2.put("age", 14); +// map2.put("sex", "女"); +// map2.put("salary", new BigDecimal("7.34")); +// list.add(map2); +// List objects1 = new ArrayList<>(); +// List objects2 = new ArrayList<>(); +// for(Map.Entry entry : map.entrySet()){ +// objects1.add(entry.getKey()); +// objects2.add(entry.getValue()); +// } +// WordUtil.getInstance().fillWordListData(objects1.toArray(new String[objects1.size()]), objects2.toArray(new Object[objects2.size()]), "F:\\test\\模板.docx", "F:\\test\\123.docx", list, "workerList"); +// WordUtil.getInstance().word2pdf("F:\\test.docx", "F:\\20200420.pdf"); +// +// // 用户表(子表) TableStart:UserList TableEnd:UserList +// DataTable userTable = new DataTable("UserList"); +// userTable.getColumns().add("id"); +// userTable.getColumns().add("name"); +// userTable.getColumns().add("age"); +// userTable.getColumns().add("sex"); +// userTable.getColumns().add("salary"); +// for (int i = 1; i < 3; i++) { +// DataRow row = userTable.newRow(); +// row.set(0, i); +// row.set(1, "name" + i); +// row.set(2, "age" + i); +// row.set(3, "sex" + i); +// row.set(4, "salary" + i); +// userTable.getRows().add(row); +// } +// // 分数表(子表) TableStart:ScoreList TableEnd:ScoreList +// DataTable scoreTable = new DataTable("ScoreList"); +// scoreTable.getColumns().add("id"); +// scoreTable.getColumns().add("uid"); +// scoreTable.getColumns().add("score"); +// for (int i = 1; i < 3; i++) { +// DataRow row = scoreTable.newRow(); +// row.set(0, i); +// row.set(1, i); +// row.set(2, 10*i); +// scoreTable.getRows().add(row); +// } +// // 提供数据源 +// DataSet dataSet = new DataSet(); +// dataSet.getTables().add(userTable); +// dataSet.getTables().add(scoreTable); +// DataRelation dataRelation = new DataRelation("UserScoreRelation", userTable.getColumns().get("id"), scoreTable.getColumns().get("uid")); +// dataSet.getRelations().add(dataRelation); +// // 合并模版 +// Document doc = new Document("F:\\test.docx"); +// //提供数据源 +// String[] fieldNames = new String[] {"name", "address"}; +// Object[] fieldValues = new Object[] {"张三", "陕西咸阳"}; +// //合并模版,相当于页面的渲染 +// MailMerge mailMerge = doc.getMailMerge(); +// mailMerge.execute(fieldNames, fieldValues); +// mailMerge.executeWithRegions(dataSet); +// doc.save("F:\\test_r.docx", SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/application-default.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/application-default.yml new file mode 100644 index 00000000..6fdc0e25 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/application-default.yml @@ -0,0 +1,57 @@ +server: + port: 18090 +spring: + # 服务模块 + devtools: + restart: + # 热部署开关 + enabled: true + datasource: + driver-class-name: org.postgresql.Driver + url: jdbc:postgresql://172.16.12.105:5432/keliubao?useUnicode=true&characterEncoding=utf8&useSSL=false + username: postgres + password: postgres + + mvc: + pathmatch: + matching-strategy: ANT_PATH_MATCHER + + +api: + test: + # 测试次数 + num: 10 + # 毫秒, + avgTime: 3000 + # api接口文档模板 + +agile: + config: + # 默认90%匹配率,如果当天的小于该值,短信告警 + posRatePoint: 0.9 + +org: + expire: + interval: + ## 机构告警时间,‘,’号分隔 + date: 30,15,3 + +sftp: + host: 172.16.12.108 + port: 22 + username: flink + password: flink123 + work-paths: /sftp + session-connect-timeout: 2000 + channel-connect-timeout: 1000 + strict-host-key-checking: no + pool: + max-idle: 8 + min-idle: 0 + max-wait-millis: 10000 + max-total: 10 + sdk: + path: /sftp/sdk/sss.jar +logging: + level: + root: debug diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/application-prd.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/application-prd.yml new file mode 100644 index 00000000..07d07eda --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/application-prd.yml @@ -0,0 +1,55 @@ +server: + port: 18090 +spring: + # 服务模块 + devtools: + restart: + # 热部署开关 + enabled: true + datasource: + driver-class-name: org.postgresql.Driver + url: jdbc:postgresql://10.10.241.226:5432/keliubao?useUnicode=true&characterEncoding=utf8&useSSL=false + username: keliubao + password: keliubao + hikari: + minimum-idle: 5 # 最小空闲连接数量 + idle-timeout: 180000 # 空闲连接存活最大时间,默认600000(10分钟) + maximum-pool-size: 10 # 连接池最大连接数,默认是10 + connection-timeout: 30000 # 数据库连接超时时间,默认30秒,即30000 + max-lifetime: 1800000 # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟 + + +api: + test: + num: 10 + # 毫秒, + avgTime: 3000 + +agile: + config: + # 默认90%匹配率,如果当天的小于该值,短信告警 + posRatePoint: 0.9 + +org: + expire: + interval: + ## 机构告警时间,‘,’号分隔 + date: 30,15,3 + + +sftp: + host: 10.10.241.209 + port: 22 + username: sptcc + password: sptcc123 + work-paths: /home + session-connect-timeout: 2000 + channel-connect-timeout: 1000 + strict-host-key-checking: no + pool: + max-idle: 8 + min-idle: 0 + max-wait-millis: 10000 + max-total: 10 + sdk: + path: /home/sptcc/sysfile/console-2023-07/de70f251cecc44789978edf80aa0c5aa.jar \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/application.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/application.yml new file mode 100644 index 00000000..c20b70ec --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/application.yml @@ -0,0 +1,13 @@ +mybatis: + typeAliasesPackage: com.jiuyv.sptcc.agile.dataservice.dao.entity.** + mapperLocations: classpath*:mapper/**/*.xml + configLocation: classpath:mybatis/mybatis-config.xml + +pagehelper: + helper-dialect: postgresql + reasonable: true + support-methods-arguments: true + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/bootstrap.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/bootstrap.yml new file mode 100644 index 00000000..b1033469 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/bootstrap.yml @@ -0,0 +1,31 @@ +spring: + application: + name: agile-data-service + cloud: + config: + discovery: + service-id: CONFIG-SERVICE #告诉当前客户端 统一配置中心的服务端服务id + enabled: true #开启客户端,根据服务id到注册中心获取配置信息 + label: # 指定分支 + name: ${spring.application.name} # 指定应用名称 + profile: dev # 指定激活环境 + devtools: + restart: + enabled: true +# 配置eureka客户端信息 +eureka: + instance: + appname: ${spring.application.name} + lease-expiration-duration-in-seconds: 90 + lease-renewal-interval-in-seconds: 10 + prefer-ip-address: true + instance-id: ${spring.cloud.client.ip-address}:${server.port} + metadata-map: + user.name: ${spring.security.user.name} + user.password: ${spring.security.user.password} + client: + enabled: true + register-with-eureka: true + fetch-registry: true + service-url: + defaultZone: http://172.16.12.109:8761/eureka/ diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/logback-boot.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/logback-boot.xml new file mode 100644 index 00000000..6f78d025 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/logback-boot.xml @@ -0,0 +1,96 @@ + + + + + + + + + + System.out + + %d{HH:mm:ss.SSS} %X{spanId:-} %X{traceId:-} [%thread] %-5level %logger{36} - %msg%n + UTF-8 + + + + + ${LOG_HOME}/${APP_NAME}.log + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log.zip + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %X{traceId:-} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %X{traceId:-} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + 日志文件输出的文件名 + ${JSON_LOG_HOME}/${APP_NAME}.json.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + + + + { + "timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}", + "severity": "%level", + "service": "${APP_NAME:-}", + "trace": "%X{traceId:-}", + "span": "%X{spanId:-}", + "parent": "%X{X-B3-ParentSpanId:-}", + "exportable": "%X{X-Span-Export:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + + System.err + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/api/ApiLogMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/api/ApiLogMapper.xml new file mode 100644 index 00000000..a3dba855 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/api/ApiLogMapper.xml @@ -0,0 +1,146 @@ + + + + + + + + + + + + + + + + + + + + + + + api_log_id + , + status, + api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg + + + + ${alias} + . + api_log_id + , + ${alias} + . + status, + ${alias} + . + api_id, + ${alias} + . + caller_id, + ${alias} + . + caller_ip, + ${alias} + . + caller_url, + ${alias} + . + caller_params, + ${alias} + . + caller_date, + ${alias} + . + caller_size, + ${alias} + . + time, + ${alias} + . + msg + + + + insert into tbl_data_api_log + + api_log_id, + api_id, + caller_id, + caller_ip, + caller_url, + caller_params, + caller_date, + caller_size, + time, + status, + msg, + + + #{id}, + #{apiId}, + #{callerId}, + #{callerIp}, + #{callerUrl}, + #{callerParams}, + #{callerDate}, + #{callerSize}, + #{time}, + #{status}, + #{msg}, + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/api/ApiMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/api/ApiMapper.xml new file mode 100644 index 00000000..4266763f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/api/ApiMapper.xml @@ -0,0 +1,268 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + api_id + , + status, + create_by, + create_time, + create_dept, + update_by, + update_time, + api_name, api_version, api_url, remark, req_method, res_type, deny, + limit_json, config_json, req_json, res_json, + version_num, rec_token,api_code,api_type,source_id + + + + + + + + + insert into tbl_data_api + + api_id, + api_name, + api_version, + api_url, + req_method, + res_type, + deny, + limit_json, + config_json, + req_json, + res_json, + create_dept, + create_by, + status, + remark, + api_code, + api_type, + source_id, + rec_token, + create_time, + update_time + + + #{apiId}, + #{apiName}, + #{apiVersion}, + #{apiUrl}, + #{reqMethod}, + #{resType}, + #{deny}, + #{rateLimit}, + #{executeConfig}, + #{reqParams}, + #{resParams}, + #{createDept}, + #{createBy}, + #{status}, + #{remark}, + #{apiCode}, + #{apiType}, + #{sourceId}, + #{recToken}, + now(), + now() + + + + + update tbl_data_api + + version_num = version_num+1, + rec_token = #{recToken}, + api_name = #{apiName}, + api_version = #{apiVersion}, + api_url = #{apiUrl}, + req_method = #{reqMethod}, + res_type = #{resType}, + deny = #{deny}, + limit_json = #{rateLimit}, + config_json = #{executeConfig}, + req_json = #{reqParams}, + res_json = #{resParams}, + create_dept = #{createDept}, + update_by = #{updateBy}, + status = #{status}, + remark = #{remark}, + api_code = #{apiCode}, + api_type = #{apiType}, + source_id = #{sourceId}, + update_time = now() + + where api_id = #{apiId} + AND rec_token = #{params.recToken} + + + + update tbl_data_api + set version_num = version_num+1, + del_flag = '1', + update_by = #{updateBy}, + update_time = now(), + rec_token = #{recToken} + where api_id = #{apiId} + AND del_flag = '0' + AND rec_token = #{params.recToken} + + + + api_id,status, create_by,create_time,create_dept,update_by,update_time, + api_name, api_version, api_url, remark, req_method, res_type, deny, limit_json, config_json, req_json, res_json, + version_num, rec_token,api_type,api_code,source_id + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/api/MetadataSourceMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/api/MetadataSourceMapper.xml new file mode 100644 index 00000000..262a7763 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/api/MetadataSourceMapper.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + source_id, + status, + create_by, + create_time, + create_dept, + update_by, + update_time, + remark, + db_type, source_name, is_sync,db_schema, + version_num, rec_token + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/base/SysBaseMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/base/SysBaseMapper.xml new file mode 100644 index 00000000..76733304 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/base/SysBaseMapper.xml @@ -0,0 +1,11 @@ + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgApiAuthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgApiAuthMapper.xml new file mode 100644 index 00000000..adb8c50e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgApiAuthMapper.xml @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + insert into tbl_org_api_auth(org_no, api_id) + values (#{orgNo}, #{apiId}) + + + + insert into tbl_org_api_auth(org_no, api_id) + values + + (#{entity.orgNo}, #{entity.apiId}) + + + + + insert into tbl_org_api_auth(org_no, api_id) + values + + (#{entity.orgNo}, #{entity.apiId}) + + on duplicate key update + org_no = values(org_no), + api_id = values(api_id) + + + + + + delete from tbl_org_api_auth + where org_no = #{value} + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgConfigMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgConfigMapper.xml new file mode 100644 index 00000000..f6ccfe4d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgConfigMapper.xml @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + config_id,org_no,config_key,config_desc,config_value,version_num,rec_token,create_by,create_time, + update_by,update_time,del_flag,status + + + + insert into tbl_org_config + + config_id, + org_no, + config_key, + config_desc, + config_value, + del_flag, + create_by, + status, + create_time, + update_time + + + #{configId}, + #{orgNo}, + #{configKey}, + #{configDesc}, + #{configValue}, + #{delFlag}, + #{createBy}, + #{status}, + now(), + now() + + + + + update tbl_org_config + + version_num = version_num+1, + rec_token = #{recToken}, + org_no = #{orgNo}, + config_key = #{configKey}, + config_desc = #{configDesc}, + config_value = #{configValue}, + del_flag = #{delFlag}, + create_by = #{createBy}, + status = #{status}, + update_by = #{updateBy}, + update_time = now() + + where config_id = #{configId} + AND rec_token = #{params.recToken} + + + + update tbl_org_config set del_flag = '1' where config_id = #{configId} + + + + delete from tbl_org_config where org_no =#{orgNo} and config_key = #{configKey} + + + + delete from tbl_org_config where org_no =#{orgNo} + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgGatewayLogMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgGatewayLogMapper.xml new file mode 100644 index 00000000..7154314a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgGatewayLogMapper.xml @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + select log_id, req_no, api_id, api_name, api_code, status, req_time, req_ip, req_json, res_json, consuming_time, create_by_name, create_time, update_by_name, update_time, version_num, rec_token from tbl_org_gateway_log + + + + + + + + insert into tbl_org_gateway_log + + log_id, + req_no, + api_id, + api_name, + api_code, + status, + req_time, + req_ip, + req_json, + res_json, + consuming_time, + create_by_name, + create_time, + update_by_name, + update_time, + version_num, + rec_token, + + + #{logId}, + #{reqNo}, + #{apiId}, + #{apiName}, + #{apiCode}, + #{status}, + #{reqTime}, + #{reqIp}, + #{reqJson}, + #{resJson}, + #{consumingTime}, + #{createByName}, + #{createTime}, + #{updateByName}, + #{updateTime}, + #{versionNum}, + #{recToken}, + + + + + update tbl_org_gateway_log + + req_no = #{reqNo}, + api_id = #{apiId}, + api_name = #{apiName}, + api_code = #{apiCode}, + status = #{status}, + req_time = #{reqTime}, + req_ip = #{reqIp}, + req_json = #{reqJson}, + res_json = #{resJson}, + consuming_time = #{consumingTime}, + create_by_name = #{createByName}, + create_time = #{createTime}, + update_by_name = #{updateByName}, + update_time = #{updateTime}, + version_num = #{versionNum}, + rec_token = #{recToken}, + + where log_id = #{logId} + + + + delete from tbl_org_gateway_log where log_id = #{logId} + + + + delete from tbl_org_gateway_log where log_id in + + #{logId} + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgInfoMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgInfoMapper.xml new file mode 100644 index 00000000..c452f5ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgInfoMapper.xml @@ -0,0 +1,157 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag,ip,contract_tel,data_begin,data_end,member_id from tbl_org_info + + + + + + + + + + + + + + insert into tbl_org_info + + org_no, + org_name, + org_type, + org_desc, + salt, + encrypt, + start_time, + end_time, + status, + create_by, + del_flag, + ip, + member_id, + create_by_name, + rec_token, + contract_tel, + update_by_name, + create_time, + + + #{orgNo}, + #{orgName}, + #{orgType}, + #{orgDesc}, + #{salt}, + #{encrypt}, + #{startTime}, + #{endTime}, + #{status}, + #{createBy}, + #{delFlag}, + #{ip}, + #{memberId}, + #{updateByName}, + #{recToken}, + #{contractTel}, + #{createByName}, + now(), + + + + + update tbl_org_info + + version_num = version_num+1, + rec_token = #{recToken}, + org_name = #{orgName}, + org_type = #{orgType}, + org_desc = #{orgDesc}, + salt = #{salt}, + encrypt = #{encrypt}, + start_time = #{startTime}, + end_time = #{endTime}, + status = #{status}, + update_by = #{updateBy}, + update_by_name = #{updateByName}, + del_flag = #{delFlag}, + ip = #{ip}, + member_id = #{memberId}, + contract_tel = #{contractTel}, + update_time = now(), + + where org_no = #{orgNo} + AND rec_token = #{params.recToken} + + + + update tbl_org_info + set version_num = version_num+1, + del_flag = '1', + update_by = #{updateBy}, + update_by_name = #{updateByName}, + rec_token = #{recToken}, + update_time = now() + where org_no = #{orgNo} + AND del_flag ='0' + AND rec_token = #{params.recToken} + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgStatisticsMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgStatisticsMapper.xml new file mode 100644 index 00000000..cf72cca0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/org/OrgStatisticsMapper.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + + + + + + select id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag from tbl_org_statistics + + + + update tbl_org_statistics + set success_total = success_total+#{successTotal,jdbcType=INTEGER}, + fail_total = fail_total+#{failTotal,jdbcType=INTEGER}, + version_num =version_num+1 + where id = #{id} + + + + + + + + insert into tbl_org_statistics + + id, + org_no, + org_name, + api_id, + success_total, + fail_total, + api_name, + create_by, + del_flag, + create_time, + update_time + + + #{id}, + #{orgNo}, + #{orgName}, + #{apiId}, + #{successTotal}, + #{failTotal}, + #{apiName}, + #{createBy}, + #{delFlag}, + now(), + now() + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineInfoMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineInfoMapper.xml new file mode 100644 index 00000000..07eed233 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineInfoMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + select line_name, line_code, line_no from tbl_prd_base_line + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineMetricDayMapper.xml new file mode 100644 index 00000000..fae2dd11 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineMetricDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineMetricHourMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineMetricHourMapper.xml new file mode 100644 index 00000000..596e3099 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineMetricHourMapper.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + select line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_metric_hour + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineMetricMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineMetricMonthMapper.xml new file mode 100644 index 00000000..139c3898 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineMetricMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id from tbl_prd_line_metric_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationInfoMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationInfoMapper.xml new file mode 100644 index 00000000..b96dc191 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationInfoMapper.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + select line_code, line_name, up, levels, level_name, line_no from tbl_prd_base_line_station + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationMetricDayMapper.xml new file mode 100644 index 00000000..dd55c1fd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationMetricDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_station_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationMetricHourMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationMetricHourMapper.xml new file mode 100644 index 00000000..73918149 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationMetricHourMapper.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_station_metric_hour + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationMetricMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationMetricMonthMapper.xml new file mode 100644 index 00000000..ce962b05 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationMetricMonthMapper.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id from tbl_prd_line_station_metric_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationTransDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationTransDayMapper.xml new file mode 100644 index 00000000..a336a631 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationTransDayMapper.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_line_station_trans_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationTransHourMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationTransHourMapper.xml new file mode 100644 index 00000000..37a3d8f5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationTransHourMapper.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_line_station_trans_hour + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationTransMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationTransMonthMapper.xml new file mode 100644 index 00000000..be59c5bf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/LineStationTransMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id from tbl_prd_line_station_trans_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/RouteMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/RouteMetricDayMapper.xml new file mode 100644 index 00000000..b9003ed9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/RouteMetricDayMapper.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, license_plate, driver_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id from tbl_prd_route_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricDayMapper.xml new file mode 100644 index 00000000..1339abcf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricMonthMapper.xml new file mode 100644 index 00000000..67402e57 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_metric_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqTransDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqTransDayMapper.xml new file mode 100644 index 00000000..2a558c46 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqTransDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_trans_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqTransMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqTransMonthMapper.xml new file mode 100644 index 00000000..e329c857 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/prd/StationFreqTransMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_trans_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/CentimeDelayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/CentimeDelayMapper.xml new file mode 100644 index 00000000..323f9012 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/CentimeDelayMapper.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + select id, time_range, delay_count, txn_date, create_time from tbl_qa_centime_delay + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/PosMatchRateMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/PosMatchRateMapper.xml new file mode 100644 index 00000000..8e5d9bec --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/PosMatchRateMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + select id, tran_num, match_num, match_rate, txn_date, create_time from tbl_qa_pos_match_rate + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/RouteDailyCountMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/RouteDailyCountMapper.xml new file mode 100644 index 00000000..53eb9946 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/RouteDailyCountMapper.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + select id, company_name, route_count, txn_date, company_code, create_time from tbl_qa_route_daily_count + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/RouteMissMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/RouteMissMapper.xml new file mode 100644 index 00000000..0e35fa88 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/RouteMissMapper.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + select id, miss_rate, txn_date, route_count, bus_stop_count, create_time from tbl_qa_route_miss + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/RouteTurnoverTimeMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/RouteTurnoverTimeMapper.xml new file mode 100644 index 00000000..23ab638b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/RouteTurnoverTimeMapper.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + select id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time from tbl_qa_route_turnover_time + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/StationMissMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/StationMissMapper.xml new file mode 100644 index 00000000..6ec4ce83 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/StationMissMapper.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, miss_rate,create_time from tbl_qa_station_miss + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/VehicleDailyCountMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/VehicleDailyCountMapper.xml new file mode 100644 index 00000000..e71bb790 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/quality/VehicleDailyCountMapper.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + select id, company_code, company_name, vehicle_count, txn_date, create_time from tbl_qa_vehicle_daily_count + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/sftp/SyncRecordMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/sftp/SyncRecordMapper.xml new file mode 100644 index 00000000..4a95016c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mapper/sftp/SyncRecordMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + select id, path, table_name, count, txn_date, create_time, data_status from tbl_prd_sync_record + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mybatis/mybatis-config.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mybatis/mybatis-config.xml new file mode 100644 index 00000000..21aa61ea --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/mybatis/mybatis-config.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/templates/api_1.0.0.docx b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/templates/api_1.0.0.docx new file mode 100644 index 00000000..8acba393 Binary files /dev/null and b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/templates/api_1.0.0.docx differ diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/templates/api_1.0.1.docx b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/templates/api_1.0.1.docx new file mode 100644 index 00000000..51e247a5 Binary files /dev/null and b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/main/resources/templates/api_1.0.1.docx differ diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/BaseApplicationTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/BaseApplicationTest.java new file mode 100644 index 00000000..415668e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/BaseApplicationTest.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.test; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.AgileDataApplication; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnitRunner; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.ActiveProfiles; +import org.springframework.test.context.junit.jupiter.SpringExtension; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.web.servlet.MockMvc; + +import javax.annotation.Resource; + +/** + * Controller接口测试继承该接口(需要验证的) + * 通用登录的实现以及header处理 + * @author zhouliang + * + */ +@SpringBootTest(classes = AgileDataApplication.class) +@AutoConfigureMockMvc +@ActiveProfiles("test")//测试配置 +@ExtendWith(SpringExtension.class) +public abstract class BaseApplicationTest { + @Resource + protected MockMvc mockMvc; + + @Resource + protected ObjectMapper objectMapper; + + @BeforeEach + public void initMocks() throws Exception { + MockitoAnnotations.openMocks(this); + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiControllerTest.java new file mode 100644 index 00000000..34c570a5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiControllerTest.java @@ -0,0 +1,839 @@ +package com.jiuyv.sptcc.agile.test.controller.api; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class ApiControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(ApiControllerTest.class); + + @Test + public void getApiPrefixPath() throws Exception { + + //GET http://localhost/public/agile-data/agileApi/getPrefixPath + + String url="/public/agile-data/agileApi/getPrefixPath"; + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content("")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andReturn(); + + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R res= JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() {}); + assert res != null; + assertEquals("success",res.getCode()); + // log.info(mvcResult.getResponse().getContentAsString()); + + + url = "/public/agile-data/agileApi/getDate"; + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("id",""+100)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R result= JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() {}); + assert result != null; + assertEquals("success",result.getCode()); + // log.info(mvcResult.getResponse().getContentAsString()); + + + url = "/public/agile-data/agileApi/sourceList?sourceId =35"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("sourceId",35+"")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R> list = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert list != null; + assertEquals("success",list.getCode()); + + url = "/public/agile-data/agileApi/page"; + log.info("分页查询,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + ApiPageRequest pageRequest = new ApiPageRequest(); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(pageRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R> page = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert page != null; + assertEquals("success",page.getCode()); + + + url = "/public/agile-data/agileApi/page"; + log.info("分页查询,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + + + } + + + + @Test + void add() throws Exception { + + String url = "/public/agile-data/agileApi/page"; + log.info("新增api,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + String json = "{\n" + + " \"apiName\": \"ceode\",\n" + + " \"apiVersion\": \"1\",\n" + + " \"apiUrl\": \"s/d/e/f\",\n" + + " \"reqMethod\": \"POST\",\n" + + " \"resType\": \"JSON\",\n" + + " \"rateLimit\": {\n" + + " \"enable\": \"1\",\n" + + " \"times\": 5,\n" + + " \"seconds\": 60\n" + + " },\n" + + " \"status\": \"1\",\n" + + " \"remark\": \"测试数据\",\n" + + " \"executeConfig\": {\n" + + " \"configType\": \"1\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"fieldParams\": [\n" + + " {\n" + + " \"columnId\": \"267981\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_code\",\n" + + " \"columnComment\": \"API code\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"23\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267982\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_id\",\n" + + " \"columnComment\": \"主键ID\",\n" + + " \"columnKey\": \"1\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"1\",\n" + + " \"dataType\": \"int8\",\n" + + " \"dataPrecision\": \"64\",\n" + + " \"dataScale\": \"0\",\n" + + " \"dataDefault\": \"nextval('seq_data_market_api'::regclass)\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\",\n" + + " \"reqable\": \"1\",\n" + + " \"resable\": \"1\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267983\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_name\",\n" + + " \"columnComment\": \"API名称\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"9\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"255\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267984\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_type\",\n" + + " \"columnComment\": \"类型:1敏捷API 2系统API\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"24\",\n" + + " \"dataType\": \"bpchar\",\n" + + " \"dataLength\": \"1\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267985\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_url\",\n" + + " \"columnComment\": \"API路径\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"11\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"255\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267986\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_version\",\n" + + " \"columnComment\": \"API版本\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"10\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"60\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267987\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"config_json\",\n" + + " \"columnComment\": \"执行配置\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"16\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267988\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"create_by\",\n" + + " \"columnComment\": \"创建人\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"3\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267989\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"create_dept\",\n" + + " \"columnComment\": \"创建人所属部门\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"5\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267990\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"create_time\",\n" + + " \"columnComment\": \"创建日期\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"4\",\n" + + " \"dataType\": \"timestamp\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267991\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"del_flag\",\n" + + " \"columnComment\": \"【删除标志】0代表存在 2代表删除\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"21\",\n" + + " \"dataType\": \"bpchar\",\n" + + " \"dataLength\": \"1\",\n" + + " \"dataDefault\": \"'0'::bpchar\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267992\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"deny\",\n" + + " \"columnComment\": \"IP黑名单多个,隔开\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"14\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"2000\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267993\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"limit_json\",\n" + + " \"columnComment\": \"限流配置\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"15\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267994\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"rec_token\",\n" + + " \"columnComment\": \"随机码\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"20\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"100\",\n" + + " \"dataDefault\": \"'1'::character varying\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267995\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"remark\",\n" + + " \"columnComment\": \"备注\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"8\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"1000\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267996\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"req_json\",\n" + + " \"columnComment\": \"请求参数\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"17\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267997\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"req_method\",\n" + + " \"columnComment\": \"请求方式\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"12\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"10\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267998\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"res_json\",\n" + + " \"columnComment\": \"返回参数\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"18\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267999\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"res_type\",\n" + + " \"columnComment\": \"返回格式\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"13\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"10\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268000\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"source_id\",\n" + + " \"columnComment\": \"数据源id\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"25\",\n" + + " \"dataType\": \"int8\",\n" + + " \"dataPrecision\": \"64\",\n" + + " \"dataScale\": \"0\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268001\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"status\",\n" + + " \"columnComment\": \"状态(1待注册,2已注册,3已发布)\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"2\",\n" + + " \"dataType\": \"bpchar\",\n" + + " \"dataLength\": \"1\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268002\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"update_by\",\n" + + " \"columnComment\": \"更新人\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"6\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268003\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"update_time\",\n" + + " \"columnComment\": \"更新日期\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"7\",\n" + + " \"dataType\": \"timestamp\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268004\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"version_num\",\n" + + " \"columnComment\": \"版本号\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"19\",\n" + + " \"dataType\": \"int4\",\n" + + " \"dataPrecision\": \"32\",\n" + + " \"dataScale\": \"0\",\n" + + " \"dataDefault\": \"0\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " }\n" + + " ],\n" + + " \"table\": {\n" + + " \"tableId\": \"10188\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"api信息表\",\n" + + " \"sourceName\": \"public\"\n" + + " }\n" + + " },\n" + + " \"reqParams\": [\n" + + " {\n" + + " \"paramName\": \"api_id\",\n" + + " \"paramComment\": \"主键ID\",\n" + + " \"nullable\": \"0\",\n" + + " \"paramType\": \"Number\",\n" + + " \"whereType\": \"=\",\n" + + " \"exampleValue\": \"95\",\n" + + " \"defaultValue\": \"95\"\n" + + " }\n" + + " ],\n" + + " \"resParams\": [\n" + + " {\n" + + " \"fieldName\": \"api_id\",\n" + + " \"fieldComment\": \"主键ID\",\n" + + " \"dataType\": \"int8\",\n" + + " \"exampleValue\": \"95\",\n" + + " \"cipherType\": \"2\",\n" + + " \"cryptType\": \"1\"\n" + + " }\n" + + " ],\n" + + " \"apiCode\": \"eweq\"\n" + + "}"; + ApiAddRequest apiAddRequest = JacksonUtil.string2Obj(json, ApiAddRequest.class); + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiAddRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R add = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert add != null; + assertEquals("success",add.getCode()); + + + url = "/public/agile-data/agileApi/update"; + log.info("更新失败,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiUpdateRequest apiUpdateRequest = JacksonUtil.string2Obj(json, ApiUpdateRequest.class); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiUpdateRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R update = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert update != null; + assertEquals("input_not_valid",update.getCode()); + + + url = "/public/agile-data/agileApi/page"; + log.info("分页查询,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + ApiPageRequest pageRequest = new ApiPageRequest(); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(pageRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R> page = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert page != null; + assertEquals("success",page.getCode()); + + + + url = "/public/agile-data/agileApi/update"; + log.info("更新成功,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiResponse apiResponse = page.getData().getRows().get(0); + ApiUpdateRequest updateRequest = new ApiUpdateRequest(); + BeanUtils.copyProperties(apiResponse,updateRequest); + updateRequest.setUserId(1L); + updateRequest.setUserName("admin"); + updateRequest.setVersionNum(apiResponse.getVersionNum()); + updateRequest.setRecToken(apiResponse.getRecToken()); + updateRequest.setReqParams(apiAddRequest.getReqParams()); + updateRequest.setResParams(apiAddRequest.getResParams()); + updateRequest.setExecuteConfig(apiAddRequest.getExecuteConfig()); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(updateRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R update2 = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert update2 != null; + assertEquals("success",update2.getCode()); + + + + + url = "/public/agile-data/agileApi/delete"; + log.info("删除,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiDelRequest del = new ApiDelRequest(); + del.setApiId(149L); + del.setRecToken("93d8933353"); + del.setUserName("admin"); + del.setUserId(1L); + del.setDeptId("1"); + del.setNickName("操作人"); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(del))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R delRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert delRes != null; + assertEquals("success",delRes.getCode()); + + + + + url = "/public/agile-data/agileApi/copy"; + log.info("复制,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiCopyRequest copyRequest = new ApiCopyRequest(); + apiResponse = page.getData().getRows().get(1); + copyRequest.setApiId(apiResponse.getApiId()); + copyRequest.setUserName(apiResponse.getCreateBy()); + copyRequest.setUserId(1L); + copyRequest.setDeptId("1"); + copyRequest.setNickName("操作人"); + BeanUtils.copyProperties(apiResponse,del); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(copyRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R copyRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert copyRes != null; + assertEquals("success",copyRes.getCode()); + + + + + } + + + @Test + void register() throws Exception { + String url = "/public/agile-data/agileApi/register"; + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiStatusRequest statusRequest = new ApiStatusRequest(); + statusRequest.setApiId(150L); + statusRequest.setUserName("admin"); + statusRequest.setUserId(1L); + statusRequest.setDeptId("1"); + statusRequest.setNickName("操作人"); + statusRequest.setRecToken("6d44618b77"); + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(statusRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + + // 138 + url = "/public/agile-data/agileApi/release"; + log.info("发布,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + ApiStatusRequest request = new ApiStatusRequest(); + request.setApiId(138L); + request.setRecToken("9499ca728a"); + request.setUserName("admin"); + request.setUserId(1L); + request.setDeptId("1"); + request.setNickName("操作人"); + + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(request))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + + + url = "/public/agile-data/agileApi/cancel"; + log.info("注销,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + request.setApiId(137L); + request.setRecToken("2dec96f64e"); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(request))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + // + url = "/public/agile-data/agileApi/down"; + log.info("下架,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + request.setApiId(128L); + request.setRecToken("a1e7a3654e"); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(request))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + } + + @Test + void file() throws Exception { + //下载文档 + String url ="/public/agile-data/agileApi/down"; + + url = "/public/agile-data/agileApi/tree"; + log.info("注销,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content("")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R> tree = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert tree != null; + assertEquals("success",tree.getCode()); + + //下载文档 + url = "/public/agile-data/agileApi/word/down?id=150"; + log.info("下载文档,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content("")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andReturn(); + int status = mvcResult.getResponse().getStatus(); + log.info("返回对象string{}",status); + assertEquals(200,status); + + } + + + + + + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiLogControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiLogControllerTest.java new file mode 100644 index 00000000..698e7dd0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiLogControllerTest.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.test.controller.api; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiLogRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiLogResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class ApiLogControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(ApiControllerTest.class); + + + + @Test + void test() throws Exception { + + String url = "/public/agile-data/apilog/page"; + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiLogRequest apiLogRequest = new ApiLogRequest(); + apiLogRequest.setPageSize(0); + apiLogRequest.setPageNum(100); + apiLogRequest.setOrderBy("update_time"); + apiLogRequest.setDesc(false); + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiLogRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + + url = "/public/agile-data/apilog/detail"; + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("id","10001")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + + R response = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() {}); + assert response != null; + assertEquals("success",response.getCode()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/RequestTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/RequestTest.java new file mode 100644 index 00000000..022c1c8d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/RequestTest.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.test.controller.dto; + +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.platform.commons.util.ReflectionUtils; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +public class RequestTest extends BaseApplicationTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.request"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/ResponseTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/ResponseTest.java new file mode 100644 index 00000000..c57bb626 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/ResponseTest.java @@ -0,0 +1,54 @@ +package com.jiuyv.sptcc.agile.test.controller.dto; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.platform.commons.util.ReflectionUtils; +import org.springframework.test.context.junit.jupiter.SpringExtension; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +@ExtendWith(SpringExtension.class) +public class ResponseTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.response"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/BatchControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/BatchControllerTest.java new file mode 100644 index 00000000..2552b52c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/BatchControllerTest.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.batch.DateVo; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class BatchControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(BatchControllerTest.class); + + @Test + void test() throws Exception { + + + String url = "/public/agile-data/orgInfo/expire"; + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("date", "2023-12-22")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + + url = "/public/agile-data/orgInfo/down"; + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("date", "2023-12-25")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R res = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert res != null; + assertEquals("success", res.getCode()); + + + url = "/public/agile-data/pos/posRate"; + + DateVo dt = new DateVo(); + dt.setDate("2023-05-15"); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(dt))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R result = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert result != null; + assertEquals("success", result.getCode()); + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgAuthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgAuthControllerTest.java new file mode 100644 index 00000000..c3c5aec1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgAuthControllerTest.java @@ -0,0 +1,124 @@ +package com.jiuyv.sptcc.agile.test.controller.org; +import java.util.Date; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgAuthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgAuthControllerTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/auth/info"; + OrgAuthReq orgAuthReq = new OrgAuthReq(); + orgAuthReq.setKeyVersion("001"); + orgAuthReq.setOrgCode("JGH000000000000134"); + orgAuthReq.setSubOrgCode(""); + orgAuthReq.setRequsetTime(new Date()); + orgAuthReq.setApiCode("stationFreqTransDay"); + + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgAuthReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert statusRes != null; + assertEquals("api_not_right", statusRes.getCode()); + + + orgAuthReq.setOrgCode("JGH000000000000084"); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgAuthReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void auth() throws Exception { + String url = "/public/agile-data/auth/auth"; + OrgAuthRequest orgAuthRequest = new OrgAuthRequest(); + orgAuthRequest.setOrgCode("JGH000000000000084"); + orgAuthRequest.setApiCode("download"); + orgAuthRequest.setIp("130.252.102.154"); + orgAuthRequest.setRequsetTime(new Date()); + orgAuthRequest.setDataDate(new Date()); + + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgAuthRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + url = "/public/agile-data/auth/getKey"; + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgCode","JGH000000000000084")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R result = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert result != null; + assertEquals("success", result.getCode()); + + } + + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgConfigControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgConfigControllerTest.java new file mode 100644 index 00000000..13afe164 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgConfigControllerTest.java @@ -0,0 +1,196 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgConfigControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgConfigControllerTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/orgConfig/list"; + OrgConfigQueryRequest orgConfigQueryRequest = new OrgConfigQueryRequest(); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgConfigQueryRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> response = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + url = "/public/agile-data/orgConfig/detail"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("configId", response.getData().getRows().get(0).getConfigId() + "")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void edit() throws Exception { + + String url = "/public/agile-data/orgConfig/add"; + String json = "{\"configId\":\"161\",\"orgNo\":\"JGH000000000000084\",\"configKey\":\"downLoadRigth\",\"configDesc\":\"站点常乘客日指标\",\"configValue\":\"stationFreqMonth\",\"versionNum\":\"0\",\"recToken\":\"1\",\"delFlag\":\"0\",\"status\":\"0\",\"orgName\":\"机构一\"}"; + OrgConfigAddRequest add = JacksonUtil.string2Obj(json, OrgConfigAddRequest.class); + if (add == null) { + add = new OrgConfigAddRequest(); + } + add.setUserId(1L); + add.setUserName("admin"); + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(add))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R response = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + url = "/public/agile-data/orgConfig/list"; + OrgConfigQueryRequest orgConfigQueryRequest = new OrgConfigQueryRequest(); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgConfigQueryRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> page = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert page != null; + assertEquals("success", page.getCode()); + + List rows = page.getData().getRows(); + + OrgConfigResponse edit = rows.get(0); + url = "/public/agile-data/orgConfig/edit"; + OrgConfigEditRequest orgConfigEditRequest = new OrgConfigEditRequest(); + orgConfigEditRequest.setConfigId(edit.getConfigId()); + orgConfigEditRequest.setRecToken(edit.getRecToken()); + orgConfigEditRequest.setStatus(edit.getStatus()); + orgConfigEditRequest.setOrgNo(edit.getOrgNo()); + orgConfigEditRequest.setConfigKey(edit.getConfigKey()); + orgConfigEditRequest.setConfigDesc(edit.getConfigDesc()); + orgConfigEditRequest.setConfigValue(edit.getConfigValue()); + orgConfigEditRequest.setDelFlag(edit.getDelFlag()); + orgConfigEditRequest.setStatus(edit.getStatus()); + orgConfigEditRequest.setUserName("admin"); + orgConfigEditRequest.setUserId(1L); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgConfigEditRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R editRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert editRes != null; + assertEquals("success", editRes.getCode()); + + + url = "/public/agile-data/orgConfig/delete"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("configId",""+edit.getConfigId())) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R delete = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert delete != null; + assertEquals("success", delete.getCode()); + + + + url = "/public/agile-data/orgConfig/getOrgCfg"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgCode","JGH000000000000084")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> getOrgCfg = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert getOrgCfg != null; + assertEquals("success", getOrgCfg.getCode()); + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgInfoControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgInfoControllerTest.java new file mode 100644 index 00000000..7a38814c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgInfoControllerTest.java @@ -0,0 +1,284 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.List; +import java.util.stream.Collectors; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgInfoControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgInfoControllerTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/orgInfo/list"; + OrgInfoQueryReq orgInfoQueryReq = new OrgInfoQueryReq(); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoQueryReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> response = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + url = "/public/agile-data/orgInfo/detail"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgNo", "JGH000000000000156")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + + List rows = response.getData().getRows(); + OrgInfoResp orgInfoResp = rows.get(0); + + url = "/public/agile-data/orgInfo/add"; + OrgInfoAddReq orgInfoAddReq = new OrgInfoAddReq(); + orgInfoAddReq.setMemberId(orgInfoResp.getMemberId()); + orgInfoAddReq.setOrgName(orgInfoResp.getOrgName()); + orgInfoAddReq.setOrgType(orgInfoResp.getOrgType()); + orgInfoAddReq.setOrgDesc(orgInfoResp.getOrgDesc()); + orgInfoAddReq.setSalt(orgInfoResp.getSalt()); + orgInfoAddReq.setEncrypt(orgInfoResp.getEncrypt()); + orgInfoAddReq.setStartTime(orgInfoResp.getStartTime()); + orgInfoAddReq.setEndTime(orgInfoResp.getEndTime()); + orgInfoAddReq.setIp(orgInfoResp.getIp()); + orgInfoAddReq.setContractTel(orgInfoResp.getContractTel()); + orgInfoAddReq.setRemark("备注"); + orgInfoAddReq.setStatus(orgInfoResp.getStatus()); + orgInfoAddReq.setUserName("admin"); + orgInfoAddReq.setUserId(1L); + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoAddReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R add = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert add != null; + assertEquals("success", add.getCode()); + + + log.info("==============={}=============", "停用服务"); + url = "/public/agile-data/orgInfo/stop"; + OrgInfoResp orgInfoResp1 = rows.stream().filter(x -> "JGH000000000000158".equals(x.getOrgNo())).collect(Collectors.toList()).get(0); + OrgInfoStatusReq orgInfoStatusReq = new OrgInfoStatusReq(); + orgInfoStatusReq.setOrgNo(orgInfoResp1.getOrgNo()); + orgInfoStatusReq.setRecToken(orgInfoResp1.getRecToken()); + orgInfoStatusReq.setUserName("system"); + orgInfoStatusReq.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoStatusReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R stop = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert stop != null; + assertEquals("success", stop.getCode()); + + + log.info("==============={}=============", "修改服务"); + url = "/public/agile-data/orgInfo/edit"; + OrgInfoEditReq editReq = new OrgInfoEditReq(); + orgInfoResp = rows.get(1); + editReq.setOrgNo(orgInfoResp.getOrgNo()); + editReq.setRecToken(orgInfoResp.getRecToken()); + editReq.setMemberId(orgInfoResp.getMemberId()); + editReq.setOrgName(orgInfoResp.getOrgName()); + editReq.setOrgType(orgInfoResp.getOrgType()); + editReq.setOrgDesc(orgInfoResp.getOrgDesc()); + editReq.setSalt(orgInfoResp.getSalt()); + editReq.setEncrypt(orgInfoResp.getEncrypt()); + editReq.setStartTime(orgInfoResp.getStartTime()); + editReq.setEndTime(orgInfoResp.getEndTime()); + editReq.setIp(orgInfoResp.getIp()); + editReq.setContractTel(orgInfoResp.getContractTel()); + editReq.setRemark("修改"); + editReq.setStatus(orgInfoResp.getStatus()); + editReq.setUserName("system"); + editReq.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(editReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R edit = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert edit != null; + assertEquals("update_failed", edit.getCode()); + + + log.info("==============={}=============", "启用服务"); + orgInfoStatusReq.setOrgNo("JGH000000000000155"); + orgInfoStatusReq.setRecToken("d0ef53603f"); + url = "/public/agile-data/orgInfo/run"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoStatusReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R run = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert run != null; + assertEquals("success", run.getCode()); + + log.info("==============={}=============", "删除服务"); + url = "/public/agile-data/orgInfo/remove"; + OrgDelReq orgDelReq = new OrgDelReq(); + orgDelReq.setOrgNo("JGH000000000000157"); + orgDelReq.setRecToken("12c6936f71"); + orgDelReq.setUserName("system"); + orgDelReq.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgDelReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R del = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert del != null; + assertEquals("success", del.getCode()); + + + log.info("==============={}=============", "授权服务"); + url = "/public/agile-data/orgInfo/auth"; + OrgApiAuthRequest orgApiAuthRequest = new OrgApiAuthRequest(); + orgApiAuthRequest.setOrgNo("JGH000000000000134"); + orgApiAuthRequest.setApiIds(new Long[]{116L,119L}); + orgApiAuthRequest.setUserName("admin"); + orgApiAuthRequest.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgApiAuthRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R auth = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert auth != null; + assertEquals("success", auth.getCode()); + + + + } + + + @Test + void other() throws Exception{ + String url = "/public/agile-data/orgInfo/key"; + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + ) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R response = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + log.info("==============={}=============", "授权列表"); + url = "/public/agile-data/orgInfo/auth/list"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgNo","JGH000000000000084")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R auth = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert auth != null; + assertEquals("success", auth.getCode()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgStcsConsoleApiTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgStcsConsoleApiTest.java new file mode 100644 index 00000000..69675b83 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgStcsConsoleApiTest.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiStatisticsResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgStcsConsoleApiTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgStcsConsoleApiTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/orgStcs/list"; + OrgStatisticsQueryReq orgStatisticsQueryReq = new OrgStatisticsQueryReq(); + log.info(">>>>>>>>>>>>>>>>>> {} <<<<<<<<<<<<<<<<<<<<", "接口统计列表"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgStatisticsQueryReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> response = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + log.info(">>>>>>>>>>>>>>>>>> {} <<<<<<<<<<<<<<<<<<<<", "会员接口统计列表"); + url = "/public/agile-data/orgStcs/userApiStatistics"; + ApiUserRequest apiUserRequest = new ApiUserRequest(); + apiUserRequest.setMemberId("1"); + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiUserRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/portal/PortalControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/portal/PortalControllerTest.java new file mode 100644 index 00000000..2e936f89 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/portal/PortalControllerTest.java @@ -0,0 +1,74 @@ +package com.jiuyv.sptcc.agile.test.controller.portal; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class PortalControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(PortalControllerTest.class); + + @Test + void test() throws Exception { + + + String url = "/public/agile-data/agileApi/userApiList"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + ApiUserRequest apiUserRequest = new ApiUserRequest(); + apiUserRequest.setMemberId("1"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiUserRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + + + + // url = "/public/agile-data/pos/posRate"; + // + // DateVo dt = new DateVo(); + // dt.setDate("2023-05-15"); + // mvcResult = mockMvc.perform(MockMvcRequestBuilders + // .post(url) + // .contentType(MediaType.APPLICATION_JSON) + // .accept(MediaType.APPLICATION_JSON_UTF8) + // .content(objectMapper.writeValueAsBytes(dt))) + // .andExpect(MockMvcResultMatchers.status().isOk()) + // .andDo(MockMvcResultHandlers.print()) + // .andReturn(); + // contentAsString = mvcResult.getResponse().getContentAsString(); + // log.info("返回对象string{}", contentAsString); + // // 如果不是JSON的自行修改 + // R result = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + // }); + // assert result != null; + // assertEquals("success", result.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricDayControllerTest.java new file mode 100644 index 00000000..3d7ada5d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricDayControllerTest.java @@ -0,0 +1,84 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineMetricDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/lineDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineDayPageReq lineDayPageReq = new LineDayPageReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(lineDayPageReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/lineDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineDayReqRequest lineDayReqRequest = new LineDayReqRequest(); + lineDayReqRequest.setMetricDate(new Date()); + lineDayReqRequest.setOrgNo("001"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(lineDayReqRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricHourControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricHourControllerTest.java new file mode 100644 index 00000000..28f626c9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricHourControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineMetricHourControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineMetricHourControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/linHour/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineHourPageReq req = new LineHourPageReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/linHour/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineHourRequest req = new LineHourRequest(); + req.setMetricDate(new Date()); + req.setOrgNo("001"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricMonthControllerTest.java new file mode 100644 index 00000000..bbf007d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineMetricMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineMetricMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/linMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineMetricMonthReq req = new LineMetricMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/linMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineMonthRequest req = new LineMonthRequest(); + req.setMetricMonth(new Date()); + req.setOrgNo("001"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricDayControllerTest.java new file mode 100644 index 00000000..b219ad93 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricDayControllerTest.java @@ -0,0 +1,89 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationMetricDayControllerTest extends BaseApplicationTest { + + + private static final Logger log = LoggerFactory.getLogger(LineStationMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationMetricDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricDayReq req = new StationMetricDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationMetricDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationDayRequest req = new StationDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricHourControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricHourControllerTest.java new file mode 100644 index 00000000..cb86fe59 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricHourControllerTest.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationMetricHourControllerTest extends BaseApplicationTest { + + + private static final Logger log = LoggerFactory.getLogger(LineStationMetricHourControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationMetricHour/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricHourReq req = new StationMetricHourReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationMetricHour/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationHourRequest req = new StationHourRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricMonthControllerTest.java new file mode 100644 index 00000000..e042101f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricMonthControllerTest.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationMetricMonthControllerTest extends BaseApplicationTest { + + + private static final Logger log = LoggerFactory.getLogger(LineStationMetricMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationMetricMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricMonthReq req = new StationMetricMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationMetricMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMonthRequest req = new StationMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransDayControllerTest.java new file mode 100644 index 00000000..8eb684b3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationTransDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineStationTransDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationTransDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransDayReq req = new StationTransDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationTransDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransDayRequest req = new StationTransDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransHourControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransHourControllerTest.java new file mode 100644 index 00000000..e641aa3a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransHourControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationTransHourControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineStationTransHourControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationTransHour/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricHourReq req = new StationMetricHourReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationTransHour/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransHourRequest req = new StationTransHourRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransMonthControllerTest.java new file mode 100644 index 00000000..361e11d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationTransMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineStationTransMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationTransMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransMonthReq req = new StationTransMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationTransMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransMonthRequest req = new StationTransMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/RouteMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/RouteMetricDayControllerTest.java new file mode 100644 index 00000000..3f4d4178 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/RouteMetricDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteMetricDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/routeMetricDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteMetricDayReq req = new RouteMetricDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/routeMetricDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteDayRequest req = new RouteDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricDayControllerTest.java new file mode 100644 index 00000000..fd7557b8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqMetricDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqMetricDayReq req = new StationFreqMetricDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqDayRequest req = new StationFreqDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricMonthControllerTest.java new file mode 100644 index 00000000..b7c44e01 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqMetricMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqMetricMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqMetricMonthReq req = new StationFreqMetricMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqMonthRequest req = new StationFreqMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransDayControllerTest.java new file mode 100644 index 00000000..7569fe7c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqTransDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqTransDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqTransDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransDayReq req = new StationFreqTransDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqTransDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransDayRequest req = new StationFreqTransDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransMonthControllerTest.java new file mode 100644 index 00000000..fa95f203 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqTransMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqTransMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqTransMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransMonthReq req = new StationFreqTransMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqTransMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransMonthRequest req = new StationFreqTransMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/CentimeDelayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/CentimeDelayControllerTest.java new file mode 100644 index 00000000..64cacb1f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/CentimeDelayControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class CentimeDelayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(CentimeDelayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/centimeDelay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + CentimeDelayReq req = new CentimeDelayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/PosMatchRateControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/PosMatchRateControllerTest.java new file mode 100644 index 00000000..63596013 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/PosMatchRateControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class PosMatchRateControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(PosMatchRateControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/posMatchRate/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + PosMatchRateReq req = new PosMatchRateReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteDailyCountControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteDailyCountControllerTest.java new file mode 100644 index 00000000..99dad232 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteDailyCountControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteDailyCountControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteDailyCountControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/routeDailyCount/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteDailyReq req = new RouteDailyReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteMissControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteMissControllerTest.java new file mode 100644 index 00000000..e4f169c7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteMissControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteMissControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteMissControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/routeMiss/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteMissReq req = new RouteMissReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteTurnoverTimeControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteTurnoverTimeControllerTest.java new file mode 100644 index 00000000..9ecb0033 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteTurnoverTimeControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteTurnoverTimeControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteTurnoverTimeControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/routeTurnover/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteTurnoverReq req = new RouteTurnoverReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/StationMissControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/StationMissControllerTest.java new file mode 100644 index 00000000..1639a941 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/StationMissControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationMissControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationMissControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/stationMiss/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMissReq req = new StationMissReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/VehicleDailyCountControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/VehicleDailyCountControllerTest.java new file mode 100644 index 00000000..9440a2c5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/VehicleDailyCountControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class VehicleDailyCountControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(VehicleDailyCountControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/vehicleDaily/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + VehicleDailyReq req = new VehicleDailyReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java new file mode 100644 index 00000000..2a7bd111 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java @@ -0,0 +1,98 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.util.Date; + +/** + * @author yulei + **/ +public class DateUtilsTest extends BaseApplicationTest { + + @Test + public void getDate(){ + String s = DateUtils.getDate(); + Assertions.assertNotNull(s); + } + + @Test + public void getTime(){ + String s = DateUtils.getTime(); + Assertions.assertNotNull(s); + } + + @Test + public void dateTimeNow(){ + String s = DateUtils.dateTimeNow(); + Assertions.assertNotNull(s); + } + + @Test + public void dateTimeNow2(){ + String s = DateUtils.dateTimeNow("YYYY_MM_DD"); + Assertions.assertNotNull(s); + } + + @Test + public void dateTime2(){ + String s = DateUtils.dateTime(new Date()); + Assertions.assertNotNull(s); + } + + @Test + public void parseDateToStr(){ + String s = DateUtils.parseDateToStr("YYYY",new Date()); + Assertions.assertNotNull(s); + } + + @Test + public void dateTime3(){ + Date date = DateUtils.dateTime("YYYY","2023"); + Assertions.assertNotNull(date); + } + + @Test + public void dateTime4(){ + Date date = DateUtils.dateTime(); + Assertions.assertNotNull(date); + } + + @Test + public void date(){ + Date s = DateUtils.date(); + Assertions.assertNotNull(s); + } + + @Test + public void parseDate(){ + Date s = DateUtils.parseDate("20240111"); + Assertions.assertNotNull(s); + } + + @Test + public void addDays(){ + Date s = DateUtils.addDays(new Date(),1); + Assertions.assertNotNull(s); + } + + @Test + public void getServerStartDate(){ + Date s = DateUtils.getServerStartDate(); + Assertions.assertNotNull(s); + } + + @Test + public void differentDaysByMillisecond(){ + int s = DateUtils.differentDaysByMillisecond(new Date(),new Date()); + Assertions.assertEquals(s,0); + } + + @Test + public void getDatePoor(){ + String s = DateUtils.getDatePoor(new Date(),new Date()); + Assertions.assertNotNull(s); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IPUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IPUtilTest.java new file mode 100644 index 00000000..49797de0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IPUtilTest.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.IPUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.mockito.Mockito; + +import javax.servlet.http.HttpServletRequest; +import java.net.SocketException; + +/** + * @author yulei + **/ +public class IPUtilTest extends BaseApplicationTest { + + @Test + public void getLocalIP() throws SocketException { + String localIP = IPUtil.getLocalIP(); + Assertions.assertNotNull(localIP); + } + + @Test + public void getIpAddr() { + HttpServletRequest request = Mockito.mock(HttpServletRequest.class); + + Mockito.when(request.getHeader("x-forwarded-for")).thenReturn("192.168.1.1"); + Mockito.when(request.getHeader("Proxy-Client-IP")).thenReturn(null); + Mockito.when(request.getHeader("WL-Proxy-Client-IP")).thenReturn("192.168.1.2"); + Mockito.when(request.getRemoteAddr()).thenReturn("127.0.0.1"); + String ipAddress = IPUtil.getIpAddr(request); + Assertions.assertNotNull(ipAddress); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IpWhiteCheckUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IpWhiteCheckUtilTest.java new file mode 100644 index 00000000..303eb9bd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IpWhiteCheckUtilTest.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.IpWhiteCheckUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +/** + * @author yulei + **/ +public class IpWhiteCheckUtilTest extends BaseApplicationTest { + + @Test + public void getAvaliIpList(){ + boolean permited = IpWhiteCheckUtil.isPermited("172.16.12.14", "172.16.12.14;172.18.23.*"); + Assertions.assertEquals(true,permited); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/JacksonUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/JacksonUtilTest.java new file mode 100644 index 00000000..74bf5fdd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/JacksonUtilTest.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectWriter; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.mockito.Mock; +import org.mockito.Mockito; + +import java.io.File; +import java.io.IOException; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +public class JacksonUtilTest extends BaseApplicationTest { + + @Mock + private static ObjectMapper OBJECT_MAPPER; + + @Mock + private static ObjectMapper OBJECT_MAPPER_SNAKE_CASE; + + @Mock + private static ObjectWriter OBJECT_WRITER; + + @Test + public void obj2String() throws JsonProcessingException { + Mockito.when(OBJECT_MAPPER.writeValueAsString("test")).thenReturn("\"test\""); + String result = JacksonUtil.obj2String("test"); + Assertions.assertEquals("test", result); + } + + @Test + public void obj2StringFieldSnakeCase() throws JsonProcessingException { + Object obj = new Object(); // Replace with your actual object + Mockito.when(OBJECT_MAPPER_SNAKE_CASE.writeValueAsString(obj)).thenReturn("{\"field_name\":\"value\"}"); + + String result = JacksonUtil.obj2StringFieldSnakeCase(obj); + + Assertions.assertEquals("{}", result); + } + + @Test + public void string2ObjFieldLowerCamelCase() throws JsonProcessingException { + String str = "{\"field_name\":\"value\"}"; + Object expectedResult = new Object(); // Replace with your actual expected object + Mockito.when(OBJECT_MAPPER_SNAKE_CASE.readValue(str, Object.class)).thenReturn(expectedResult); + + // 调用string2ObjFieldLowerCamelCase方法 + Object result = JacksonUtil.string2ObjFieldLowerCamelCase(str, Object.class); + + // 验证返回的对象是否符合预期 + Assertions.assertNotNull(result); + } + + @Test + public void string2ListFieldLowerCamelCase() throws JsonProcessingException { + String str = "[{\"field_name\":\"value1\"},{\"field_name\":\"value2\"}]"; + TypeReference> typeReference = new TypeReference>() {}; + List expectedResult = Arrays.asList(new Object(), new Object()); // Replace with your actual expected list + Mockito.when(OBJECT_MAPPER_SNAKE_CASE.readValue(str, typeReference)).thenReturn(expectedResult); + + // 调用string2ListFieldLowerCamelCase方法 + List result = JacksonUtil.string2ListFieldLowerCamelCase(str, typeReference); + + // 验证返回的列表是否符合预期 + Assertions.assertNotNull(result); + } + + @Test + public void obj2StringPretty() throws JsonProcessingException { + Object obj = new Object(); // Replace with your actual object + Mockito.when(OBJECT_MAPPER.writerWithDefaultPrettyPrinter()).thenReturn(OBJECT_WRITER); + Mockito.when(OBJECT_WRITER.writeValueAsString(obj)).thenReturn("\"pretty-printed-json\""); + + // 调用obj2StringPretty方法 + String result = JacksonUtil.obj2StringPretty(obj); + + // 验证返回的字符串是否符合预期 + Assertions.assertEquals("{ }", result); + } + + @Test + public void parseArray() throws JsonProcessingException { + Object[] arguments = new Object[]{"value1", "value2"}; + Mockito.when(OBJECT_MAPPER.writeValueAsString(arguments)).thenReturn("[\"value1\",\"value2\"]"); + + // 调用parseArray方法 + String result = JacksonUtil.parseArray(arguments); + + // 验证返回的字符串是否符合预期 + Assertions.assertEquals("[\"value1\",\"value2\"]", result); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/NamedParameterUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/NamedParameterUtilTest.java new file mode 100644 index 00000000..923ed037 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/NamedParameterUtilTest.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.NamedParameterUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParsedSql; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.util.HashMap; +import java.util.LinkedHashMap; + +/** + * @author yulei + **/ +public class NamedParameterUtilTest extends BaseApplicationTest { + + @Test + public void parseSqlStatement(){ + ParsedSql parsedSql = NamedParameterUtil.parseSqlStatement("select name,age from stu"); + Assertions.assertNotNull(parsedSql); + } + + @Test + public void substituteNamedParams(){ + String s = NamedParameterUtil.substituteNamedParams(NamedParameterUtil.parseSqlStatement("select name,age from stu"),new HashMap<>()); + Assertions.assertNotNull(s); + } + + @Test + public void buildValueArray(){ + LinkedHashMap stringObjectLinkedHashMap = NamedParameterUtil.buildValueArray(NamedParameterUtil.parseSqlStatement("select name,age from stu"), new HashMap<>()); + Assertions.assertNotNull(stringObjectLinkedHashMap); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/UUIDTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/UUIDTest.java new file mode 100644 index 00000000..fc655975 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/UUIDTest.java @@ -0,0 +1,60 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.UUID; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.security.SecureRandom; +import java.util.concurrent.ThreadLocalRandom; + + +/** + * @author yulei + **/ +public class UUIDTest extends BaseApplicationTest { + + @Test + public void fastUUID(){ + UUID uuid = UUID.fastUUID(); + Assertions.assertNotNull(uuid); + } + + @Test + public void randomUUID(){ + UUID uuid = UUID.randomUUID(); + Assertions.assertNotNull(uuid); + } + + @Test + public void randomUUID2(){ + UUID uuid = UUID.randomUUID(true); + Assertions.assertNotNull(uuid); + } + + @Test + public void nameUUIDFromBytes(){ + byte[] b = new byte[2]; + b[1] = 'c'; + UUID uuid = UUID.nameUUIDFromBytes(b); + Assertions.assertNotNull(uuid); + } + + @Test + public void fromString(){ + UUID uuid = UUID.fromString("a-a-a-a-a"); + Assertions.assertNotNull(uuid); + } + + @Test + public void getSecureRandom(){ + SecureRandom secureRandom = UUID.getSecureRandom(); + Assertions.assertNotNull(secureRandom); + } + + @Test + public void getRandom(){ + ThreadLocalRandom random = UUID.getRandom(); + Assertions.assertNotNull(random); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/application-test.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/application-test.yml new file mode 100644 index 00000000..b9c57dbf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/application-test.yml @@ -0,0 +1,109 @@ +###### +##### svn自己的配置信息,都需要拿到本地来 +spring: + # 使用H2数据库 + datasource: + url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=FALSE;MODE=PostgreSQL + driver-class-name: org.h2.Driver + username: + password: + + config: + use-legacy-processing: true + cloud: + config: + # 不从远程拿配置文件 + enabled: false + sql: + init: + schema-locations: classpath:sql/schema.sql + data-locations: classpath:sql/data.sql + username: root + password: + mode: always + separator: ; + platform: h2 + encoding: utf-8 + +server: + shutdown: immediate +eureka: + client: + # 不注册 + enabled: false + +#### +#### svn的application配置 +ribbon: + eager-load: + enabled: true + OkToRetryOnAllOperation: false + ReadTimeout: 20000 + ConnectTimeout: 10000 + MaxAutoRetriesNextServer: 0 + MaxAutoRetries: 0 + +feign: + httpclient: + enabled: false + okhttp: + enabled: true + compression: + request: + enabled: true + response: + enabled: true + +management: + security: + enabled: false + metrics: + export: + prometheus: + enabled: true + endpoint: + health: + show-details: always + metrics: + enabled: true + prometheus: + enabled: true + pause: + enabled: true + restart: + enabled: true + shutdown: + enabled: true + endpoints: + web: + exposure: + include: '*' + +api: + test: + # 测试次数 + num: 10 + # 毫秒, + avgTime: 3000 + # api接口文档模板 + + +sftp: + host: 172.16.12.108 + port: 22 + username: flink + password: flink123 + work-paths: /sftp + session-connect-timeout: 2000 + channel-connect-timeout: 1000 + strict-host-key-checking: no + pool: + max-idle: 8 + min-idle: 0 + max-wait-millis: 10000 + max-total: 10 + sdk: + path: /sftp/sdk/sss.jar +logging: + level: + root: debug \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/bootstrap-test.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/bootstrap-test.yml new file mode 100644 index 00000000..0bda69c7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/bootstrap-test.yml @@ -0,0 +1,11 @@ +spring: + cloud: + config: + discovery: + enabled: false + enabled: false + +# 配置eureka客户端信息 +eureka: + client: + enabled: false diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/sql/data.sql b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/sql/data.sql new file mode 100644 index 00000000..587ea18e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/sql/data.sql @@ -0,0 +1,2304 @@ +INSERT INTO seqno (nextval) VALUES (3045); + +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_waybill_js', 0, '1', 'SELECT * FROM pf_waybill_js where workdate=''{currDate} 00:00:00''', 'jsyHiveDs', 1, 'ods_route_schedule_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_up_down_site', 0, '1', 'SELECT * FROM pf_line_up_down_site where workdate=''{currDate}''', 'jsyHiveDs', 1, 'ods_route_station_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_info', 0, '1', 'SELECT * FROM pf_line_info where workdate=''{currDate}''', 'jsyHiveDs', 1, 'ods_route_path_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_gateway', 0, '1', 'SELECT * FROM pf_gateway where workdate=''{currDateSimple}''', 'jsyHiveDs', 1, 'ods_bus_stop_time_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user2', 0, '1', 'tbl_sys_user LIMIT 2000', 'klbPgDs', 1, 'tbl_sys_user_zltest', 'klbPgDs', 'delete from tbl_sys_user_zltest', '{user_id:user_id,version_num:version_num,rec_token:rec_token,dept_id:dept_id,user_name:user_name,nick_name:nick_name,user_type:user_type,email:email,phonenumber:phonenumber,sex:sex,avatar:avatar,password:password,status:status,del_flag:del_flag,login_ip:login_ip,login_date:login_date,is_locked:is_locked,login_error_count:login_error_count,last_login_error_time:last_login_error_time,create_by:create_by,create_time:create_time,update_by:update_by,update_time:update_time,remark:remark}', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_license_plate_pos', 0, '1', 'SELECT * FROM ods_monitor.license_plate_pos where txn_date=''{currDate}'' ', 'sjztHiveDs', 1, 'ods_license_plate_pos_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dws_product_consum_month', 0, '1', 'SELECT * FROM sptcc.dws_product_consum_month where month_name=''{currMonthSimple}'' ', 'sjztHiveDs', 1, 'ods_product_consum_month_{currMonthSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dwd_consum_trans', 0, '1', 'SELECT * FROM sptcc.dwd_consum_trans where txn_date=''{currDateSimple}'' ', 'sjztHiveDs', 1, 'ods_consum_trans_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user3', 0, '1', 'SELECT * FROM dwd_consum_trans limit 100', 'klbHiveDs', 1, 'dwd_consum_trans_zltest.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_line_day_count', 0, '1', 'SELECT * FROM agile.bus_line_day_count where txn_date=''{currDateSimple}'' ', 'sjztHiveDs', 1, 'tbl_index_bus_line_day_count', 'klbPgSjztDs', 'delete from tbl_index_bus_line_day_count where txn_date=''{currDateSimple}''', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_trans_day_count', 0, '1', 'SELECT * FROM agile.bus_trans_day_count where txn_date=''{currDateSimple}'' ', 'sjztHiveDs', 1, 'tbl_index_bus_trans_day_count', 'klbPgSjztDs', 'delete from tbl_index_bus_trans_day_count where txn_date=''{currDateSimple}''', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user', 0, '1', 'SELECT * FROM tbl_sys_user LIMIT 20000', 'klbPgDs', 1, 'tbl_sys_user-{datetime}.csv', 'csv', 'true', '{user_name:user_name,user_id:user_id,version_num:version_num,rec_token:rec_token,dept_id:dept_id}', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user4', 0, '1', 'SELECT * FROM dwd_consum_trans limit 10', 'klbHiveDs', 1, 'tbl_zltest', 'klbPgDs', '', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); + +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user3', 166, 'c94abdf6', '测试写入数据库', '2023-10-08 17:48:27.821', '2023-10-08 17:48:38.645', '10.82秒', '2023-10-08 17:48:27.821', '2023-08-30', 'finish', '00', '2023-10-08 17:48:38.645', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user', 70, 'db92a760', '测试写入文件', '2023-10-09 14:47:05.256', '2023-10-09 14:47:07.238', '1.98秒', '2023-10-09 14:47:05.256', '2023-07-24', 'finish', '00', '2023-10-09 14:47:07.238', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_line_day_count', 0, '1', '同步数据中台表(agile)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_trans_day_count', 0, '1', '同步数据中台表(agile)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_gateway', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_info', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_waybill_js', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_up_down_site', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_own4', 0, '1', '同步数据中台表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dws_product_consum_month', 0, '1', '同步数据中台表(sptcc)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dwd_consum_trans', 0, '1', '同步数据中台表(sptcc)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_license_plate_pos', 0, '1', '同步数据中台表(ods_monitor)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user2', 104, 'c3c02f41', '测试写入数据库', '2023-11-17 15:15:08.474', '2023-11-17 15:15:08.604', '0.13秒', '2023-11-17 15:15:08.474', '2023-08-28', 'finish', '00', '2023-11-17 15:15:08.604', NULL, NULL, NULL); + + +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (116, '3', 'admin', '2023-10-10 11:16:53', NULL, 'admin', '2023-10-10 11:16:53', '', '文件下载', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:date,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:fileType,nullable:0,paramComment:文件类型:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:文件流,dataType:String,exampleValue:xxxx,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'download', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (94, '1', 'yts', '2023-10-09 15:25:53', NULL, 'admin', '2023-10-10 15:37:55', '', '11111', '11', '/public/agile-data/api/v1.0.0/11111', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id FROM tbl_data_api}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '1a83932f41', '1', '11', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (95, '1', 'yts', '2023-10-09 16:10:09', NULL, 'admin', '2023-10-10 15:38:01', '', '11', '11111', '/public/agile-data/api/v1.0.0/111111', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:1,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:null},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code FROM tbl_data_api}', '[{paramName:api_code,nullable:0,paramComment:API code,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '6125bfd318', '1', '111111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (98, '3', 'admin', '2023-10-09 17:46:07', NULL, 'admin', '2023-10-09 17:46:07', '', '线路客流量-小时', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:14,exampleValue:2023-10-01,defaultValue:1},{paramName:companyCode,nullable:1,paramComment:运营公司编码,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fildName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'lineHour', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (100, '3', 'admin', '2023-10-09 17:51:33', NULL, 'admin', '2023-10-09 17:51:33', '', '站点客流量-小时', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:Long,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationHour', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (102, '3', 'admin', '2023-10-09 17:59:54', NULL, 'admin', '2023-10-09 17:59:54', '', '站点客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:4,exampleValue:2023-10,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricMonth,fieldComment:指标月份,dataType:Date,exampleValue:2023-10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (105, '3', 'admin', '2023-10-10 10:03:52', NULL, 'admin', '2023-10-10 10:03:52', '', '站点换乘客流量-小时', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:hour,nullable:0,paramComment:小时,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:metricHour,nullable:0,paramComment:指标小时,whereType:1,paramType:2,exampleValue:21,defaultValue:1},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationTransHour', '2', NULL); +-- INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (114, '3', 'admin', '2023-10-10 11:14:24', NULL, 'admin', '2023-10-10 11:14:24', '', '班次客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:licensePlate,fieldComment:车辆牌照,dataType:String,exampleValue:沪A 8888,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:driverCode,fieldComment:司机工号,dataType:String,exampleValue:10086,fieldAliasName:,cipherType:null,cryptType:null},{paramName:startStation,fieldComment:起点,dataType:String,exampleValue:xx,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:startTime,fieldComment:发车时间,dataType:Date,exampleValue:2023-10-01:12:00:00,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:endStation,fieldComment:终点,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{paramName:arrivalTime,fieldComment:到达时间,dataType:Date,exampleValue:2023-10-01:12:00:00,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:waybillType,fieldComment:路单类型,dataType:String,exampleValue:2,fieldAliasName:,cipherType:null,cryptType:null},{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0 '1', '0', 'routeDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (111, '3', 'admin', '2023-10-10 10:46:07', NULL, 'admin', '2023-10-10 10:46:07', '', '站点常乘客换乘客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqTransDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (90, '1', 'yts', '2023-10-09 14:22:49', NULL, 'admin', '2023-10-10 15:37:50', '', '11111', '11', '/public/agile-data/api/v1.0.0/11', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:1},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name, api_type FROM tbl_data_api}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_type,fieldComment:类型:1敏捷API 2系统API,dataType:bpchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 5, '36b14fb142', '1', '1111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (91, '1', 'yts', '2023-10-09 14:43:19', NULL, 'admin', '2023-10-10 15:38:05', '', '222', '22', '/public/agile-data/api/v1.0.0/v1.0.0/', 'GET', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id FROM tbl_data_api}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:1,paramType:1,exampleValue:22,defaultValue:22}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:22,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:22,fieldAliasName:null,cipherType:null,cryptType:null}]', 4, '5beaeb1a6c', '1', '22', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (118, '1', 'admin', '2023-10-10 16:23:35', NULL, 'admin', '2023-10-11 14:03:03', 'ss', 'wewq', 'qe', '/public/agile-data/api/v1.0.0/weq', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_name, api_id, api_code FROM tbl_data_api}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:3,paramType:1,exampleValue:sds,defaultValue:sds}]', '[{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:sad,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:sdsd,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:sds,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '3425f78264', '1', 'eqwe', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (120, '1', 'admin', '2023-10-10 18:07:24', NULL, 'admin', '2023-10-11 14:03:06', 'scsaa', 'dsds', 'ss', '/public/agile-data/api/ss/sds', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3470,tableName:tbl_data_api_log,fieldParams:[{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:调用api,reqable:1,resable:1},{columnName:api_log_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api_log''::regclass),columnComment:主键ID,reqable:null,resable:null},{columnName:caller_date,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:调用时间,reqable:null,resable:null},{columnName:caller_id,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:调用者id,reqable:null,resable:null},{columnName:caller_ip,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:调用者ip,reqable:null,resable:null},{columnName:caller_params,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:调用参数,reqable:null,resable:null},{columnName:caller_size,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:调用数据量,reqable:null,resable:null},{columnName:caller_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:调用url,reqable:null,resable:null},{columnName:msg,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:信息记录,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:状态(0成功,1失败),reqable:null,resable:null},{columnName:time,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:调用耗时,reqable:null,resable:null}],sqlText:SELECT api_id FROM tbl_data_api_log}', '[{paramName:api_id,nullable:0,paramComment:调用api,whereType:=,paramType:Long,exampleValue:1,defaultValue:1}]', '[{fieldName:api_id,fieldComment:调用api,dataType:int8,exampleValue:sds,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, 'f5b8080260', '1', 'dssa', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (121, '1', 'admin', '2023-10-10 20:26:31', NULL, 'admin', '2023-10-10 20:32:44', '', '11', '11', '/public/agile-data/api/11/11', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '06bc016332', '1', '11111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (117, '1', 'admin', '2023-10-10 15:41:27', NULL, 'admin', '2023-10-11 14:03:00', '', '测试API', 'v1.2', '/public/agile-data/api/v1.0.0/test', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 3, '28c2dec899', '1', '23232', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (119, '3', 'admin', '2023-10-10 17:45:28', NULL, 'admin', '2023-10-13 20:12:28', '', 'sds', 'v13', '/public/agile-data/api/v13/ds/aw/d', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:52,defaultValue:23}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:sds,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:52,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:测试,fieldAliasName:null,cipherType:null,cryptType:null}]', 5, 'c0dcccefea', '0', 'dsds', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (122, '4', 'admin', '2023-10-11 14:04:10', NULL, 'admin', '2023-10-13 19:06:59', '', '测试API', 'v1.0', '/public/agile-data/api/v1.0/test', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:0,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name = :api_name}}', '[{paramName:api_name,nullable:1,paramComment:API名称,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 14, '8a1b49a367', '0', '222333', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (123, '1', 'admin', '2023-10-11 15:24:34', NULL, 'yts', '2023-10-12 17:17:06', '', '11', '11', '/public/agile-data/api/11/22', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:0,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name = :api_name}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 6, 'e6bb740804', '1', '111111111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (124, '1', 'admin', '2023-10-11 16:02:12', NULL, 'yts', '2023-10-12 17:17:09', '', 'cecvec', 'v1.0', '/public/agile-data/api/v1.0/cdcd', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:2,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name = :api_name}}', '[{paramName:api_name,nullable:0,paramComment:dd,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null}]', 4, 'a8e83108e7', '1', 'dfasdf', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (128, '3', 'admin1', '2023-10-17 10:26:50', NULL, 'admin1', '2023-10-17 15:35:58', '', 'sds-副本20231017102612', 'v13', '/public/agile-data/api/v13/ds/aw/d/copy20231017102612', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:0,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:1,defaultValue:116}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:12,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:23,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:231,fieldAliasName:null,cipherType:null,cryptType:null}]', 8, 'a1e7a3654e', '0', 'API0000127', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (129, '2', 'admin1', '2023-10-17 16:12:57', NULL, 'admin1', '2023-10-17 16:40:33', '', '演示001', 'v.1', '/public/agile-data/api/v.1/a/b/c/s', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 6, '4023ff57a1', '0', 'code001', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (131, '1', 'admin2', '2023-10-17 16:46:55', NULL, NULL, '2023-10-17 16:46:55', '', '演示001-副本20231017164617', 'v.1', '/public/agile-data/api/v.1/a/b/c/s/copy20231017164617', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '2938d32d65', '0', 'API0000130', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (133, '1', 'admin1', '2023-10-31 14:07:28', NULL, 'admin', '2023-11-15 19:03:35', '', '演示001-副本20231017164617-副本20231031140644', 'v.1', '/public/agile-data/api/v.1/a/b/c/s/copy23', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 4, '5f4a3fd693', '1', 'API0000132', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (135, '4', 'admin1', '2023-11-01 16:24:04', NULL, 'admin1', '2023-11-01 17:15:51', '', '测试003', 'v1.2', '/public/agile-data/api/v1.2/ds/ds', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4806,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_id, api_code, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:119,defaultValue:119}]', '[{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:119,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:test003,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:测试003,fieldAliasName:null,cipherType:null,cryptType:null}]', 3, 'a749240dbe', '0', 'test003', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (137, '2', 'admin1', '2023-11-01 17:16:53', NULL, 'admin1', '2023-11-01 17:19:12', '', '测试003-copy', 'v1.2', '/public/agile-data/api/v1.2/ds/ds/sd', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4806,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_id, api_code, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:119,defaultValue:119}]', '[{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:119,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:test003,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:测试003,fieldAliasName:null,cipherType:null,cryptType:null}]', 6, '2dec96f64e', '0', 'API0000136', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (138, '2', 'admin1', '2023-11-02 15:16:40', NULL, 'admin1', '2023-11-02 15:19:28', '', 'test4', 'v1', '/public/agile-data/api/v1/test/004', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4888,tableName:tbl_sys_user,fieldParams:[{columnName:avatar,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:【头像地址】,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:【创建者】,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:null,columnComment:【创建时间】,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:dept_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:【部门ID】,reqable:null,resable:null},{columnName:email,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:【用户邮箱】,reqable:null,resable:null},{columnName:is_locked,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:【锁定状态】,reqable:null,resable:null},{columnName:last_login_error_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:【登陆错误时间】,reqable:null,resable:null},{columnName:login_date,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:【最后登录时间】,reqable:null,resable:null},{columnName:login_error_count,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:【登陆错误次数】,reqable:null,resable:null},{columnName:login_ip,dataType:varchar,dataLength:128,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:【最后登录IP】,reqable:null,resable:null},{columnName:nick_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:6,dataDefault:null,columnComment:【用户昵称】,reqable:null,resable:null},{columnName:password,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:【密码】,reqable:null,resable:null},{columnName:phonenumber,dataType:varchar,dataLength:11,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:【手机号码】,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:3,dataDefault:''1''::character varying,columnComment:【随机码】,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:【备注】,reqable:null,resable:null},{columnName:sex,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:【用户性别】0男 1女 2未知,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:【帐号状态】0正常 1停用,reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:22,dataDefault:null,columnComment:【更新者】,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:【更新时间】,reqable:null,resable:null},{columnName:user_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_sys_user''::regclass),columnComment:【用户ID】,reqable:1,resable:1},{columnName:user_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:5,dataDefault:null,columnComment:【用户账号】,reqable:null,resable:1},{columnName:user_type,dataType:varchar,dataLength:2,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:''00''::character varying,columnComment:【用户类型】00系统用户,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:0,columnComment:【版本号】,reqable:null,resable:null}],sqlText:SELECT user_id, user_name FROM tbl_sys_user WHERE 1 = 1 ${AND user_id = :user_id}}', '[{paramName:user_id,nullable:0,paramComment:【用户ID】,whereType:=,paramType:Long,exampleValue:1,defaultValue:1}]', '[{fieldName:user_id,fieldComment:【用户ID】,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:user_name,fieldComment:【用户账号】,dataType:varchar,exampleValue:admin,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '9499ca728a', '0', 'test004', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (139, '1', 'admin', '2023-11-06 16:17:02', NULL, NULL, '2023-11-06 16:17:02', '', '测试表下拉框', 'v1.0', '/public/agile-data/api/v1.0/testcc', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4806,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id} ${AND api_name = :api_name}}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:1,defaultValue:1},{paramName:api_name,nullable:1,paramComment:API名称,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '84c19ff9ce', '0', 'testcc', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (110, '3', 'admin', '2023-10-10 10:43:42', NULL, 'admin', '2023-10-10 10:43:42', '', '站点常乘客客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:date,exampleValue:2023-10,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:lineStatus,fieldComment:换乘方式,dataType:String,exampleValue:线路状态,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricMonth,fieldComment:指标月份,dataType:String,exampleValue:2023-10,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (101, '3', 'admin', '2023-10-09 17:56:20', NULL, 'admin', '2023-10-09 17:56:20', '', '站点客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:2023-10-01,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:2023-10-01,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:Long,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (97, '3', 'admin', '2023-10-09 17:46:07', NULL, 'admin', '2023-10-09 17:46:07', '', '线路客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', 'paramName:companyCode,nullable:1,paramComment:运营公司编码,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null}{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:主键,dataType:Long,exampleValue:2131,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'lineDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (113, '3', 'admin', '2023-10-10 11:02:17', NULL, 'admin', '2023-10-10 11:02:17', '', '站点常乘客换乘客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:exchangeType,nullable:0,paramComment:换乘方式,whereType:1,paramType:String,exampleValue:公交换乘,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqTransMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (106, '3', 'admin', '2023-10-10 10:11:14', NULL, 'admin', '2023-10-10 10:11:14', '', '站点换乘客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:exchangeType,nullable:0,paramComment:换乘方式,whereType:1,paramType:1,exampleValue:换乘公交,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationTransDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (107, '3', 'admin', '2023-10-10 10:14:14', NULL, 'admin', '2023-10-10 10:14:14', '', '站点换乘客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:date,exampleValue:2023-10,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:exchangeType,nullable:0,paramComment:换乘方式,whereType:1,paramType:1,exampleValue:换乘公交,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricMonth,fieldComment:指标月份,dataType:String,exampleValue:2023-10,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationTransMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (99, '3', 'admin', '2023-10-09 17:46:07', NULL, 'admin', '2023-10-09 17:46:07', '', '线路客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:companyCode,nullable:1,paramComment:运营公司编码,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'lineMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (109, '3', 'admin', '2023-10-10 10:18:05', NULL, 'admin', '2023-10-10 10:18:05', '', '站点常乘客客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:lineStatus,fieldComment:换乘方式,dataType:String,exampleValue:线路状态,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (141, '1', 'admin1', '2023-11-14 10:07:24', NULL, 'admin1', '2023-11-14 13:40:20', '', 'wew', 'v2', '/public/agile-data/api/v2/s/d/fff', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4802,tableName:gen_table,fieldParams:[{columnName:business_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:生成业务名,reqable:1,resable:1},{columnName:class_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:实体类名称,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:创建者,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:创建时间,reqable:null,resable:null},{columnName:function_author,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:生成功能作者,reqable:null,resable:null},{columnName:function_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:生成功能名,reqable:null,resable:null},{columnName:gen_path,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:生成路径(不填默认项目路径),reqable:null,resable:null},{columnName:gen_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:生成代码方式(0zip压缩包 1自定义路径),reqable:null,resable:null},{columnName:module_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:生成模块名,reqable:null,resable:null},{columnName:options,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:其它生成选项,reqable:null,resable:null},{columnName:package_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:生成包路径,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:sub_table_fk_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:子表关联的外键名,reqable:null,resable:null},{columnName:sub_table_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:关联子表的表名,reqable:null,resable:null},{columnName:table_comment,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:表描述,reqable:null,resable:null},{columnName:table_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_gen_table''::regclass),columnComment:编号,reqable:null,resable:null},{columnName:table_name,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:2,dataDefault:null,columnComment:表名称,reqable:null,resable:null},{columnName:tpl_category,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:使用的模板(crud单表操作 tree树表操作),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:更新者,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:更新时间,reqable:null,resable:null}],sqlText:SELECT business_name FROM gen_table WHERE 1 = 1 ${AND business_name = :business_name}}', '[{paramName:business_name,nullable:0,paramComment:生成业务名,whereType:=,paramType:String,exampleValue:s,defaultValue:w}]', '[{fieldName:business_name,fieldComment:生成业务名,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 4, '5e6daadccb', '0', '1232', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (143, '1', 'admin', '2023-11-15 18:58:10', NULL, NULL, '2023-11-15 18:58:10', '', '演示001-副本20231017164617-副本20231031140644-副本', 'v.1', '/public/agile-data/api/v.1/a/b/c/s/copy23', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, 'dcda9a28e9', '0', 'API0000142', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (145, '1', 'admin', '2023-11-15 19:03:39', NULL, NULL, '2023-11-15 19:03:39', '', 'wew-副本', 'v2', '/public/agile-data/api/v2/s/d/fff', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4802,tableName:gen_table,fieldParams:[{columnName:business_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:生成业务名,reqable:1,resable:1},{columnName:class_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:实体类名称,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:创建者,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:创建时间,reqable:null,resable:null},{columnName:function_author,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:生成功能作者,reqable:null,resable:null},{columnName:function_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:生成功能名,reqable:null,resable:null},{columnName:gen_path,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:生成路径(不填默认项目路径),reqable:null,resable:null},{columnName:gen_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:生成代码方式(0zip压缩包 1自定义路径),reqable:null,resable:null},{columnName:module_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:生成模块名,reqable:null,resable:null},{columnName:options,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:其它生成选项,reqable:null,resable:null},{columnName:package_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:生成包路径,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:sub_table_fk_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:子表关联的外键名,reqable:null,resable:null},{columnName:sub_table_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:关联子表的表名,reqable:null,resable:null},{columnName:table_comment,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:表描述,reqable:null,resable:null},{columnName:table_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_gen_table''::regclass),columnComment:编号,reqable:null,resable:null},{columnName:table_name,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:2,dataDefault:null,columnComment:表名称,reqable:null,resable:null},{columnName:tpl_category,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:使用的模板(crud单表操作 tree树表操作),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:更新者,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:更新时间,reqable:null,resable:null}],sqlText:SELECT business_name FROM gen_table WHERE 1 = 1 ${AND business_name = :business_name}}', '[{paramName:business_name,nullable:0,paramComment:生成业务名,whereType:=,paramType:String,exampleValue:s,defaultValue:w}]', '[{fieldName:business_name,fieldComment:生成业务名,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '86875f8e7d', '0', 'API0000144', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (148, '1', 'admin', '2023-11-15 19:06:36', NULL, 'admin', '2023-11-17 14:19:48', '', 'wew-副本', 'v3', '/public/agile-data/api/v3/s/d/fff', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4802,tableName:gen_table,fieldParams:[{columnName:business_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:生成业务名,reqable:1,resable:1},{columnName:class_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:实体类名称,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:创建者,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:创建时间,reqable:null,resable:null},{columnName:function_author,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:生成功能作者,reqable:null,resable:null},{columnName:function_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:生成功能名,reqable:null,resable:null},{columnName:gen_path,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:生成路径(不填默认项目路径),reqable:null,resable:null},{columnName:gen_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:生成代码方式(0zip压缩包 1自定义路径),reqable:null,resable:null},{columnName:module_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:生成模块名,reqable:null,resable:null},{columnName:options,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:其它生成选项,reqable:null,resable:null},{columnName:package_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:生成包路径,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:sub_table_fk_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:子表关联的外键名,reqable:null,resable:null},{columnName:sub_table_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:关联子表的表名,reqable:null,resable:null},{columnName:table_comment,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:表描述,reqable:null,resable:null},{columnName:table_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_gen_table''::regclass),columnComment:编号,reqable:null,resable:null},{columnName:table_name,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:2,dataDefault:null,columnComment:表名称,reqable:null,resable:null},{columnName:tpl_category,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:使用的模板(crud单表操作 tree树表操作),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:更新者,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:更新时间,reqable:null,resable:null}],sqlText:SELECT business_name FROM gen_table WHERE 1 = 1 ${AND business_name = :business_name}}', '[{paramName:business_name,nullable:0,paramComment:生成业务名,whereType:=,paramType:String,exampleValue:s,defaultValue:w}]', '[{fieldName:business_name,fieldComment:生成业务名,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:1,cryptType:1}]', 2, '8b29317c9d', '0', 'API0000147', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (149, '1', 'test88', '2023-12-04 13:32:09', NULL, NULL, '2023-12-04 13:32:09', '', '展示测试', 'v1.0', '/public/agile-data/api/v1.0/show', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:10194,tableName:tbl_data_metadata_source,fieldParams:[{columnName:conn_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:连接id,reqable:1,resable:1},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:0},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:db_schema,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:数据源连接信息,reqable:null,resable:null},{columnName:db_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:数据源类型,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:is_sync,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:元数据同步(0已同步 1同步中 2未同步),reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:14,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_metadata_source''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:source_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:数据源名称,reqable:null,resable:1},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(0正常,1停用),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT conn_id, source_id, source_name FROM tbl_data_metadata_source WHERE 1 = 1 ${AND conn_id = :conn_id}}', '[{paramName:conn_id,nullable:1,paramComment:连接id,whereType:=,paramType:Long,exampleValue:1,defaultValue:1}]', '[{fieldName:conn_id,fieldComment:连接id,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:source_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:source_name,fieldComment:数据源名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '93d8933353', '0', 'testshow', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (150, '1', 'admin1', '2023-12-08 14:47:55', NULL, NULL, '2023-12-08 14:47:55', '测试数据', 'ceode', '1', '/public/agile-data/api/1/s/d/e/f', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:10188,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:null},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:60,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_id FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Number,exampleValue:95,defaultValue:95}]', '[{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:95,fieldAliasName:null,cipherType:2,cryptType:1}]', 0, '6d44618b77', '0', 'eweq', '1', 47); + + +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (459, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:48', NULL, 20, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (460, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:51', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (461, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:20:47', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (462, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:42:55', NULL, 66, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (463, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:43:15', NULL, 18, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (471, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:30', NULL, 55, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (472, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:33', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (473, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:34', NULL, 11, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (474, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:39', NULL, 10, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (475, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:41', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (476, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:43', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (477, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 17:49:29', NULL, 9, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (478, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-15 16:25:19', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (479, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-17 17:02:52', NULL, 52, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (480, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-21 09:33:02', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); + +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (480, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-21 09:33:02', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (479, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-17 17:02:52', NULL, 52, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (478, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-15 16:25:19', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (477, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 17:49:29', NULL, 9, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (476, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:43', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (475, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:41', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (474, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:39', NULL, 10, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (473, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:34', NULL, 11, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (472, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:33', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (471, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:30', NULL, 55, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (470, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:23:39', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (469, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:22:21', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (468, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:21:14', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (467, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:13:14', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (466, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:06:41', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (465, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 15:55:12', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (464, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 15:45:18', NULL, 10, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (463, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:43:15', NULL, 18, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (462, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:42:55', NULL, 66, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (461, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:20:47', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (460, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:51', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (459, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:48', NULL, 20, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (458, 137, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 17:18:36', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (457, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:25', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (456, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:24', NULL, 2, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (455, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:23', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (454, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:22', NULL, 2, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (453, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:20', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (452, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:19', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (451, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:18', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (450, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:17', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (449, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:15', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (448, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:14', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (447, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:12', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (446, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:07', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (445, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:06', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (444, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:05', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (443, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:04', NULL, 12, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (442, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:02', NULL, 12, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (441, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:00', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (440, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:58', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (439, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:57', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (438, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:54', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (437, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:53', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); + +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31938, 'business_name', '生成业务名', 'varchar', NULL, '30', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31939, 'class_name', '实体类名称', 'varchar', NULL, '100', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31940, 'create_by', '创建者', 'varchar', NULL, '64', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31941, 'create_time', '创建时间', 'timestamp', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31942, 'function_author', '生成功能作者', 'varchar', NULL, '50', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31943, 'function_name', '生成功能名', 'varchar', NULL, '50', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31944, 'gen_path', '生成路径(不填默认项目路径)', 'varchar', NULL, '200', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31945, 'gen_type', '生成代码方式(0zip压缩包 1自定义路径)', 'bpchar', NULL, '1', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31946, 'module_name', '生成模块名', 'varchar', NULL, '30', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31947, 'options', '其它生成选项', 'varchar', NULL, '1000', NULL, NULL, NULL, NULL); + + +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4219, 47, 'gen_table', '代码生成业务表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4220, 47, 'gen_table_column', '代码生成业务表字段', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4221, 47, 'tbl_batch_table_mapping', '【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4222, 47, 'tbl_batch_task', '【批处理任务表】记录任务处理情况,方便实现增量重跑', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4223, 47, 'tbl_data_api', '【API信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4224, 47, 'tbl_data_api_log', '【API调用日志信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4225, 47, 'tbl_data_asset_column', '数据资产基础元数据', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4226, 47, 'tbl_data_asset_table', '数据资产基础表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4227, 47, 'tbl_data_asset_table_column', '数据资产基础表与元数据关联表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4228, 47, 'tbl_data_metadata_column', '【元数据信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4229, 47, 'tbl_data_metadata_source', '【数据源信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4230, 47, 'tbl_data_metadata_source_conn', '数据源连接信息表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4231, 47, 'tbl_data_metadata_table', '【数据库表信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4232, 47, 'tbl_data_sql_console_conn_num', '数据源连接数', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4233, 47, 'tbl_data_sql_console_export', 'SQL查询导出记录', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4234, 47, 'tbl_data_sql_console_file', '【SQL工作台文件】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4235, 47, 'tbl_data_sql_data_apply', '【SQL元数据权限申请表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4236, 47, 'tbl_data_sql_data_auth', '【元数据授权信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4237, 47, 'tbl_data_sql_log', 'SQL执行日志', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4238, 47, 'tbl_docker_apply_info', '【 容器申请】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4239, 47, 'tbl_docker_apply_lib', '【容器使用自传组件】包含组件和数据', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4240, 47, 'tbl_docker_apply_review', '【 数据注入申请审核表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4241, 47, 'tbl_docker_apply_review_dtl', '【数据注入申请明细】包含组件和数据', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4242, 47, 'tbl_docker_client_info', '【 服务器清单】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4243, 47, 'tbl_docker_config_hardware', '【实验室硬件配置信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4244, 47, 'tbl_docker_download_apply', '【 下载文件申请】容器内的文件下载', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4245, 47, 'tbl_docker_images', '【 容器可用镜像】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4246, 47, 'tbl_docker_port_list', '【 服务器端口】把可用端口配置在这里,端口是固定的几个', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4247, 47, 'tbl_docker_portainer_user', '【portainer管理账户信息】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4248, 47, 'tbl_docker_vpn', '【VPN用户表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4249, 47, 'tbl_docker_with_user', '【 用户与容器信息】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4250, 47, 'tbl_docker_with_user_account', '【 容器用户账户信息】设计成允许多个服务', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4251, 47, 'tbl_org_api_auth', '【机构接口权限表】', NULL, NULL, NULL, NULL); + + + +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54140, 4219, 'business_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54141, 4219, 'class_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54142, 4219, 'create_by', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54143, 4219, 'create_time', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54144, 4219, 'function_author', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54145, 4219, 'function_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54146, 4219, 'gen_path', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54147, 4219, 'gen_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54148, 4219, 'module_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54149, 4219, 'options', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54150, 4219, 'package_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54151, 4219, 'remark', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54152, 4219, 'sub_table_fk_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54153, 4219, 'sub_table_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54154, 4219, 'table_comment', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54155, 4219, 'table_id', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54156, 4219, 'table_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54157, 4219, 'tpl_category', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54158, 4219, 'update_by', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54159, 4219, 'update_time', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54160, 4220, 'column_comment', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54161, 4220, 'column_id', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54162, 4220, 'column_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54163, 4220, 'column_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54164, 4220, 'create_by', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54165, 4220, 'create_time', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54166, 4220, 'dict_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54167, 4220, 'html_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54168, 4220, 'is_edit', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54169, 4220, 'is_increment', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54170, 4220, 'is_insert', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54171, 4220, 'is_list', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54172, 4220, 'is_pk', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54173, 4220, 'is_query', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54174, 4220, 'is_required', NULL); + +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267908, 47, 10184, 'business_name', '生成业务名', '0', '1', '10', 'varchar', '30', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267909, 47, 10184, 'class_name', '实体类名称', '0', '1', '6', 'varchar', '100', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267910, 47, 10184, 'create_by', '创建者', '0', '1', '16', 'varchar', '64', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267911, 47, 10184, 'create_time', '创建时间', '0', '1', '17', 'timestamp', NULL, NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267912, 47, 10184, 'function_author', '生成功能作者', '0', '1', '12', 'varchar', '50', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267913, 47, 10184, 'function_name', '生成功能名', '0', '1', '11', 'varchar', '50', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267914, 47, 10184, 'gen_path', '生成路径(不填默认项目路径)', '0', '1', '14', 'varchar', '200', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267915, 47, 10184, 'gen_type', '生成代码方式(0zip压缩包 1自定义路径)', '0', '1', '13', 'bpchar', '1', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267916, 47, 10184, 'module_name', '生成模块名', '0', '1', '9', 'varchar', '30', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267917, 47, 10184, 'options', '其它生成选项', '0', '1', '15', 'varchar', '1000', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267918, 47, 10184, 'package_name', '生成包路径', '0', '1', '8', 'varchar', '100', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267919, 47, 10184, 'remark', '备注', '0', '1', '20', 'varchar', '500', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267920, 47, 10184, 'sub_table_fk_name', '子表关联的外键名', '0', '1', '5', 'varchar', '64', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267921, 47, 10184, 'sub_table_name', '关联子表的表名', '0', '1', '4', 'varchar', '64', NULL, NULL, NULL, 9); + + + +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (53, '0', 'admin', '2023-11-07 15:57:53.952788', NULL, 'admin', '2023-11-07 15:58:03.220062', '', '9', 'sptcc_agile_test', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_test,sid:null}', 2, 'a2c5013833', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (40, '0', 'admin', '2023-10-17 20:13:36.85609', NULL, 'admin', '2023-10-17 20:25:02.563665', '', '9', '11', '2', '{host:11,port:11,username:11,password:11,dbName:11,sid:null}', 9, '835177cb69', '1', 15); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (46, '0', 'admin', '2023-10-30 16:01:24.765605', NULL, NULL, '2023-10-30 16:01:24.765605', '', '9', '读点', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:读点,sid:null}', 0, '1', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (44, '0', 'admin', '2023-10-30 15:30:28.540324', NULL, 'admin', '2023-10-30 15:30:51.175224', '', '5', 'public', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 2, 'a1f79d0324', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (45, '0', 'admin', '2023-10-30 15:55:57.832079', NULL, 'yts', '2023-11-10 17:37:55.732552', '', '5', 'test', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 26, 'b59392b659', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (39, '0', 'admin', '2023-10-17 13:59:20.31012', NULL, 'admin', '2023-10-19 16:20:21.915351', '', '9', 'db_hive1', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:db_hive1,sid:null}', 4, '71255cc102', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (41, '0', 'admin', '2023-10-19 19:10:59.589874', NULL, 'admin', '2023-10-31 14:45:06.80921', '', '9', 'db_hive1', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:db_hive1,sid:null}', 8, '312740b5f7', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (37, '0', 'admin', '2023-10-16 10:12:04.878404', NULL, 'admin', '2023-10-31 13:27:32.047503', '', '9', 'hive', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:hive,sid:null}', 20, '7df5debad8', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (38, '0', 'admin', '2023-10-16 10:18:39.726136', NULL, 'admin', '2023-11-02 17:44:01.416304', '', '9', 'default', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:default,sid:null}', 36, 'd969238d3b', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (55, '0', 'admin', '2023-11-07 16:10:31.865915', NULL, 'admin', '2023-11-07 16:17:37.302569', '', '9', 'sptcc_agile_test', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_test,sid:null}', 6, '28c1b7482d', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (52, '0', 'admin', '2023-11-07 15:57:29.88465', NULL, 'admin', '2023-11-07 16:17:39.703999', '', '9', 'sptcc_agile_dev', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_dev,sid:null}', 6, '911a6d614a', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (49, '0', 'admin', '2023-10-31 13:50:59.247177', NULL, 'admin', '2023-10-31 14:20:03.742601', '', '9', 'sptcc_agile_dev', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_dev,sid:null}', 6, '774a0bd819', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (47, '0', 'admin', '2023-10-30 16:39:13.81384', NULL, 'admin', '2023-11-30 15:09:52.81723', '', '5', 'public', '0', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 31, '17f8c0935e', '0', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (57, '0', 'yts', '2023-11-14 15:59:35.819045', NULL, 'yts', '2023-11-14 17:22:47.841832', '', '9', 'db_test', '2', '{host:127.0.0.1,port:10000,username:root,password:three,dbName:db_test,sid:null}', 7, 'd429a6bfb4', '0', 20); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (36, '0', 'admin', '2023-10-13 18:39:52.700626', NULL, 'admin', '2023-10-13 18:42:01.942339', '', '5', 'sjzt', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:sjzt,sid:null}', 5, 'ffd92ece74', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (58, '0', 'test88', '2023-12-04 18:09:46.947707', NULL, 'test88', '2023-12-04 18:09:50.7656', '', '5', 'public', '0', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:tanpuhui,sid:null}', 2, 'a339aae711', '0', 21); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (50, '0', 'admin', '2023-10-31 14:00:55.89506', NULL, 'admin', '2023-10-31 14:45:10.057417', '', '9', 'import_data', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:import_data,sid:null}', 7, '43a63151e8', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (48, '0', 'admin', '2023-10-31 13:37:38.282948', NULL, 'admin', '2023-11-01 14:11:35.222813', '', '9', 'hive', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:hive,sid:null}', 33, '8b00caf0c1', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (56, '0', 'admin', '2023-11-13 11:12:56.38509', NULL, 'admin', '2023-11-30 15:09:43.605813', '', '5', 'test', '0', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 23, 'db08d85d3a', '0', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (42, '0', 'admin', '2023-10-26 10:40:19.633998', NULL, 'admin', '2023-10-27 16:22:40.152695', '', '5', 'tanpuhui', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:tanpuhui,sid:null}', 4, 'fb6b4223b6', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (35, '0', 'admin', '2023-10-13 18:37:48.282999', NULL, 'admin', '2023-10-19 14:48:47.245103', '', '5', 'keliubao', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 4, '4bef9a2a17', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (43, '0', 'admin', '2023-10-30 09:49:22.124128', NULL, NULL, '2023-10-30 09:49:22.124128', '', '5', 'tanpuhui', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:tanpuhui,sid:null}', 0, '1', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (54, '0', 'admin', '2023-11-07 16:02:35.710417', NULL, 'admin', '2023-11-07 16:07:18.018815', '', '9', 'sptcc_agile_test', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_test,sid:null}', 3, '65fde0cf6c', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (51, '0', 'admin', '2023-10-31 20:42:20.807932', NULL, 'admin', '2023-10-31 20:42:25.549616', '', '9', 'import_data', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:import_data,sid:null}', 2, '9d0a2fb49e', '1', 6); + +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (7, '9', '11', 11, '11', '11', 'admin', '2023-09-22 09:49:22.018149', NULL, '2023-09-22 09:49:22.018149', 0, '1', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (8, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'admin', '2023-09-28 11:07:49.794011', NULL, '2023-09-28 11:07:49.794011', 0, '1', '1', '', NULL, 'keliubao', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (10, '5', '172.16.12.105', 54321, 'postgres', 'postgres', 'admin', '2023-10-08 11:32:38.995238', NULL, '2023-10-08 11:32:38.995238', 0, '1', '1', '', NULL, 'keliubao', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (11, '5', '11', 11, '11', '11', 'admin', '2023-10-08 13:18:48.542113', NULL, '2023-10-08 13:18:48.542113', 0, '1', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (12, '5', '11', 11, '11', '11', 'admin', '2023-10-08 13:21:08.891896', NULL, '2023-10-08 13:21:08.891896', 0, '1', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (13, '5', '11', 11, '11', '11', 'admin', '2023-10-08 13:21:25.256004', 'admin', '2023-10-08 13:21:35.27108', 1, 'd1ac38fa1d', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (6, '9', '172.16.12.101', 10000, 'flink', 'admin123', 'admin', '2023-09-21 15:24:03.985487', 'admin', '2023-09-21 15:24:15.656391', 1, '84b6d704ef', '0', '', NULL, 'default', 'hive测试环境'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (9, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'admin', '2023-09-28 11:16:34.039148', NULL, '2023-09-28 11:16:34.039148', 0, '1', '0', '', NULL, 'keliubao', 'pg测试环境'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (14, '5', '11', 11, '11', '11', 'admin', '2023-10-10 15:02:02.627797', NULL, '2023-10-10 15:02:02.627797', 0, '1', '1', '', NULL, '11', '11'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (15, '9', '11', 11, '11', '11', 'admin', '2023-10-17 20:13:25.056619', NULL, '2023-10-17 20:13:25.056619', 0, '1', '1', '', NULL, '11', '11'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (16, '5', '10.10.241.234', 5432, 'sptcc', 'sptcc123', 'admin', '2023-10-26 10:24:19.491282', NULL, '2023-10-26 10:24:19.491282', 0, '1', '1', '', NULL, 'default', '测试'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (17, '5', '10.10.241.234', 5432, 'root', '123456', 'admin', '2023-10-30 09:43:57.128823', NULL, '2023-10-30 09:43:57.128823', 0, '1', '1', '', NULL, 'default', '测试'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (18, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'admin', '2023-10-30 15:28:13.927447', NULL, '2023-10-30 15:28:13.927447', 0, '1', '1', '', NULL, 'tanpuhui', '碳普惠'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (19, '9', '172.16.12.102', 10000, 'flink', 'flink', 'admin', '2023-10-31 10:36:29.015041', NULL, '2023-10-31 10:36:29.015041', 0, '1', '0', '', NULL, 'default', '172.16.12.102'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (20, '9', '127.0.0.1', 10000, 'root', 'three', 'yts', '2023-11-14 15:59:23.832141', NULL, '2023-11-14 15:59:23.832141', 0, '1', '0', '', NULL, 'db_test', '本地hive'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (21, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'test88', '2023-12-04 18:09:36.76594', NULL, '2023-12-04 18:09:36.76594', 0, '1', '0', '', NULL, 'tanpuhui', 'tanpuhui'); + +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10184, 47, 'gen_table', '代码生成业务表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10185, 47, 'gen_table_column', '代码生成业务表字段', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10186, 47, 'tbl_batch_table_mapping', '【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10187, 47, 'tbl_batch_task', '【批处理任务表】记录任务处理情况,方便实现增量重跑', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10188, 47, 'tbl_data_api', '【API信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10189, 47, 'tbl_data_api_log', '【API调用日志信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10190, 47, 'tbl_data_asset_column', '数据资产基础元数据', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10191, 47, 'tbl_data_asset_table', '数据资产基础表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10192, 47, 'tbl_data_asset_table_column', '数据资产基础表与元数据关联表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10193, 47, 'tbl_data_metadata_column', '【元数据信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10194, 47, 'tbl_data_metadata_source', '【数据源信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10195, 47, 'tbl_data_metadata_source_conn', '数据源连接信息表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10196, 47, 'tbl_data_metadata_table', '【数据库表信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10197, 47, 'tbl_data_sql_console_conn_num', '数据源连接数', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10198, 47, 'tbl_data_sql_console_export', 'SQL查询导出记录', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10199, 47, 'tbl_data_sql_console_file', '【SQL工作台文件】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10200, 47, 'tbl_data_sql_data_apply', '【SQL元数据权限申请表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10201, 47, 'tbl_data_sql_data_auth', '【元数据授权信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10202, 47, 'tbl_data_sql_log', 'SQL执行日志', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10203, 47, 'tbl_docker_apply_info', '【 容器申请】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10204, 47, 'tbl_docker_apply_lib', '【容器使用自传组件】包含组件和数据', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10205, 47, 'tbl_docker_apply_review', '【 数据注入申请审核表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10206, 47, 'tbl_docker_apply_review_dtl', '【数据注入申请明细】包含组件和数据', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10207, 47, 'tbl_docker_client_info', '【 服务器清单】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10208, 47, 'tbl_docker_config_hardware', '【实验室硬件配置信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10209, 47, 'tbl_docker_download_apply', '【 下载文件申请】容器内的文件下载', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10210, 47, 'tbl_docker_images', '【 容器可用镜像】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10211, 47, 'tbl_docker_port_list', '【 服务器端口】把可用端口配置在这里,端口是固定的几个', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10212, 47, 'tbl_docker_portainer_user', '【portainer管理账户信息】', NULL, 9); + +INSERT INTO tbl_data_sql_console_conn_num (conn_num, max_conn_num, alarm_conn_num) VALUES (0, 10, 5); + + +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (41, 'SqlResult20231102143353.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:33:52', 'admin1', '2023-11-02 14:33:52', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (39, 'SqlResult20231102114325.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 11:43:24', 'admin1', '2023-11-02 11:43:24', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (11, 'SqlResult20231101094957.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-11-01 09:49:55', NULL, '2023-11-01 09:49:55', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (8, 'SqlResult20231101094052.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-11-01 09:40:50', NULL, '2023-11-01 09:40:50', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (6, 'SqlResult20231031201502.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:15:01', NULL, '2023-10-31 20:15:01', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (5, 'SqlResult20231031201104.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:11:04', NULL, '2023-10-31 20:11:04', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (4, 'SqlResult20231031200917.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:09:16', NULL, '2023-10-31 20:09:16', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (3, 'SqlResult20231031200514.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:05:14', NULL, '2023-10-31 20:05:14', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (2, 'SqlResult20231031195902.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 19:59:02', NULL, '2023-10-31 19:59:02', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (42, 'SqlResult20231102143354.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:33:54', 'admin1', '2023-11-02 14:33:54', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (43, 'SqlResult20231102143355.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:33:54', 'admin1', '2023-11-02 14:33:54', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (40, 'SqlResult20231102133131.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 13:31:31', 'admin1', '2023-11-02 13:31:31', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (22, 'SqlResult20231101153511.csv', 'SELECT * FROM tbl_data_metadata_source', '3', NULL, 100015, 'admin2', '2023-11-01 15:35:11', 'admin2', '2023-11-01 15:35:11', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (44, 'SqlResult20231102145348.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:53:47', 'admin1', '2023-11-02 14:53:47', 0, '1', '1'); + + +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (102, 'cc', 47, 'SELECT * FROM public.tbl_data_metadata_source_conn c +LEFT JOIN public.tbl_data_metadata_source s on c.conn_id = s.conn_id +WHERE ', 0, '1', 'admin', '2023-11-20 13:26:59.541963', NULL, '2023-11-20 13:26:59.541963', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (105, 'cc', 47, 'select * from public.tbl_data_metadata_column', 0, '1', 'yts', '2023-11-30 16:23:01.432052', NULL, '2023-11-30 16:23:01.432052', '0', 100018, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (80, '1111', 31, '', 1, '830435c9ad', 'admin', '2023-10-12 17:37:12.12105', 'admin', '2023-10-12 17:37:16.773115', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (74, 'create', 26, 'CREATE TABLE hive.a1 AS +SELECT + dtrmi.card_no, + dtrmi.txn_amt, + dtrmi.station_code +FROM + sptcc_agile_dev.dim_trade_route_match_info dtrmi + left join sptcc_agile_etl_prod.dim_bus_in_out_time_info dbioti on dtrmi.card_no = dbioti.bus_code +where + dtrmi.txn_date = ''2023-05-15'' +limit + 5', 1, '38819eb29c', 'admin', '2023-09-22 16:47:06.998802', 'admin', '2023-09-22 16:47:18.74358', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (81, 'dd', 31, 'SELECT * FROM tbl_data_api', 1, 'a11e225dbc', 'yts', '2023-10-12 18:15:46.917957', 'yts', '2023-10-12 18:16:07.996606', '0', 100007, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (75, 'zz', 34, 'SELECT * FROM dim_bus_in_out_time_info WHERE bus_stop_date = ''2023-08-25'' ', 15, '3000abc2d3', 'yts', '2023-10-08 14:13:30.000406', 'yts', '2023-10-12 19:26:03.433576', '0', 100007, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (94, 'test2', 38, 'SELECT *from teacher;', 1, '73fdaa9603', 'admin1', '2023-11-02 14:20:32.459908', 'admin1', '2023-11-02 14:20:46.578664', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (82, 'ccc', 34, 'SELECT + * + FROM + dim_bus_in_out_time_info + WHERE + bus_stop_date = ''2023-08-25''', 0, '1', 'jiuyv', '2023-10-12 20:34:49.08329', NULL, '2023-10-12 20:34:49.08329', '0', 100004, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (90, 'test4', 38, 'SELECT *from teacher;', 2, 'ce0c581aee', 'admin1', '2023-11-02 11:42:54.006819', 'admin1', '2023-11-02 11:44:40.502131', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (91, 'test4', 38, 'SELECT *from teacher;', 0, '1', 'admin1', '2023-11-02 13:34:11.199025', NULL, '2023-11-02 13:34:11.199025', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (92, 'test5', 38, NULL, 0, '1', 'admin1', '2023-11-02 13:34:39.069415', NULL, '2023-11-02 13:34:39.069415', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (83, 'test', 38, 'create table hive.test10 as select * from hive.stu', 1, 'c3d502b197', 'admin1', '2023-10-18 14:10:19.983275', 'admin1', '2023-11-02 14:19:53.821504', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (93, 'test1', 38, 'select t1.* from test1 t1 left join teacher t on t1.name = t.name;', 1, '56c680f79e', 'admin1', '2023-11-02 14:20:08.552399', 'admin1', '2023-11-02 14:20:26.168755', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (87, 'cc', 47, 'SELECT * FROM public.tbl_sys_user u +LEFT JOIN test.tbl_sys_user_role r ON u.user_id = r.user_id', 0, '1', 'admin', '2023-10-30 16:45:57.625688', NULL, '2023-10-30 16:45:57.625688', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (78, '测试', 34, 'SELECT * FROM dws_line_metric_day WHERE metric_date = ''2023-08-25''', 0, '1', 'admin1', '2023-10-12 15:32:26.121081', NULL, '2023-10-12 15:32:26.121081', '0', 100013, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (79, 'jj', 34, NULL, 0, '1', 'admin1', '2023-10-12 15:34:07.301649', NULL, '2023-10-12 15:34:07.301649', '0', 100013, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (85, 'test', 41, 'SELECT * FROM db_hive1.test7', 2, '81c96a3eac', 'admin', '2023-10-19 16:21:31.922766', 'admin', '2023-10-19 19:11:17.015751', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (89, 'cc', 47, 'SELECT * FROM tbl_data_metadata_source', 0, '1', 'admin2', '2023-11-01 14:54:25.996942', NULL, '2023-11-01 14:54:25.996942', '0', 100015, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (84, 'ggg', 37, NULL, 0, '1', 'admin', '2023-10-19 14:31:46.851857', NULL, '2023-10-19 14:31:46.851857', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (76, '测试', 35, 'SELECT * FROM tbl_data_api', 2, '5bdab2b436', 'admin', '2023-10-11 15:45:12.772076', 'admin', '2023-10-30 09:57:52.527044', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (77, '测试2', 37, 'SELECT * FROM stu', 17, '43e0299bfa', 'admin', '2023-10-11 15:45:28.621678', 'admin', '2023-10-17 17:41:40.194213', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (86, 'dc', 42, 'DROP TABLE test', 0, '1', 'admin', '2023-10-27 17:31:14.687651', NULL, '2023-10-27 17:31:14.687651', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (95, 'ccc', 47, 'SELECT * FROM tbl_data_metadata_source', 4, '99cf7fce31', 'yts', '2023-11-06 14:24:54.337601', 'yts', '2023-11-20 17:43:24.131415', '0', 100018, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (103, 'cc', 56, '', 0, '1', 'yts', '2023-11-23 17:42:36.510525', NULL, '2023-11-23 17:42:36.510525', '0', 100018, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (104, 'cc', 47, 'select * from public.tbl_data_metadata_column', 0, '1', 'test02', '2023-11-29 20:22:34.678061', NULL, '2023-11-29 20:22:34.678061', '0', 100023, 0, '1', 9); + + +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (71, 100013, '1', '2023-10-15', NULL, '1', 'yts', 1, '813ead4853', '0', 'admin1', '2023-10-12 15:24:11', 'yts', '2023-10-12 16:54:44', '', NULL, 'admin1', '2023-10-12 16:54:44', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (79, 100004, '1', '2023-10-26', NULL, '1', 'jiuyv', 1, '5c34c51b4b', '0', 'jiuyv', '2023-10-12 19:18:57', 'jiuyv', '2023-10-12 19:19:27', '', NULL, 'jiuyv', '2023-10-12 19:19:27', 'SAN000000000000078'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (81, 100015, '1', '2023-10-20', NULL, '1', 'admin2', 1, '6f7e9226f3', '0', 'admin2', '2023-10-16 13:28:36', 'admin2', '2023-10-16 13:28:41', '', NULL, 'admin2', '2023-10-16 13:28:41', 'SAN000000000000080'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (83, 100014, '1', '2023-10-31', 'qqq', '1', 'admin1', 1, '7bfd99082b', '0', 'admin1', '2023-10-16 16:41:40', 'admin1', '2023-10-16 16:41:45', '', NULL, 'admin1', '2023-10-16 16:41:45', 'SAN000000000000082'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (85, 100015, '1', '2023-10-31', NULL, '1', 'admin2', 1, '1087e238f4', '0', 'admin2', '2023-10-17 20:46:31', 'admin2', '2023-10-17 20:46:39', '', NULL, 'admin2', '2023-10-17 20:46:39', 'SAN000000000000084'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (87, 100014, '1', '2023-10-20', NULL, '1', 'admin1', 1, '216aba0601', '0', 'admin1', '2023-10-18 14:10:40', 'admin1', '2023-10-18 14:10:46', '', NULL, 'admin1', '2023-10-18 14:10:46', 'SAN000000000000086'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (91, 2, '1', '2025-10-31', 't', '1', 'zhoul', 1, 'cb9076d296', '0', 'zhoul', '2023-10-30 14:54:37', 'zhoul', '2023-10-30 14:54:54', '', NULL, 'zhoul', '2023-10-30 14:54:54', 'SAN000000000000090'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (77, 100007, '1', '2024-10-10', NULL, '2', 'admin1', 1, 'fb94e80210', '0', 'yts', '2023-10-12 16:54:57', 'admin1', '2023-11-01 14:52:53', '', 'ceshi ', 'yts', '2023-11-01 14:52:53', 'SAN000000000000076'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (93, 100015, '1', '2024-11-14', NULL, '1', 'admin1', 1, '83b4a70fbc', '0', 'admin2', '2023-11-01 14:48:46', 'admin1', '2023-11-01 14:52:56', '', NULL, 'admin2', '2023-11-01 14:52:56', 'SAN000000000000092'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (89, 100014, '1', '2023-11-01', NULL, '1', 'admin1', 1, '592ac1d40e', '0', 'admin1', '2023-10-30 10:03:52', 'admin1', '2023-11-01 14:52:58', '', NULL, 'admin1', '2023-11-01 14:52:58', 'SAN000000000000088'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (95, 100014, '1', '2023-11-17', NULL, '2', 'admin1', 1, 'cf075c055b', '0', 'admin1', '2023-11-01 14:53:13', 'admin1', '2023-11-01 14:53:31', '', 'ds ', 'admin1', '2023-11-01 14:53:31', 'SAN000000000000094'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (67, 100007, '1', '2024-10-23', NULL, '1', 'admin', 1, '9627b56093', '0', 'yts', '2023-10-08 14:03:43', 'admin', '2023-10-08 14:04:38', '', NULL, 'yts', '2023-10-08 14:04:38', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (68, 100007, '1', '2024-10-24', NULL, '1', 'yts', 1, '8a383799e9', '0', 'yts', '2023-10-11 16:44:11', 'yts', '2023-10-11 16:44:22', '', NULL, 'yts', '2023-10-11 16:44:22', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (69, 100013, '1', '2023-10-15', NULL, '1', 'admin1', 1, '04fadafe5e', '0', 'admin1', '2023-10-12 15:14:09', 'admin1', '2023-10-12 15:14:19', '', NULL, 'admin1', '2023-10-12 15:14:19', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (70, 100013, '1', '2023-10-15', NULL, '1', 'admin1', 1, '7aa63e6dcb', '0', 'admin1', '2023-10-12 15:19:50', 'admin1', '2023-10-12 15:20:56', '', NULL, 'admin1', '2023-10-12 15:20:56', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (97, 100014, '1', '2023-11-30', NULL, '1', 'admin1', 1, 'c08a95154d', '0', 'admin1', '2023-11-01 14:53:39', 'admin1', '2023-11-01 14:53:50', '', NULL, 'admin1', '2023-11-01 14:53:50', 'SAN000000000000096'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (73, 100007, '1', '2023-10-06', NULL, '2', 'admin', 1, '3537d64e36', '0', 'yts', '2023-10-12 15:49:06', 'admin', '2023-10-12 15:59:44', '', NULL, 'yts', '2023-10-12 15:59:44', 'SAN000000000000072'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (75, 100007, '1', '2024-10-10', NULL, '1', 'yts', 1, '89653e61e2', '0', 'yts', '2023-10-12 16:00:10', 'yts', '2023-10-12 16:00:38', '', NULL, 'yts', '2023-10-12 16:00:38', 'SAN000000000000074'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (99, 100014, '1', '2023-11-30', NULL, '1', 'admin1', 1, '93ab52d433', '0', 'admin1', '2023-11-02 11:38:27', 'admin1', '2023-11-02 11:38:31', '', NULL, 'admin1', '2023-11-02 11:38:31', 'SAN000000000000098'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (103, 100018, '1', '2023-11-04', NULL, '2', 'yts', 1, '5f193314c1', '0', 'yts', '2023-11-03 17:16:01', 'yts', '2023-11-03 17:16:46', '', '不允许', 'yts', '2023-11-03 17:16:46', 'SAN000000000000102'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (105, 100018, '1', '2023-11-10', '这里是申请说明,怎么就没有了', '1', 'yts', 1, '980f40c408', '0', 'yts', '2023-11-03 17:19:08', 'yts', '2023-11-06 14:24:14', '', NULL, 'yts', '2023-11-06 14:24:14', 'SAN000000000000104'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (101, 100014, '1', '2023-11-30', NULL, '2', 'admin', 1, 'f99c7a6cfb', '0', 'admin1', '2023-11-02 14:28:07', 'admin', '2023-11-07 15:55:53', '', '不允许申请', 'admin1', '2023-11-07 15:55:53', 'SAN000000000000100'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (107, 100018, '1', '2024-11-14', NULL, '1', 'yts', 1, 'a068dd0cb2', '0', 'yts', '2023-11-10 10:24:16', 'yts', '2023-11-10 10:24:22', '', NULL, 'yts', '2023-11-10 10:24:22', 'SAN000000000000106'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (109, 100018, '1', '2023-11-11', NULL, '1', 'yts', 1, '15ae580f58', '0', 'yts', '2023-11-10 17:39:26', 'yts', '2023-11-10 17:39:31', '', NULL, 'yts', '2023-11-10 17:39:31', 'SAN000000000000108'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (111, 100018, '1', '2024-11-07', NULL, '1', 'yts', 1, '335fb951d4', '0', 'yts', '2023-11-14 16:23:15', 'yts', '2023-11-14 16:23:21', '', NULL, 'yts', '2023-11-14 16:23:21', 'SAN000000000000110'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (113, 100018, '1', '2024-11-13', NULL, '1', 'yts', 1, 'e0fb91968c', '0', 'yts', '2023-11-14 17:22:58', 'yts', '2023-11-14 17:23:05', '', NULL, 'yts', '2023-11-14 17:23:05', 'SAN000000000000112'); + + +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (9, 100015, 'conn', 81, 0, 'pg测试环境'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (35, 100015, 'database', 81, 9, 'keliubao'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3697, 100015, 'table', 81, 35, 'gen_table(代码生成业务表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3698, 100015, 'table', 81, 35, 'gen_table_column(代码生成业务表字段)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3699, 100015, 'table', 81, 35, 'tbl_batch_table_mapping(【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3700, 100015, 'table', 81, 35, 'tbl_batch_task(【批处理任务表】记录任务处理情况,方便实现增量重跑)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3701, 100015, 'table', 81, 35, 'tbl_data_api(【API信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3702, 100015, 'table', 81, 35, 'tbl_data_api_log(【API调用日志信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3703, 100015, 'table', 81, 35, 'tbl_data_asset_column(数据资产基础元数据)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3704, 100015, 'table', 81, 35, 'tbl_data_asset_table(数据资产基础表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3705, 100015, 'table', 81, 35, 'tbl_data_asset_table_column(数据资产基础表与元数据关联表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3706, 100015, 'table', 81, 35, 'tbl_data_config(【api参数配置表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3707, 100015, 'table', 81, 35, 'tbl_data_metadata_column(【元数据信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3708, 100015, 'table', 81, 35, 'tbl_data_metadata_source(【数据源信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3709, 100015, 'table', 81, 35, 'tbl_data_metadata_source_conn(数据源连接信息表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3710, 100015, 'table', 81, 35, 'tbl_data_metadata_table(【数据库表信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3711, 100015, 'table', 81, 35, 'tbl_data_quality_report(数据质量报表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3712, 100015, 'table', 81, 35, 'tbl_data_sql_console_conn_num(数据源连接数)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3713, 100015, 'table', 81, 35, 'tbl_data_sql_console_file(【SQL工作台文件】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3714, 100015, 'table', 81, 35, 'tbl_data_sql_data_apply(【SQL元数据权限申请表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3715, 100015, 'table', 81, 35, 'tbl_data_sql_data_auth(【元数据授权信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3716, 100015, 'table', 81, 35, 'tbl_data_sql_log(SQL执行日志)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3717, 100015, 'table', 81, 35, 'tbl_docker_apply_info(【 容器申请】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3718, 100015, 'table', 81, 35, 'tbl_docker_apply_lib(【容器使用自传组件】包含组件和数据)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3719, 100015, 'table', 81, 35, 'tbl_docker_client_info(【 服务器清单】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3720, 100015, 'table', 81, 35, 'tbl_docker_config_hardware(【实验室硬件配置信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3721, 100015, 'table', 81, 35, 'tbl_docker_download_apply(【 下载文件申请】容器内的文件下载)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3722, 100015, 'table', 81, 35, 'tbl_docker_images(【 容器可用镜像】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3724, 100015, 'table', 81, 35, 'tbl_docker_portainer_user(【portainer管理账户信息】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3723, 100015, 'table', 81, 35, 'tbl_docker_port_list(【 服务器端口】把可用端口配置在这里,端口是固定的几个)'); + + +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14680, '9 ', 'default', 'CREATE table IF NOT EXISTS default.linl_tj_20230627 as select card_no, txn_counter, replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') as station_code, txn_time, card_product_code, txn_amt, inout_flag, hour_code, txn_nature from sptcc.dwd_consum_trans dct where txn_date = ''20230627'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code = 21', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:308 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:09.049', '2023-09-11 13:52:09.185', 136); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14681, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_metrochain as select distinct a.card_no, a.in_code, case when MINUTE (in_time)<30 then in_hour||'':00-''||in_hour||'':30'' else in_hour||'':30-''||int(in_hour)+1||'':00'' end as in_time_interval, a.in_time,a.in_amt,a.in_nature, a.out_code, case when MINUTE(out_time)<30 then out_hour||'':00-''||out_hour||'':30'' else out_hour||'':30-''||int(out_hour)+1||'':00'' end as out_time_interval, a.out_time, a.out_amt ,a.out_nature from ( select card_no, txn_counter as in_count, station_code as in_code, txn_time as in_time, txn_amt as in_amt, hour_code as in_hour, txn_nature as in_nature, lead(txn_counter,1,null) over (partition by card_no order by txn_time) as out_count, lead(station_code,1,null) over (partition by card_no order by txn_time) as out_code, lead(txn_time,1,null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt,1,null) over (partition by card_no order by txn_time) as out_amt, lead(hour_code,1,null) over (partition by card_no order by txn_time) as out_hour, lead(txn_nature,1,null) over (partition by card_no order by txn_time) as out_nature from default.linl_tj_20230627 )a where a.in_amt = 0 and a.out_amt is not null and (out_amt <> 0 or (out_code = in_code + 1 and in_code <> out_code)) ', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1147 Table not found ''linl_tj_20230627''', '2023-09-11 13:52:10.056', '2023-09-11 13:52:10.088', 32); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14682, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdchain as select distinct a.card_no, a.yh_nature, b.stattion_name as in_station_name, a.in_time, a.in_time_interval, c.stattion_name as out_station_name, a.out_time, a.out_time_interval from (select card_no, out_nature as yh_nature, in_code, in_time, in_time_interval, out_code, out_time, out_time_interval from default.linl_tj_metrochain where in_code = ''263'' or out_code = ''263'') a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:568 Table not found ''linl_tj_metrochain''', '2023-09-11 13:52:11.066', '2023-09-11 13:52:11.082', 16); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14683, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdage as select distinct a.card_no, a.yh_nature, b.age, a.in_station_name, a.in_time_interval, a.out_station_name, a.out_time_interval from default.linl_tj_pdchain a left join sptcc.dwd_userport_realcardproduct b', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:282 Table not found ''linl_tj_pdchain''', '2023-09-11 13:52:12.074', '2023-09-11 13:52:12.099', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14684, '9 ', 'default', ' create table IF NOT EXISTS linl_tj_incorrect as select card_no, exchange_mark, in_station_name, in_time_interval, out_station_name, out_time_interval, count(distinct age) as mark from default.linl_tj_airline group by card_no, exchange_mark, in_station_name, in_time_interval, out_station_name, out_time_interval having count(distinct age) > 1', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:228 Table not found ''linl_tj_airline''', '2023-09-11 13:52:13.089', '2023-09-11 13:52:13.116', 27); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14685, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_result as select distinct card_no, case when mark is not null then '' '' else age end as agerange, exchange_mark, in_station_name, in_time_interval, out_station_name, out_time_interval from (select a.*, b.mark from default.linl_tj_airline a left join default.linl_tj_incorrect b on a.card_no = b.card_no and a.in_station_name = b.in_station_name and a.in_time_interval = b.in_time_interval and a.out_time_interval = b.out_time_interval) c', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:361 Table not found ''linl_tj_airline''', '2023-09-11 13:52:14.093', '2023-09-11 13:52:14.109', 16); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14686, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515 as select card_no, txn_counter, settle_center_code as hy, device_code, txn_time, txn_code, settle_date, card_product_code, txn_amt, inout_flag, station_code as station_code_ys, case when settle_center_code = 21 then replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') else station_code end as station_code_tz, txn_nature, txn_date from sptcc.dwd_consum_trans dct where txn_date = ''20230515'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code in (77, 21)', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:550 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:15.106', '2023-09-11 13:52:15.127', 21); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14687, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515_metrochain as select distinct a.card_no, a.card_product_code, a.txn_date, a.in_counter, a.in_time, a.in_amt, a.in_station_code, a.out_counter, a.out_station_code, a.out_time, a.out_amt from (select distinct card_no, card_product_code, txn_date, txn_counter as in_counter, txn_time as in_time, txn_amt as in_amt, station_code_tz as in_station_code, lead(txn_counter, 1, null) over (partition by card_no order by txn_time) as out_counter, lead(station_code_tz, 1, null) over (partition by card_no order by txn_time) as out_station_code, lead(txn_time, 1, null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt, 1, null) over (partition by card_no order by txn_time) as out_amt from default.linl_consum_20230515 where hy = 21) a where a.in_amt = 0 and a.out_amt is not null and a.out_amt != 0', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1132 Table not found ''linl_consum_20230515''', '2023-09-11 13:52:16.109', '2023-09-11 13:52:16.135', 26); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14696, '9 ', 'default', ' ', '2', '查询失败:Error while compiling statement: FAILED: ParseException line 1:1 cannot recognize input near '''' '''' ''''', '2023-09-11 13:52:25.187', '2023-09-11 13:52:25.212', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14688, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515_od as select a.in_station_code, a.out_station_code, count(*) as num from (select distinct * from default.linl_consum_20230515_metrochain where in_station_code <> out_station_code) a group by a.in_station_code, a.out_station_code', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:155 Table not found ''linl_consum_20230515_metrochain''', '2023-09-11 13:52:17.117', '2023-09-11 13:52:17.142', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14689, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515_od_distance as select d.*, e.metro_distance from (select a.in_station_code, a.out_station_code, a.num, b.stattion_name as in_station_name, c.stattion_name as out_station_name from default.linl_consum_20230515_od a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_station_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_station_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')) d left join dim.od e on d.in_station_name = e.in_station and d.out_station_name = e.out_station', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:751 Table not found ''od''', '2023-09-11 13:52:18.129', '2023-09-11 13:52:18.154', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14690, '9 ', 'default', ' select card_no, txn_counter, replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') as station_code, txn_time, card_product_code, txn_amt, inout_flag, hour_code, txn_nature from sptcc.dwd_consum_trans dct where txn_date = ''20230627'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code = 21', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:256 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:19.14', '2023-09-11 13:52:19.162', 22); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14691, '9 ', 'default', ' select distinct a.card_no, a.in_code, case when MINUTE (in_time)<30 then in_hour||'':00-''||in_hour||'':30'' else in_hour||'':30-''||int(in_hour)+1||'':00'' end as in_time_interval, a.in_time,a.in_amt,a.in_nature, a.out_code, case when MINUTE(out_time)<30 then out_hour||'':00-''||out_hour||'':30'' else out_hour||'':30-''||int(out_hour)+1||'':00'' end as out_time_interval, a.out_time, a.out_amt ,a.out_nature from ( select card_no, txn_counter as in_count, station_code as in_code, txn_time as in_time, txn_amt as in_amt, hour_code as in_hour, txn_nature as in_nature, lead(txn_counter,1,null) over (partition by card_no order by txn_time) as out_count, lead(station_code,1,null) over (partition by card_no order by txn_time) as out_code, lead(txn_time,1,null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt,1,null) over (partition by card_no order by txn_time) as out_amt, lead(hour_code,1,null) over (partition by card_no order by txn_time) as out_hour, lead(txn_nature,1,null) over (partition by card_no order by txn_time) as out_nature from default.linl_tj_20230627 )a where a.in_amt = 0 and a.out_amt is not null and (out_amt <> 0 or (out_code = in_code + 1 and in_code <> out_code)) ', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1090 Table not found ''linl_tj_20230627''', '2023-09-11 13:52:20.142', '2023-09-11 13:52:20.166', 24); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14692, '9 ', 'default', ' select distinct a.card_no, a.yh_nature, b.stattion_name as in_station_name, a.in_time, a.in_time_interval, c.stattion_name as out_station_name, a.out_time, a.out_time_interval from (select card_no, out_nature as yh_nature, in_code, in_time, in_time_interval, out_code, out_time, out_time_interval from default.linl_tj_metrochain where in_code = ''263'' or out_code = ''263'') a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:514 Table not found ''linl_tj_metrochain''', '2023-09-11 13:52:21.147', '2023-09-11 13:52:21.172', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14693, '9 ', 'default', ' select card_no, txn_counter, settle_center_code as hy, device_code, txn_time, txn_code, settle_date, card_product_code, txn_amt, inout_flag, station_code as station_code_ys, case when settle_center_code = 21 then replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') else station_code end as station_code_tz, txn_nature, txn_date from sptcc.dwd_consum_trans dct where txn_date = ''20230515'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code in (77, 21)', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:490 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:22.154', '2023-09-11 13:52:22.176', 22); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14694, '9 ', 'default', ' select distinct a.card_no, a.card_product_code, a.txn_date, a.in_counter, a.in_time, a.in_amt, a.in_station_code, a.out_counter, a.out_station_code, a.out_time, a.out_amt from (select distinct card_no, card_product_code, txn_date, txn_counter as in_counter, txn_time as in_time, txn_amt as in_amt, station_code_tz as in_station_code, lead(txn_counter, 1, null) over (partition by card_no order by txn_time) as out_counter, lead(station_code_tz, 1, null) over (partition by card_no order by txn_time) as out_station_code, lead(txn_time, 1, null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt, 1, null) over (partition by card_no order by txn_time) as out_amt from default.linl_consum_20230515 where hy = 21) a where a.in_amt = 0 and a.out_amt is not null and a.out_amt != 0', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1062 Table not found ''linl_consum_20230515''', '2023-09-11 13:52:23.165', '2023-09-11 13:52:23.19', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14695, '9 ', 'default', ' select d.*, e.metro_distance from (select a.in_station_code, a.out_station_code, a.num, b.stattion_name as in_station_name, c.stattion_name as out_station_name from default.linl_consum_20230515_od a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_station_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_station_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')) d left join dim.od e on d.in_station_name = e.in_station and d.out_station_name = e.out_station', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:680 Table not found ''od''', '2023-09-11 13:52:24.169', '2023-09-11 13:52:24.218', 49); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14697, '9 ', 'default', 'CREATE table IF NOT EXISTS default.linl_tj_20230627 as select card_no, txn_counter, replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') as station_code, txn_time, card_product_code, txn_amt, inout_flag, hour_code, txn_nature from sptcc.dwd_consum_trans dct where txn_date = ''20230627'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code = 21', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:308 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:26.198', '2023-09-11 13:52:26.224', 26); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14698, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_metrochain as select distinct a.card_no, a.in_code, case when MINUTE (in_time)<30 then in_hour||'':00-''||in_hour||'':30'' else in_hour||'':30-''||int(in_hour)+1||'':00'' end as in_time_interval, a.in_time,a.in_amt,a.in_nature, a.out_code, case when MINUTE(out_time)<30 then out_hour||'':00-''||out_hour||'':30'' else out_hour||'':30-''||int(out_hour)+1||'':00'' end as out_time_interval, a.out_time, a.out_amt ,a.out_nature from ( select card_no, txn_counter as in_count, station_code as in_code, txn_time as in_time, txn_amt as in_amt, hour_code as in_hour, txn_nature as in_nature, lead(txn_counter,1,null) over (partition by card_no order by txn_time) as out_count, lead(station_code,1,null) over (partition by card_no order by txn_time) as out_code, lead(txn_time,1,null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt,1,null) over (partition by card_no order by txn_time) as out_amt, lead(hour_code,1,null) over (partition by card_no order by txn_time) as out_hour, lead(txn_nature,1,null) over (partition by card_no order by txn_time) as out_nature from default.linl_tj_20230627 )a where a.in_amt = 0 and a.out_amt is not null and (out_amt <> 0 or (out_code = in_code + 1 and in_code <> out_code)) ', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1147 Table not found ''linl_tj_20230627''', '2023-09-11 13:52:27.212', '2023-09-11 13:52:27.238', 26); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14699, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdchain as select distinct a.card_no, a.yh_nature, b.stattion_name as in_station_name, a.in_time, a.in_time_interval, c.stattion_name as out_station_name, a.out_time, a.out_time_interval from (select card_no, out_nature as yh_nature, in_code, in_time, in_time_interval, out_code, out_time, out_time_interval from default.linl_tj_metrochain where in_code = ''263'' or out_code = ''263'') a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:568 Table not found ''linl_tj_metrochain''', '2023-09-11 13:52:28.219', '2023-09-11 13:52:28.246', 27); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14700, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdage as select distinct a.card_no, a.yh_nature, b.age, a.in_station_name, a.in_time_interval, a.out_station_name, a.out_time_interval from default.linl_tj_pdchain a left join sptcc.dwd_userport_realcardproduct b', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:282 Table not found ''linl_tj_pdchain''', '2023-09-11 13:52:29.228', '2023-09-11 13:52:29.25', 22); + +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000035, 1, '688f82be8d', 2, '2023100000000005', '测试1', '测试演示实验室功能', '测试002', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', NULL, NULL, NULL, '1', NULL, '1', '15', '是的是的', 0, '02', NULL, '0', '00', '99', '100014', 'admin1', '2023-10-30 15:50:00', '100014', 'admin1', '2023-10-30 15:53:39', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000036, 3, '7069e783ed', 2, '2023100000000005', '测试1', 'SSD', '演示002', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-10-30 15:54:28', '2023-11-29 15:54:28', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-10-30 15:52:46', '100014', 'admin1', '2023-10-30 15:54:30', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000034, 3, '5c7cd0582c', 2, '2023060000000002', '张三丰', '演示', '演示001', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-10-26 19:32:28', '2023-11-25 19:32:28', NULL, '1', NULL, '1', '15', NULL, 0, '01', NULL, '1', '07', '00', '2', '管理员', '2023-10-26 09:41:04', '2', '管理员', '2023-10-26 19:32:31', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000037, 3, '97e3c3fc0d', 2, '2023060000000002', '张三丰', '颠三倒四', '测试', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-11-02 16:28:35', '2023-12-03 16:28:35', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-10-31 15:13:36', '100014', 'admin1', '2023-11-02 16:28:37', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000040, 2, '817b66e2f1', 2, '2023110000000009', '刘总', '演示', '客户演示', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-11-07 16:06:58', '2023-12-08 16:06:58', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '02', '00', '1', '管理员', '2023-11-07 16:06:54', '1', '管理员', '2023-11-07 16:07:04', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000038, 3, '0bc9605c8f', 2, '2023060000000002', '张三丰', '是的是的', '测试004', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-11-02 16:43:38', '2023-12-03 16:43:38', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-11-02 16:43:31', '100014', 'admin1', '2023-11-02 16:43:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000041, 2, '450443d1dd', 2, '2023060000000002', '张三丰', 'z', 'zeppelin(测试)', 'zeppelin', 'zeppelin-py39:0.0.1', '30', 'day', '2023-11-13 16:32:28', '2023-12-14 16:32:28', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '02', '00', '2', '管理员', '2023-11-13 16:31:53', '2', '管理员', '2023-11-13 16:32:29', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000042, 3, '1d88445b5d', 2, '1', '门户管理员', 'aabb', '测试', 'jupyter', 'jupyterlab-py310:0.0.1', '10', 'day', '2023-11-14 13:27:41', '2023-11-25 13:27:41', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100016', 'admin55', '2023-11-14 13:27:33', '100016', 'admin55', '2023-11-14 13:27:42', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000043, 2, 'd91ff197eb', 2, '1', '门户管理员', 'aabbcc', '测试03', 'jupyter', 'jupyterlab-py310:0.0.1', '6', 'day', '2023-11-16 13:47:54', '2023-11-23 13:47:54', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '02', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000039, 3, 'f61d2a0c24', 2, '2023060000000002', '张三丰', '是的是的', '测试005', 'jupyter', 'jupyterlab-py310:0.0.1', '12', 'day', '2023-11-02 16:47:17', '2023-11-15 16:47:17', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-11-02 16:47:14', '100014', 'admin1', '2023-11-02 16:47:19', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023070000000016, 99, '01b959f150', 2, '1', '门户管理员', '测试(别用)', '测试(别用)', 'jupyter', 'jupyterlab-py310:0.0.1', '11', 'day', '2023-10-19 17:35:11', '2023-11-21 17:35:11', NULL, '1', NULL, '1', '15', NULL, 0, '02', '', '0', '00', '00', '100004', '测试1', '2023-07-06 13:44:33', '2', '管理员', '2023-10-19 17:35:13', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (76, 4, '7d848f5da3', 2023070000000016, 'python', '222', 182, '1', 1, '02', NULL, NULL, NULL, '00', '99', '1', 'admin', '2023-10-18 13:36:13', '2', '管理员', '2023-10-19 14:17:57', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (81, 0, '89bbf1d6ea', 2023070000000016, 'data', '222', 183, '1', 0, '01', NULL, NULL, NULL, '00', '00', '1', 'admin', '2023-10-25 13:36:24', '1', 'admin', '2023-10-25 13:36:24', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (77, 26, 'a81ad3dce0', 2023070000000016, 'data', '222', 183, '1', 2, '02', NULL, 'ccic.zip', '同名文件已覆盖', '05', '99', '1', 'admin', '2023-10-18 13:36:13', '2', '管理员', '2023-11-01 12:20:23', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (88, 1, '8296c8c122', 2023100000000037, 'data', '需要切换组件类型', 248, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '100014', 'admin1', '2023-11-02 16:31:28', '100014', 'admin1', '2023-11-02 16:31:32', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (99, 1, 'fbb47507e7', 2023110000000040, 'data', '1', 279, '1', 4, '02', NULL, 'member - 副本.csv', NULL, '02', '00', '2', '管理员', '2023-11-22 09:41:51', '2', '管理员', '2023-11-22 09:41:52', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (89, 3, '5e3e2ed2ef', 2023110000000038, 'data', '打算', 250, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '100014', 'admin1', '2023-11-02 16:43:31', '2', '管理员', '2023-11-13 16:21:47', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (90, 7, '07e275f2ab', 2023110000000039, 'data', '大萨达', 251, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '100014', 'admin1', '2023-11-02 16:47:14', '2', '管理员', '2023-11-13 17:06:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (92, 1, '4a3a41495f', 2023110000000043, 'data', 'aa', 272, '1', 1, '02', NULL, NULL, NULL, '01', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:54', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (93, 1, '4a3a41495f', 2023110000000043, 'data', 'cc', 273, '1', 2, '02', NULL, NULL, NULL, '01', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:54', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (94, 1, '4a3a41495f', 2023110000000043, 'data', 'ddd', 274, '1', 3, '02', NULL, NULL, NULL, '01', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:54', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (87, 3, '2b28228dc0', 2023070000000016, 'data', '1', 245, '1', 7, '02', NULL, 'ruoyi生成代码.zip', NULL, '00', '00', '2', '管理员', '2023-11-01 10:30:07', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (85, 3, '758f9a69ce', 2023070000000016, 'python', '222', 182, '1', 6, '02', NULL, NULL, '同名文件已覆盖', '00', '00', '1', '管理员', '2023-10-31 16:03:07', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (84, 3, 'db807d6f55', 2023070000000016, 'data', '222', 183, '1', 5, '02', NULL, 'ccic.zip', '同名文件已覆盖', '00', '00', '1', '管理员', '2023-10-31 16:03:07', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (78, 24, '74bd16eb14', 2023070000000016, 'python', 'py', 234, '1', 3, '02', NULL, 'anyio-4.0.0-py3-none-any.whl,certifi-2023.7.22-py3-none-any.whl,exceptiongroup-1.1.3-py3-none-any.whl,h11-0.14.0-py3-none-any.whl,httpcore-0.18.0-py3-none-any.whl,httpx-0.25.0-py3-none-any.whl,idna-3.4-py3-none-any.whl,sniffio-1.3.0-py3-none-any.whl', '', '00', '00', '2', '管理员', '2023-10-19 09:36:38', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (91, 8, '916eae61c1', 2023110000000040, 'data', '演示csv', 252, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '1', '管理员', '2023-11-07 16:06:54', '2', '管理员', '2023-11-22 09:41:52', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (98, 3, '4eb4db2927', 2023110000000040, 'data', '1', 278, '1', 3, '02', NULL, '测试4 - 测试.txt', NULL, '02', '00', '2', '管理员', '2023-11-22 09:36:38', '2', '管理员', '2023-11-23 11:05:08', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (95, 5, '9aeeaab70c', 2023110000000040, 'data', '1', 275, '1', 2, '02', NULL, '测试3.txt', NULL, '02', '00', '2', '管理员', '2023-11-22 09:31:20', '2', '管理员', '2023-11-23 11:12:08', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (96, 6, 'db18305d9f', 2023110000000041, 'data', '1', 276, '1', 1, '02', NULL, '测试3 - 副本.txt', '同名文件已覆盖', '05', '99', '2', '管理员', '2023-11-22 09:34:52', '2', '管理员', '2023-11-23 11:50:41', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (97, 3, '837830b82a', 2023110000000041, 'data', '1', 277, '1', 2, '02', NULL, '测试3 - 副本.txt', NULL, '02', '00', '2', '管理员', '2023-11-22 09:35:16', '2', '管理员', '2023-11-28 17:37:23', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2, 1, 'bb447f868e', '测试', 2023070000000016, '测试', '1', '门户管理员', 'aacc', 0, '01', '11', '00', '1', '门户管理员', '2023-10-24 16:07:19', '2', '管理员', '2023-10-27 14:18:10', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (5, 1, 'b4295014fd', '', 2023070000000016, '测试(别用)', '1', '门户管理员', NULL, 0, '02', NULL, '00', '1', '门户管理员', '2023-10-30 10:39:16', '1', '管理员', '2023-10-31 16:03:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (6, 0, '60dcd4848c', '测试aaabbcc', 2023070000000016, '测试(别用)', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-10-30 13:15:00', '1', '管理员', '2023-10-30 13:15:00', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (7, 0, 'a171a105b2', '', 2023070000000016, '测试(别用)', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-10-31 10:39:53', '1', '管理员', '2023-10-31 10:39:53', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023111600000026, 0, '3f9e65548a', '', 2023110000000043, '测试03', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 14:11:17', '1', '门户管理员', '2023-11-16 14:11:17', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023111600000030, 0, 'afdc912db6', '', 2023110000000043, '测试03', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 20:11:40', '1', '门户管理员', '2023-11-16 20:11:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112800000031, 0, 'd78dd63e5b', 'eeeqqq', 2023110000000043, '测试03', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-11-28 16:47:18', '1', '门户管理员', '2023-11-28 16:47:18', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (1, 1, '7176180c46', 2, 'data', '测试', 104, '2', 0, '01', 'cc', '00', '1', '门户管理员', '2023-10-25 09:41:42', '2', '管理员', '2023-10-27 14:18:10', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2, 1, '7176180c46', 2, 'data', '测试', 226, '2', 0, '01', 'cc', '00', '1', '门户管理员', '2023-10-25 09:41:42', '2', '管理员', '2023-10-27 14:18:10', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (3, 1, 'ce1ec37765', 5, 'data', '222', 183, '1', 0, '02', NULL, '00', '1', '门户管理员', '2023-10-30 10:39:26', '1', '管理员', '2023-10-31 16:03:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (4, 1, 'ce1ec37765', 5, 'python', '222', 182, '1', 0, '02', NULL, '00', '1', '门户管理员', '2023-10-30 10:39:32', '1', '管理员', '2023-10-31 16:03:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (5, 0, 'f976f8f4e8', 6, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-10-30 13:15:01', '1', '管理员', '2023-10-30 13:15:01', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (6, 0, '0f8329a1de', 7, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-10-31 10:39:53', '1', '门户管理员', '2023-10-31 10:39:53', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (7, 0, '92813fe41e', 8, 'python', 'bbzz22', 262, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 13:45:59', '1', '门户管理员', '2023-11-14 13:45:59', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (8, 0, 'dda7c4fa11', 9, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 14:41:17', '1', '门户管理员', '2023-11-14 14:41:17', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (9, 0, 'ea74033cca', 10, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 16:31:45', '1', '门户管理员', '2023-11-14 16:31:45', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (10, 0, '56c96251c2', 11, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 16:36:57', '1', '门户管理员', '2023-11-14 16:36:57', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (11, 0, '1360ecfdaa', 15, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-15 17:59:36', '1', '门户管理员', '2023-11-15 17:59:36', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (12, 0, 'ef78a2c3ac', 2023111500000016, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-15 18:03:21', '1', '门户管理员', '2023-11-15 18:03:21', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (13, 0, '923f6f8a10', 2023111600000025, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 13:20:00', '1', '门户管理员', '2023-11-16 13:20:00', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (14, 0, 'de4da85c41', 2023111600000026, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 14:11:17', '1', '门户管理员', '2023-11-16 14:11:17', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (15, 0, '2e08d7ee4c', 2023111600000030, 'data', '222', 183, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 20:11:40', '1', '门户管理员', '2023-11-16 20:11:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (16, 0, '9cc134eda2', 2023112800000031, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-28 16:47:18', '1', '门户管理员', '2023-11-28 16:47:18', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_client_info (docker_server_id, version_num, rec_token, docker_server_name, docker_server_ip, docker_server_port, docker_server_username, docker_server_password, cpu_limits, memory_limits, disc_limits, used_cpu_limits, used_memory_limits, used_disc_limits, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 1, 'ceb0ad0f08', '实验室主机2', '172.16.12.108', '22', 'flink', 'mIVYkELj5T+4MnD5+V542A==', '4', '7', '200', '0', '0', '0', '测试多机器', 1, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-29 19:53:19'); +INSERT INTO tbl_docker_client_info (docker_server_id, version_num, rec_token, docker_server_name, docker_server_ip, docker_server_port, docker_server_username, docker_server_password, cpu_limits, memory_limits, disc_limits, used_cpu_limits, used_memory_limits, used_disc_limits, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 47, '3726078177', '实验室主机', '172.16.12.108', '22', 'flink', 'mIVYkELj5T+4MnD5+V542A==', '4', '7', '200', '3', '3', '45', NULL, 2, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-11-16 20:55:47'); + + + +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 1, 1, 15, 1, '42ee9609b0', 1, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-07-04 20:03:46'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 2, 2, 20, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 1, 2, 15, 1, '42ee9609b0', 2, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-07-04 20:03:46'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (4, 2, 2, 50, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (5, 2, 2, 100, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (6, 2, 2, 150, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (7, 2, 2, 200, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (8, 2, 2, 250, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (9, 2, 2, 300, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (10, 4, 4, 250, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (11, 4, 4, 300, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (12, 4, 4, 300, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (13, 4, 4, 400, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (14, 4, 4, 500, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (15, 4, 4, 600, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (16, 8, 4, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (17, 8, 4, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (18, 8, 4, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (19, 8, 4, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (20, 8, 8, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (21, 8, 8, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (22, 8, 8, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (23, 8, 8, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (24, 8, 8, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (25, 8, 8, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (26, 8, 8, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (27, 8, 8, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (28, 8, 16, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (29, 8, 16, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (30, 8, 16, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (31, 8, 16, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); + + +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (23, 0, 'cace8a7cd8', 2023070000000016, '测试(别用)', '1', '门户管理员', 'aakk', 'bbb.zip', '23143', '1698717133', NULL, 0, '01', NULL, '01', '00', '1', '门户管理员', '2023-10-31 17:17:36', '1', '门户管理员', '2023-10-31 17:17:36', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (24, 1, '195e7d6e3a', 2023070000000016, '测试(别用)', '1', '门户管理员', 'cc', 'test.txt', '9', '1698633393', NULL, 0, '03', 's', '01', '00', '1', '门户管理员', '2023-11-02 09:53:05', '100014', 'admin1', '2023-11-02 17:03:09', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (20, 0, 'f2b7dfceb0', 2023100000000036, '演示002', '2023100000000005', '测试1', '加工数据', '20220810-jioayi.csv', '55574528', '1698655667', NULL, 0, '01', NULL, '01', '00', '2023100000000005', '测试1', '2023-10-30 16:50:48', '2023100000000005', '测试1', '2023-10-30 16:50:48', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112100000028, 1, 'a079dd0a0e', 2023110000000043, '测试03', '1', '门户管理员', 'cc', 'kk.zip', '238166227', '1700570716', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-11-21 20:45:27', '100016', 'admin55', '2023-11-21 20:46:01', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (15, 2, 'bdab732139', 2023070000000016, '测试(别用)', '1', '门户管理员', '测试', 'test.txt', '7', '1700725395', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-10-18 14:53:49', '100016', 'admin55', '2023-10-31 09:35:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (22, 1, '6bd3fc7924', 2023070000000016, '测试(别用)', '1', '门户管理员', 'ttrr', '测试.txt', '28', '1700790885', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-10-31 10:37:45', '100016', 'admin55', '2023-10-31 10:39:05', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112400000029, 0, '8642b15503', 2023110000000043, '测试03', '1', '门户管理员', 'cc', 'kk.zip', '238166227', '1700570716', NULL, 0, '01', NULL, '01', '00', '1', '门户管理员', '2023-11-24 14:21:02', '1', '门户管理员', '2023-11-24 14:21:02', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (21, 1, 'dd7707ff8c', 2023070000000016, '测试(别用)', '1', '门户管理员', 'ccbb', 'test2.csv', '67', '1700723304', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-10-31 09:46:24', '100016', 'admin55', '2023-10-31 09:46:53', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112900000030, 1, '3e258a1fd6', 2023110000000043, '测试03', '1', '门户管理员', 'aa', 'bb.zip', '1700', '1700037670', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-11-29 13:49:01', '100016', 'admin55', '2023-11-29 13:49:30', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112900000031, 1, '9222d4379e', 2023110000000043, '测试03', '1', '门户管理员', 'ccddd', '测试副本.zip', '1700', '1700037670', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-11-29 13:50:46', '100016', 'admin55', '2023-11-29 13:50:55', NULL, NULL, NULL); + +INSERT INTO tbl_docker_images (docker_image_id, version_num, rec_token, docker_image_name, service_type, docker_image_desc, file_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 0, '1', 'jupyterlab-py310:0.0.1', 'jupyter', '环境:软件jupyterlab,Python3.10 ,集成了常用包: NumPy ,Matplotlib ,Pandas,Seaborn,PyTorch等', NULL, NULL, 0, '00', '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_images (docker_image_id, version_num, rec_token, docker_image_name, service_type, docker_image_desc, file_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 0, '1', 'zeppelin-py39:0.0.1', 'zeppelin', '环境:软件zeppelin,Python3.9', NULL, NULL, 0, '00', '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); + + +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (4, 0, '1', 2, '9004', 'http://172.16.12.104:8080/lab004/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (5, 0, '1', 2, '9005', 'http://172.16.12.104:8080/lab005/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (6, 0, '1', 2, '9006', 'http://172.16.12.104:8080/lab006/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (7, 0, '1', 2, '9007', 'http://172.16.12.104:8080/lab007/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (8, 0, '1', 2, '9008', 'http://172.16.12.104:8080/lab008/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 0, '1', 2, '9001', 'http://172.16.12.104:8080/lab001/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 0, '1', 2, '9002', 'http://172.16.12.104:8080/lab002/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 1, '8407252b29', 2, '9003', 'http://172.16.12.104:8080/lab003/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '100019', 'admin3', '2023-11-17 16:59:22'); + +INSERT INTO tbl_docker_portainer_user (docker_account_id, version_num, rec_token, api_http, api_key, admin_username, admin_password, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 2, '53f90059f7', 'http://172.16.12.108:9000', 'ptr_cv5nSGlTS3GOqgl0r6BcWiFje9LRHkugxrXTVi257iU=', NULL, NULL, NULL, 1, '00', '1', '管理员', '2023-06-14 13:48:18', '100018', 'yts', '2023-11-21 10:22:43'); + +INSERT INTO tbl_docker_vpn (vpn_id, version_num, rec_token, vpn_ip, vpn_username, vpn_password, fortress_ip, fortress_username, fortress_password, apply_id, lab_title, apply_user_id, apply_user_name, start_date, end_date, send_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (5, 2, '920e533f91', '127.0.0.1:8080', 'vpn12', 'n9pccyVFGDsgENOflKgvjg==', '127.0.0.1:8080', 'baoleiA1', 'n9pccyVFGDsgENOflKgvjg==', NULL, NULL, '2023060000000002', '张三丰', NULL, NULL, '0', '1', '00', '2', '管理员', '2023-11-17 11:01:19', '100019', 'admin3', '2023-11-17 16:59:33', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000038, 7, '51ae940599', '测试004', '2023060000000002', '张三丰', '2023110000000038', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:43:40', '2', '管理员', '2023-11-13 16:22:37', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000040, 6, '18d9e95045', '客户演示', '2023110000000009', '刘总', '2023110000000040', 2, NULL, 0, '01', '00', '1', '管理员', '2023-11-07 16:07:04', '2', '管理员', '2023-11-13 17:06:16', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000042, 10, 'd991e089e7', '测试', '1', '门户管理员', '2023110000000042', 2, NULL, 0, '05', '00', '100016', 'admin55', '2023-11-14 13:27:42', '100016', 'admin55', '2023-11-16 13:47:29', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000039, 18, '4707c1e116', '测试005', '2023060000000002', '张三丰', '2023110000000039', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:47:19', '2', '管理员', '2023-11-16 20:55:46', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000041, 30, '38da0fecf4', 'zeppelin(测试)', '2023060000000002', '张三丰', '2023110000000041', 2, NULL, 0, '01', '00', '2', '管理员', '2023-11-13 16:32:29', '2', '管理员', '2023-11-28 17:37:20', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000037, 6, '2fff2e3e82', '测试', '2023060000000002', '张三丰', '2023100000000037', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:28:37', '100014', 'admin1', '2023-11-02 16:42:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000036, 3, '1465c466bc', '演示002', '2023100000000005', '测试1', '2023100000000036', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-10-30 15:54:30', '100014', 'admin1', '2023-11-02 16:45:48', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000034, 5, 'e82282a129', '演示001', '2023060000000002', '张三丰', '2023100000000034', 2, NULL, 0, '05', '00', '2', '管理员', '2023-10-26 19:32:31', '100014', 'admin1', '2023-11-02 16:45:52', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000043, 12, 'd2948796d2', '测试03', '1', '门户管理员', '2023110000000043', 2, NULL, 0, '01', '00', '100016', 'admin55', '2023-11-16 13:47:55', '1', '门户管理员', '2023-12-08 13:42:12', NULL, NULL, NULL); + +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (53, 0, 'fde5ccceaf', 2023110000000040, 'jupyter', 'http://172.16.12.104:8080/lab005/', NULL, 'VOo3SNcfnu1pgu1bDPF9KA==', 5, NULL, 0, '01', '00', '1', '管理员', '2023-11-07 16:07:04', '1', '管理员', '2023-11-07 16:07:04', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (54, 0, '220490c4de', 2023110000000041, 'zeppelin', 'http://172.16.12.104:8080/lab007/', 'admin', 'MbK1K2/Z41/V/SND00p0CQ==', 7, NULL, 0, '01', '00', '2', '管理员', '2023-11-13 16:32:29', '2', '管理员', '2023-11-13 16:32:29', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (56, 0, '7e1bd2d5b7', 2023110000000043, 'jupyter', 'http://172.16.12.104:8080/lab001/', NULL, 'AXbT3MC760cfkQRikurgLw==', 1, NULL, 0, '01', '00', '100016', 'admin55', '2023-11-16 13:47:55', '100016', 'admin55', '2023-11-16 13:47:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (48, 1, '4920b8de4f', 2023100000000034, 'jupyter', 'http://172.16.12.104:8080/lab005/', NULL, 'HwJ1FTVUtEcpDHudNGYcvA==', 5, NULL, 0, '05', '00', '2', '管理员', '2023-10-26 19:32:31', '2', '管理员', '2023-10-26 19:32:31', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (49, 1, '106551156d', 2023100000000036, 'jupyter', 'http://172.16.12.104:8080/lab005/', NULL, 'oxXRiE/Y+vEGWhizlS2yMw==', 5, NULL, 0, '05', '00', '100014', 'admin1', '2023-10-30 15:54:30', '100014', 'admin1', '2023-10-30 15:54:30', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (50, 1, '6484cdb29c', 2023100000000037, 'jupyter', 'http://172.16.12.104:8080/lab006/', NULL, '5k1O87ewcOIeKIWmMtd8KA==', 6, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:28:37', '100014', 'admin1', '2023-11-02 16:28:37', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (51, 1, '0463845cb1', 2023110000000038, 'jupyter', 'http://172.16.12.104:8080/lab006/', NULL, 'cOqlxatORZhsNdRCAYyF1w==', 6, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:43:40', '100014', 'admin1', '2023-11-02 16:43:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (52, 2, 'b69dd74beb', 2023110000000039, 'jupyter', 'http://172.16.12.104:8080/lab004/', NULL, 'YVv77wBgxZXmogZT0pwsEQ==', 4, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:47:19', '2', '管理员', '2023-11-07 21:39:27', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (55, 1, '54475f9208', 2023110000000042, 'jupyter', 'http://172.16.12.104:8080/lab008/', NULL, 'eAyLpQKj3m0dPkWPIKH5RA==', 8, NULL, 0, '05', '00', '100016', 'admin55', '2023-11-14 13:27:42', '100016', 'admin55', '2023-11-14 13:27:42', NULL, NULL, NULL); + + +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (67, '5dd45006-50bb-4e61-a5eb-6fbac9738358', 33); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (68, '5dd45006-50bb-4e61-a5eb-6fbac9738358', 32); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (69, '5dd45006-50bb-4e61-a5eb-6fbac9738358', 30); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (77, 'bb', 30); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (80, 'JGH000000000000070', 12); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (81, 'JGH000000000000070', 32); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (167, 'JGH000000000000084', 119); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (168, 'JGH000000000000084', 116); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (169, 'JGH000000000000084', 114); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (170, 'JGH000000000000084', 97); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (171, 'JGH000000000000084', 107); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (172, 'JGH000000000000084', 108); + +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (1, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-17', '2023-07-17', '0', 0, '1', 'admin', '2023-07-17 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (2, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-17', '2023-07-20', '0', 1, '3861a2180c', 'admin', '2023-07-17 00:00:00', 'admin', '2023-07-17 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (4, '495932f9-e6f8-40be-ab3a-45292a5eb3b0', '2023-07-18', '2023-07-19', '0', 0, '1', 'yts', '2023-07-18 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (3, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-17', '2023-07-21', '1', 3, '1b8df22227', 'admin', '2023-07-17 00:00:00', 'yts', '2023-07-18 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (5, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-28', '2023-07-29', '0', 0, '1', 'yts', '2023-07-28 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (10, 'JGH000000000000084', 'data_begin', '111', '11', 0, '1', '', '2023-09-27 00:00:00', NULL, '2023-09-27 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (6, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-28', '2023-07-29', '0', 0, '1', 'yts', '2023-07-28 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (8, '231', 'add:test:key', '测试', '2023-12-20', 0, '1', '', '2023-09-07 00:00:00', NULL, '2023-09-07 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (7, '231', 'add:test:key', '测试', '2023-12-20', 0, '1', '', '2023-09-07 00:00:00', NULL, '2023-09-07 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (11, 'JGH000000000000084', 'data_begin', '111', '111', 0, '1', '', '2023-10-09 16:00:04.31662', NULL, '2023-10-09 16:00:04.31662', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (12, 'JGH000000000000084', 'data_begin', '111', '11', 0, '1', '', '2023-10-09 17:11:53.786769', NULL, '2023-10-09 17:11:53.786769', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (151, 'JGH000000000000084', 'downLoadRigth', '获取线路小时客流指标', 'lineHour', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (152, 'JGH000000000000084', 'downLoadRigth', '获取线路每日客流指标', 'lineDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (153, 'JGH000000000000084', 'downLoadRigth', '获取线路每月客流指标', 'lineMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (154, 'JGH000000000000084', 'downLoadRigth', '获取线路站点小时客流指标', 'stationHour', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (155, 'JGH000000000000084', 'downLoadRigth', '获取线路站点每日客流指标', 'stationDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (156, 'JGH000000000000084', 'downLoadRigth', '获取线路站点每月客流指标', 'stationMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (157, 'JGH000000000000084', 'downLoadRigth', '获取线路站点小时换乘指标', 'stationTransHour', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (158, 'JGH000000000000084', 'downLoadRigth', '获取线路站点每日换乘指标', 'stationTransDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (159, 'JGH000000000000084', 'downLoadRigth', '站点换乘月指标', 'stationTrnasMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (160, 'JGH000000000000084', 'downLoadRigth', '站点常乘客日指标', 'stationFreqDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (161, 'JGH000000000000084', 'downLoadRigth', '站点常乘客日指标', 'stationFreqMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (162, 'JGH000000000000084', 'downLoadRigth', '站点常乘客换乘月日指标', 'stationFreqTransDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (163, 'JGH000000000000084', 'downLoadRigth', '站点常乘客换乘月指标', 'stationFreqTransMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (164, 'JGH000000000000084', 'downLoadRigth', '班次客流量', 'routeDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (66, 'JGH000000000000084', 'data_begin', 'dd', '2023-11-03', 0, '1', '', '2023-11-03 15:26:13.074658', NULL, '2023-11-03 15:26:13.074658', '1', '0'); + + +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000134', '演示004', '01', NULL, 'c4a262fa33d753b25c5bec359f98c530', 'ca26730c33e86bb03de44f85bcb92df2', '2023-10-03', '2024-11-15', '0', 7, '6ac7771317', '100014', 'admin1', '2023-10-31 14:17:11', '', 'admin', '2023-11-16 21:00:57', '0', NULL, 'Mpbca3BlrJ5PGxKpu7e8Mg==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000140', '机构到期', '02', NULL, '83bac02e390919f4ab9ca891567c681a', 'd40b3d407fbe4211ba6161004fc1de9c', '2023-11-01', '2024-11-13', '2', 5, '8c573e49da', '1', 'admin', '2023-11-09 19:37:11', '', 'admin', '2023-11-16 21:00:57', '0', NULL, 'Mpbca3BlrJ5PGxKpu7e8Mg==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000084', '机构一', '01', '1', 'c2fd8ac5a7c9c57c26f8692e4ac0e15b', '886f918cb40cb5a5014402a6c00cda74', '2023-07-02', '2024-07-26', '0', 37, '7be2f2162f', '1', 'admin', '2023-09-19 16:22:33', '1', 'admin', '2023-11-22 15:37:34', '0', '130.252.102.154', '18712387792', NULL, NULL, '1'); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000126', '11', '01', '11', 'cd90b31ca1259ee5e5a04400e8d32fcd', 'd86874d3da56da5c8f1b9362d2cf2ddd', '2023-10-12', '2024-10-19', '2', 2, '852932640f', '100007', 'yts', '2023-10-12 20:50:26', '', 'yts', '2023-11-09 19:47:21', '1', NULL, '12312312123', NULL, NULL, NULL); + +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (43, 'JGH000000000000084', '机构一', 111, 1, 0, '站点常乘客换乘客流量-日', '2023-11-09 16:24:35', 'system', '2023-11-09 16:24:35', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (40, 'JGH000000000000084', '机构一', 113, 2, 0, '站点常乘客换乘客流量-月', '2023-11-09 16:22:48', 'system', '2023-11-09 16:22:48', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (5, 'JGH000000000000084', '机构一', 128, 3, 5, 'sds-副本20231017102612', '2023-10-18 12:09:59', 'system', '2023-10-18 12:09:59', NULL, 4, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (44, 'JGH000000000000084', '机构一', 114, 1, 0, '班次客流量-日', '2023-11-09 16:25:01', 'system', '2023-11-09 16:25:01', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (6, 'JGH000000000000084', '机构一', 119, 4, 9, 'sds', '2023-10-27 14:20:37', 'system', '2023-10-27 14:20:37', NULL, 12, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (37, 'JGH000000000000084', '机构一', 102, 2, 0, '站点客流量-月', '2023-11-09 16:22:30', 'system', '2023-11-09 16:22:30', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (45, 'JGH000000000000084', '机构一', 107, 2, 0, '站点换乘客流量-月', '2023-11-09 16:37:16', 'system', '2023-11-09 16:37:16', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (8, 'JGH000000000000084', '机构一', 135, 2, 0, '测试003', '2023-11-01 17:08:09', 'system', '2023-11-01 17:08:09', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (34, 'JGH000000000000084', '机构一', 99, 1, 0, '线路客流量-月', '2023-11-09 16:22:14', 'system', '2023-11-09 16:22:14', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num + + +, rec_token, del_flag) VALUES (36, 'JGH000000000000084', '机构一', 100, 1, 0, '站点客流量-小时', '2023-11-09 16:22:28', 'system', '2023-11-09 16:22:28', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (46, 'JGH000000000000084', '机构一', 116, 0, 6, '文件下载', '2023-11-09 16:45:46', 'system', '2023-11-09 16:45:46', NULL, 5, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (39, 'JGH000000000000084', '机构一', 105, 1, 0, '站点换乘客流量-小时', '2023-11-09 16:22:43', 'system', '2023-11-09 16:22:43', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (41, 'JGH000000000000084', '机构一', 109, 2, 0, '站点常乘客客流量-日', '2023-11-09 16:23:00', 'system', '2023-11-09 16:23:00', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (42, 'JGH000000000000084', '机构一', 110, 2, 0, '站点常乘客客流量-月', '2023-11-09 16:24:01', 'system', '2023-11-09 16:24:01', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (32, 'JGH000000000000084', '机构一', 97, 5, 3, '线路客流量-日', '2023-11-09 16:21:48', 'system', '2023-11-09 16:21:48', NULL, 7, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (33, 'JGH000000000000084', '机构一', 98, 3, 0, '线路客流量-小时', '2023-11-09 16:22:06', 'system', '2023-11-09 16:22:06', NULL, 2, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (38, 'JGH000000000000084', '机构一', 106, 2, 0, '站点换乘客流量-日', '2023-11-09 16:22:35', 'system', '2023-11-09 16:22:35', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (35, 'JGH000000000000084', '机构一', 101, 8, 0, '站点客流量-日', '2023-11-09 16:22:19', 'system', '2023-11-09 16:22:19', NULL, 7, '1', '0'); + + +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (22, 3, '4c1d04935a', 'dddd', '/images/console/14a1c8f0c40b46f3893fd0ae839c5e03.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-18 11:01:04', '100007', 'yts', '2023-07-20 14:32:30', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (25, 1, '1f15b47c3d', 'fasdfa', '/images/console/e3b52addfb704e92ab13976e9cf8549e.jpg', NULL, '1', NULL, '2', '99', '100007', 'yts', '2023-07-20 14:35:13', '100007', 'yts', '2023-07-20 14:51:21', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (21, 8, 'e2394cd6be', '2222', '

测试aaaa,asdas.

测试

测试

', NULL, '2', NULL, '3', '99', '100004', 'jiuyv', '2023-07-11 14:25:57', '100007', 'yts', '2023-07-20 14:54:36', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (23, 0, '1', 'asdfasd', '

asdfasdfasd

', NULL, '2', NULL, '1', '99', '100007', 'yts', '2023-07-18 11:02:13', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (33, 0, '1', 'iiiiiiii', '/images/console/6febb9c8866e46eb9855fc76b129395f.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:44:49', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (31, 0, '1', 'wwwww', '/images/console/1f71c13cd4244dbf87e597e82042b699.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:41:09', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (30, 0, '1', 'qqqqq', '

sdafgasdfasdfasdfasd

', NULL, '4', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:40:45', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (29, 0, '1', 'eeeeee', 'dasfasdfasdfasd', NULL, '3', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:40:01', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (28, 0, '1', 'ffffffff', NULL, NULL, '3', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:38:56', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (27, 0, '1', 'cccc', NULL, NULL, '3', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:37:35', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (24, 0, '1', 'sdfasdfsd', '/images/console/71286c0d3a2e46258f2ba38623c1eea3.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-20 14:34:42', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (39, 7, '317a0ab3e1', '久事乘车宝', '“久事乘车宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API形式,为用户提供久事集团旗下500+条地面公交线路实时到站预报数据,涵盖线路、站级、上下行、到站站距、到站距离、到站时间等多维度信息。', NULL, '3', NULL, '2', '00', '100004', 'jiuyv', '2023-08-21 14:31:45', '100004', 'jiuyv', '2023-09-11 16:07:31', 2, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (37, 9, '8b4da6393f', '交通行业首家DCMM认证企业', '/images/console/a4a0dd8076d94a929d01c1c593527193.png', NULL, '1', NULL, '3', '99', '100004', 'jiuyv', '2023-08-21 10:15:27', '100004', 'jiuyv', '2023-09-11 15:14:48', NULL, NULL, '交通卡公司获国家数据管理能力成熟度稳健级(3级)认证,数据标准统一,数据管理规范,数据治理较好', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (38, 7, '1d8bc35722', '久事客流宝', '“久事客流宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API、文件配送等形式,为用户提供地面公交线路客流数据,为企业、研究机构、政府部门的实时监测、运营调度、线网优化、商业选址、辅助决策等需求提供数据支撑。', NULL, '3', NULL, '2', '00', '100004', 'jiuyv', '2023-08-21 10:51:09', '100004', 'jiuyv', '2023-09-11 16:07:41', 1, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (20, 5, '8ba6d1128a', '测试应用场景', '

测试应用场景测试应用场景测试应用场景

测试应用场景测试应用场景测试应用场景

测试应用场景

', '2', '3', NULL, '1', '99', '1', 'admin', '2023-07-05 17:23:23', '100007', 'yts', '2023-07-27 16:48:50', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (18, 14, 'fb2dd821d0', '标题五', '/images/console/adf639c21b0f47968a568a7670e1bab6.jpg', '1', '1', NULL, '3', '99', '100007', 'yts', '2023-07-03 17:56:35', '100004', 'jiuyv', '2023-08-21 10:13:03', NULL, NULL, '小标题', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (35, 9, 'e163087cfc', '市数商协会会员', '/images/console/66bdc6cf8fd3466db925966d360f59cd.png', NULL, '1', NULL, '3', '99', '100004', 'jiuyv', '2023-08-21 10:12:44', '100004', 'jiuyv', '2023-09-11 15:14:35', NULL, NULL, '与各行业头部数商企业一同,推进数据创造、消费、流通、交易,最大程度释放数据价值', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (36, 10, '84eb32d447', '市级企业技术中心(暂未)', '/images/console/28cc67293f534beaa79a020ee56d27c5.png', NULL, '1', NULL, '3', '99', '100004', 'jiuyv', '2023-08-21 10:14:01', '100004', 'jiuyv', '2023-09-11 15:14:37', NULL, NULL, '交通卡公司获第30批市级企业技术中心认定企业,持续推进关键核心技术攻关,不断促进产学研用协同创新', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (41, 5, '90d65a87a6', '久事客流宝', '/images/console/a01b4120ec9d4d559c073f953dfbc9c9.jpg', NULL, '4', NULL, '3', '99', '100004', 'jiuyv', '2023-08-22 18:59:08', '100004', 'jiuyv', '2023-09-11 15:22:24', NULL, NULL, '“久事客流宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API、文件配送等形式,为用户', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (40, 20, 'ec78d02e27', '用户画像', '-覆盖5000万的公共交通卡实名用户 +-支持性别、年龄、消费城市、高频线路/站点等40+个性化用户标签 +-常用于站点广告投放、商铺选址、客群洞察等场景', NULL, '3', NULL, '2', '00', '100004', 'jiuyv', '2023-08-21 14:32:03', '100014', 'admin1', '2023-10-17 10:41:49', 3, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (42, 5, '7aa1cc55e2', '久事乘车宝', '/images/console/b1c4bef7faad45b99d22697eef0f2492.jpg', NULL, '4', NULL, '3', '99', '1', 'admin', '2023-09-07 19:17:19', '100004', 'jiuyv', '2023-09-11 15:22:22', NULL, NULL, '“久事乘车宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API形式,为用户提供久事集团', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (34, 1, '906a0f30f8', 'fffffff', '/images/console/4270e66ac8bd44328b2cc09795da0804.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:47:59', '100004', 'jiuyv', '2023-09-12 14:08:12', 4, NULL, 'dfasdfsadfasdfsdaf', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (26, 5, 'dca2e730c5', '助力数字城市建设,交通卡新产品“久事客流宝”拿下上海数据交易所“第一单”!', '

助力数字城市建设,交通卡新产品“久事客流宝”拿下上海数据交易所“第一单”!

', NULL, '2', NULL, '2', '00', '100007', 'yts', '2023-07-20 14:54:47', '1', 'admin', '2023-09-08 17:28:56', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (5, 13, 'ba18807a06', '交通卡公司成功通过国家数据管理能力成熟度评审,成上海交通行业首家获评企业!', '

交通卡公司成功通过国家数据管理能力成熟度评审,成上海交通行业首家获评企业!

', '2', '2', NULL, '2', '00', '1', 'admin', '2023-06-25 15:37:19', '1', 'admin', '2023-09-08 17:28:59', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (32, 9, 'd07ba62633', '交通卡公司新产品“久事乘车宝”近日在上海数据交易所成功挂牌!', '

在久事集团指导下,交通卡公司和久事公交共同推出的“久事乘车宝”数据产品,近日在上海数据交易所成功挂牌。

“久事乘车宝”是通过API形式,为用户提供久事集团旗下公交线路实时到站预报数据。该产品是依托久事集团“云数据中心”强大的计算能力,通过前端感知、后端算法互为加强,研发了国内领先的公交到站预报模型。目前,公交到站预报准确率已达到97%以上,市民在公交车站、“随申办”APP、“上海公交”APP可进行公交到站预报信息的实时查询,从而告别等车焦虑。

“久事乘车宝”数据产品的研发和推出是久事集团践行“人民城市”理念,推进出行服务数字化转型的重要实践,可为企事业单位、行业主管部门、研究机构提供服务,推动数据要素流通、释放数字红利、促进上海市数字经济发展。

', NULL, '2', NULL, '2', '00', '100007', 'yts', '2023-07-27 16:41:50', '100004', 'jiuyv', '2023-09-12 14:13:05', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (19, 3, '597fa276d1', '标题六ddd', '

hello

', '2', '4', NULL, '1', '99', '100007', 'yts', '2023-07-03 17:57:32', '100007', 'yts', '2023-07-18 11:00:37', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (43, 4, '37c210a04e', '用户画像', '/images/console/e097514f6bcb464192f0eb58ef276537.jpg', NULL, '4', NULL, '3', '99', '1', 'admin', '2023-09-11 09:54:57', '100004', 'jiuyv', '2023-09-11 16:15:47', NULL, NULL, '-覆盖5000万的公共交通卡实名用户 +-支持性别、年龄、消费城市、高频线路/站点等40+个性化用户标', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (51, 1, '8158cfb781', '撒打发斯蒂芬', '发生的发生的', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:47:00', '1', 'admin', '2023-10-17 20:47:10', 1, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (52, 0, '1', '啊啊啊', '啊啊啊', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:52:35', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (53, 0, '1', '啊啊啊', '啊啊啊', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:53:12', NULL, NULL, NULL, 0, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (54, 0, '1', '发生的发生的', '大法师的', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:54:15', NULL, NULL, NULL, 0, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (50, 4, '62faba0612', '测试', '

是多少

', NULL, '2', NULL, '2', '00', '1', 'admin', '2023-10-11 16:36:11', '1', 'admin', '2023-10-17 21:20:33', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (44, 18, '9997a0b975', '市交通行业首家DCMM认证企业', NULL, NULL, '1', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:11:48', '100015', 'admin2', '2023-11-09 13:37:24', 2, NULL, '交通卡公司获国家数据管理能力成熟度稳健级(3级)认证,数据标准统一,数据管理规范,数据治理较好。', '/images/console/0add92ad6cbf452b9c0d77742a7099c5.jpg'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (49, 13, 'f3db60bbf5', '用户画像', '

-覆盖5000万的公共交通卡实名用户

-支持性别、年龄、消费城市、高频线路/站点等40+个性化用户标签

-常用于站点广告投放、商铺选址、客群洞察等场景

 

', NULL, '4', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:22:12', '100015', 'admin2', '2023-11-29 17:32:26', 3, NULL, NULL, '/images/console/cdbea889774e4bf7bbd3bcaa72ec576d.png'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (46, 10, '0ea7246a4a', '市数商协会会员', NULL, NULL, '1', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:14:23', '100015', 'admin2', '2023-11-09 13:37:18', 1, NULL, '与各行业头部数商企业一同,推进数据创造、消费、流通、交易,最大程度释放数据价值。', '/images/console/b3d083cfc2b44dd4806b3830870e584c.jpg'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (45, 11, 'e78f8c7c8b', '市级企业技术中心', NULL, NULL, '1', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:13:53', '100015', 'admin2', '2023-11-09 13:37:28', 3, NULL, '交通卡公司获第30批市级企业技术中心认定企业,持续推进关键核心技术攻关,不断促进产学研用协同创新。', '/images/console/c2ca541e8dcd4dcd95402ac13f9113ab.jpg'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (47, 13, '6aceedd511', '久事客流宝', '

“久事客流宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API、文件配送等形式,为用户提供地面公交线路客流数据,为企业、研究机构、政府部门的实时监测、运营调度、线网优化、商业选址、辅助决策等需求提供数据支撑。

l 实时数据类

可提供全市范围地面公交线路整体客流数据。

l 非实时数据类

-可提供全市范围地面公交营运单位级、线路级客流数据,以及线路级换乘客流数据。

-可提供久事集团旗下500+条地面公交线路班次级、车辆级、站点级客流数据,以及站点级换乘客流数据。

-可根据用户需求,定制化提供区域级客流数据。

', NULL, '4', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:17:00', '100015', 'admin2', '2023-11-29 17:32:32', 1, NULL, NULL, '/images/console/53f1b8b838174db6b114c73d0b149869.png'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (55, 5, 'a1513d77a0', '测试', '

文本信息

', NULL, '2', NULL, '3', '00', '1', 'admin', '2023-10-31 16:48:14', '100019', 'admin3', '2023-11-17 16:21:53', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (48, 22, 'ed6470bf3d', '久事乘车宝', '

“久事乘车宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API形式,为用户提供久事集团旗下500+条地面公交线路实时到站预报数据,涵盖线路、站级、上下行、到站站距、到站距离、到站时间等多维度信息。

该产品依托久事集团“云数据中心”强大的计算能力,通过前端感知、后端算法互为加强,研发了国内领先的公交到站预报模型,数据准确率达97%以上。

该产品可以运用于信息技术服务、交通运输、公用事业、科学研究等多个领域。

-可应用于信息服务。为公众提供公交到站预报信息实时查询服务,解决市民的“等车焦虑”,以及帮助公众更好地规划公交出行,合理安排出行时间。

-可应用于公交运营。利用产品数据,来监控车辆运行情况、优化调度计划,提高运营效率,减少车辆拥堵和滞留,保障公交高质量服务。

-可应用于线网优化。基于实时数据,进行更为科学的公交线路规划、调整和优化,确保公共交通资源得到最大化利用,更好地满足广大市民的出行需求。

-可应用于科学研究。实时的公交运营数据可为交通客流、城市规划以及相关领域的研究提供数据支撑,为科学研究领域注入更多的活力和深度。

', NULL, '4', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:18:10', '100015', 'admin2', '2023-11-29 17:32:28', 2, NULL, NULL, '/images/console/22624b08dbfd4a69b3232e3bffd91ceb.png'); + + +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (116, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-16 20:15:51'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (117, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-16 20:16:13'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (118, 'test2', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 14:47:04'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (119, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 15:01:32'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (120, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 16:07:46'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (121, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 17:23:59'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (122, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 11:37:27'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (123, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 11:37:27'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (124, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:14:39'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (125, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:14:39'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (126, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:32:07'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (127, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:32:07'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (128, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:33:27'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (129, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:33:28'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (130, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:37:09'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (131, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:38:19'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (132, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:55:29'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (133, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:55:29'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (134, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:56:49'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (135, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:57:02'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (136, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 14:07:54'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (137, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 14:22:57'); + + +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (56, '实验室-数据注入申请', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.fileBind()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/fileBind', '172.16.12.107', '内网IP', '{applyId:2023110000000043,recToken:c521fbb94b,applyDesc:,fileIds:[183]}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-16 20:11:40'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (57, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户管理员', NULL, '/portal-service/portalUser/resetUserPwd', '130.252.101.48', 'XX XX', '{userId:1,password:$2a$10$.lobUGG6qW2lsQt0.AWAxe3KbrZ8hyY3jnkrLy.fw5er5lJtiHcie,oldPassword:TesjSBYcX6RgWQN1ylSuj2NTilVG27obk2NU031IehjnQycYJY3o8IxiT74xgjyGXtth6jgB0zd3VKhETH7GMwFG5wBI8Zsz+F7J2wCPSNEwyxsIwNxcURTDnqYR7HhTKCH/wjgsdsxm4BW/RuWyWI+8FrhJna5eRPvgP4xtfqk=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 14:24:50'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (58, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户管理员', NULL, '/portal-service/portalUser/resetUserPwd', '130.252.101.48', 'XX XX', '{userId:1,password:$2a$10$eDv7Z0/RigT5FAmp1u6dkOyE0G66KD5eanSg9zIHn4lu4H59N7LoS,oldPassword:A5Np6rk86b8+82y1Ov6CPv+DO8REOxDkhImXQ251TkaH4NQySaXkfymY9NxR+tW3q2zY+JITflGYiG4HRV1t1XChkP1jPR46riwbMkID20Vihubi2qz7Kb068HIuPbKrnunkDnwLXaVO3nbqsxr84SF+My4G+bDnxB9cprQIC7o=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 14:27:42'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (59, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户管理员', NULL, '/portal-service/portalUser/resetUserPwd', '130.252.101.48', 'XX XX', '{userId:1,password:$2a$10$mcs.j1UiDIaLGtsHT7dqrujvv/xKGAhQxJSMLpDSxu2h6XYBAKmKO,oldPassword:XO2dnNY5VHsIKQj2On9yTaQVDlQxSKuPEGVlRJMAW+QhB21IHNufTi8BTuNWThOToWACK5y/QsTg3l9ngfPk10r69DQkj6wu7NSsjHw8ctTksvo7YwuxU2bQFh8BEQngFzrskOj9Scokr8RBY1I2z9c0k+Xw7hpIkf5vI//7bFc=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 14:31:19'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (60, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,fileName:kk.zip,applyDesc:cc}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 20:45:27'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (61, '实验室-重启', 2, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.restart()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/restart', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,recToken:c521fbb94b}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-23 14:40:51'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (62, '实验室-重启', 2, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.restart()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/restart', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,recToken:0d44f07b66}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-23 14:51:01'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (63, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户测试', NULL, '/portal-service/portalUser/resetUserPwd', '172.16.12.107', '内网IP', '{userId:2023100000000006,password:$2a$10$WPm3R9cMsRohTtA4CsIP4uXLDpBKJZlzCO8.4edDxoty6X9kDFveS,oldPassword:PJeOCiPZu/bCfyACPFdIXqCnZP5pb12sBWXUKfyyA2fjXgqD/plDJfLNYZdsK1MT3TE+figXoYiipvKVUdJr3d7DjUoj+Ig3faKvRWOI+EEhbzHYL+xROHjKEEl8o/CeOruRZwVYUv6lgv/hkp2i5TdQdrkLn/SDiVTliWIzRH4=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-24 13:58:43'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (64, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '172.16.12.107', '内网IP', '{applyId:2023110000000043,fileName:kk.zip,applyDesc:cc}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-24 14:21:02'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (65, '实验室-数据注入申请', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.fileBind()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/fileBind', '172.16.12.107', '内网IP', '{applyId:2023110000000043,recToken:604ce3569f,applyDesc:eeeqqq,fileIds:[238]}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-28 16:47:18'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (66, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,fileName:bb.zip,applyDesc:aa}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-29 13:49:02'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (67, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,fileName:测试副本.zip,applyDesc:ccddd}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-29 13:50:46'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (68, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '130.252.101.48', 'XX XX', 'python aadd', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 14:58:36'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (69, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '130.252.101.48', 'XX XX', 'python aadd', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 15:03:04'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (70, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '172.16.12.107', '内网IP', 'python gggtttt', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 16:02:35'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (71, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '172.16.12.107', '内网IP', 'python yy666', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 16:06:22'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (72, '我的消息-查看消息', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalMessageController.detail()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/message/detail', '130.252.101.48', 'XX XX', '57', '{code:success,msg:操作成功,data:{msgId:57,msgTitle:实验室(2023110000000042)收回,msgText:您的实验室“测试”已被强制收回,将不再提供服务,如有疑问请拨打联系电话:(021-60825678)。,msgType:17,msgStatus:1,createTime:2023-11-16 05:44:00}}', 0, NULL, '2023-12-05 15:47:21'); + +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023090000000003, 2, '1', NULL, 'aaaa', 'aaaa', NULL, NULL, NULL, NULL, NULL, '$2a$10$GgF65HGddAHTC.YigDFDWuidNki0ffwJ0UgFVSlzYiXMZMLz6aMZ2', NULL, NULL, NULL, NULL, NULL, '0', '2', NULL, NULL, NULL, 0, NULL, NULL, '1', '管理员', '2023-09-06 17:10:16', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000009, 0, '1', NULL, 'adminliu', 'liuquan', NULL, NULL, 'K1V+hZd5/a9Et/aw3cfVXQ==', '0', NULL, '$2a$10$KiHtBdwsnlteKr4f2Ssl7elDoZBjPmlRerh6XORlW4.VkPMD10gC2', '演示', NULL, '232903209809222', NULL, NULL, '0', '0', '172.16.12.254', '2023-11-08 14:36:43', '0', 0, '2023-11-08 14:36:32', NULL, '1', '管理员', '2023-11-07 16:04:19', NULL, NULL, '2023-11-08 14:37:29', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000008, 1, '4e09f0f8f2', NULL, 'admin3', '测试', NULL, NULL, 'K1V+hZd5/a9Et/aw3cfVXQ==', '0', NULL, '0', NULL, NULL, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, NULL, NULL, '100014', 'admin1', '2023-10-31 14:40:34', '100016', 'admin55', '2023-11-09 16:53:08', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000004, 3, 'b12fdc8904', NULL, 'test1', '测试1', NULL, NULL, NULL, '0', NULL, '$2a$10$6/TFwxB1P7jNH5hzcA0JAuTmsrDxEqgzqp4aDwijfRphefElWufTS', NULL, NULL, NULL, NULL, NULL, '0', '0', NULL, NULL, NULL, 0, NULL, NULL, '1', '管理员', '2023-10-11 15:57:15', '100019', 'admin3', '2023-11-16 18:34:38', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000006, 10, 'c14073cfc1', NULL, 'admin55', '门户测试', NULL, '+hCBfvoE1AFCHG8QaEh2uQ==', 'FLfuV8lDRrL1S84g5dm9oQ==', '0', NULL, '$2a$10$WPm3R9cMsRohTtA4CsIP4uXLDpBKJZlzCO8.4edDxoty6X9kDFveS', '测试企业', '88', '9999999999999', NULL, '测试地址', '0', '0', '172.16.12.254', '2023-11-24 13:58:29', '0', 1, '2023-11-28 16:36:17', '测试备注', '1', '管理员', '2023-10-20 14:39:44', '100016', 'admin55', '2023-11-28 16:37:11', '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000010, 10, '1f53935033', NULL, 'admin66', '测试2', NULL, 'h79/6DkHoKCkv2+EtFcDCw==', 'ghX9kf1Q/A83hwzaSXNYhw==', '0', NULL, '$2a$10$dwTBdtd12Ej2UlItSH3fUuqqO9MuypsdlOz2hiwJZWKrv4NqefC5.', 'cc', 'bb', '1111111111111111', NULL, 'aaaaa', '0', '0', '127.0.0.1', '2023-11-21 15:05:59', '0', 0, '2023-11-21 15:04:56', NULL, '100016', 'admin55', '2023-11-09 16:59:00', '100016', 'admin55', '2023-11-21 15:05:56', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (18, 1, '1', NULL, 'shuk', 'shuk', NULL, '1KpmsmENvm4hQAiIT0YY0V31x0mvmJZyeR6mGBVoiI0=', 'sk3OF3rwVN7VpGSpemXHuQ==', '0', NULL, '$2a$10$5hxOW1UIMcgL3s6t1Pg/qulAITgkh/1ikTHYVdq8Es.hq/RxKqmXm', 'ceshi ', NULL, '2321233333211', NULL, NULL, '0', '0', '10.10.241.218', '2023-11-21 15:47:50', '0', 0, '2023-11-21 15:47:38', NULL, '16', 'admin1', '2023-11-21 14:29:35', '16', 'admin1', '2023-11-21 15:47:50', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000017, 2, '2a5de3f6bd', NULL, 'test3', '测试1', NULL, NULL, '78+O8ADpYZEDQWoiBeosrg==', '0', NULL, '$2a$10$olHo.LdmGaYHVljmp8ka3.F7JgxKKIZ56OAB1xDDhbiZRM5dVAVDy', NULL, NULL, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, NULL, NULL, '1', '管理员', '2023-11-21 15:34:20', '1', '管理员', '2023-11-21 16:57:26', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023060000000002, 4, 'bccf2a7a4f', 1, 'zhangsf', '张三丰', '00', '', '13855556666', '1', '/images/portal/16ed81d9f13d4e5cabcc6d21b22a06d1.jpg', '1', NULL, NULL, NULL, NULL, 'aa', '0', '0', '172.16.12.254', '2023-11-02 19:57:34', '0', 0, '2023-05-26 16:02:24', '', 'admin', '管理员', '2023-04-04 13:29:07', '100014', 'admin1', '2023-11-03 13:24:20', '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000011, 0, '1', NULL, '压测', 'test0', NULL, NULL, '0M2GcOW6GRbbzHoe+wQ21A==', '0', NULL, '$2a$10$PzyoAoc.jE66pwKfU5q9ue7MwKyL4jYo2d1fpEwoAtmRzaz4y0P12', NULL, NULL, '32143232312', NULL, NULL, '0', '0', NULL, NULL, NULL, NULL, NULL, NULL, '1', '管理员', '2023-11-14 15:26:09', NULL, NULL, NULL, '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000005, 11, '95f33ae495', NULL, 'test2', '测试1', NULL, 'O8dyy6bCfL+eziJFikbymg==', 'gyvOhHepdlRtoms79soE4w==', NULL, NULL, '$2a$10$.EIpeblf5yEsaSihZO2D8.Lvip24v3oA8DaipvGF9FwHInQTIzeSO', '测试企业', '研究', '1231983921839d', NULL, '测试长度。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。', '0', '0', '127.0.0.1', '2023-12-06 17:00:25', '0', 0, '2023-11-21 15:05:11', NULL, '1', '管理员', '2023-10-11 16:01:51', '1', '管理员', '2023-12-06 17:01:23', '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (1, 15, '1', 1, 'admin', '门户管理员', '00', 'admin@admin.com', '13855556666', '1', '/images/portal/fca2104d499048feb53f872dbc110fa1.png', '$2a$10$mcs.j1UiDIaLGtsHT7dqrujvv/xKGAhQxJSMLpDSxu2h6XYBAKmKO', '测试企业', '88', '9999999999999', NULL, '测试地址', '0', '0', '127.0.0.1', '2023-12-08 13:42:07', '0', 0, '2023-12-06 16:24:43', '', 'admin', '管理员', '2023-04-04 13:29:07', NULL, NULL, '2023-12-08 13:42:04', '1'); + + +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (16, 1, '门户管理员', '实验室(2023070000000016)即将到期', '您的实验室即将到期,实验室编号:2023070000000016,到期时间2023-10-03 15:51', '3', '0', '00', 'system', '系统自动', '2023-09-30 23:29:59', 'system', '系统自动', '2023-09-30 23:29:59'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020', '1', '0', '00', 'system', '系统自动', '2023-07-10 19:58:52', 'system', '系统自动', '2023-07-10 19:58:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (9, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 19:50', '1', '0', '00', 'system', '系统自动', '2023-07-20 19:50:49', 'system', '系统自动', '2023-07-20 19:50:49'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (10, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 19:53', '1', '0', '00', 'system', '系统自动', '2023-07-20 19:53:59', 'system', '系统自动', '2023-07-20 19:53:59'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (11, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 20:07', '1', '0', '00', 'system', '系统自动', '2023-07-20 20:07:45', 'system', '系统自动', '2023-07-20 20:07:45'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (31, 2023060000000002, '张三丰', '实验室(2023100000000034)申请通过', '您申请的实验室已创建,实验室编号:2023100000000034,到期时间2023-11-25 19:32', '1', '0', '00', 'system', '系统自动', '2023-10-26 19:32:32', 'system', '系统自动', '2023-10-26 19:32:32'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (19, 2023060000000002, '张三丰', '实验室(2023070000000021)申请通过', '您申请的实验室已创建,实验室编号:2023070000000021,到期时间2023-11-16 10:23', '1', '0', '00', 'system', '系统自动', '2023-10-17 10:23:57', 'system', '系统自动', '2023-10-17 10:23:57'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (29, 1, '门户管理员', '实验室(2023100000000033)申请通过', '您申请的实验室已创建,实验室编号:2023100000000033,到期时间2023-10-24 20:44', '1', '1', '00', 'system', '系统自动', '2023-10-19 20:44:58', '1', '门户管理员', '2023-12-05 15:49:25'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (12, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 20:14', '1', '0', '00', 'system', '系统自动', '2023-07-20 20:14:22', 'system', '系统自动', '2023-07-20 20:14:22'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (13, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-08-01 14:33', '1', '0', '00', 'system', '系统自动', '2023-07-21 14:33:43', 'system', '系统自动', '2023-07-21 14:33:43'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (14, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-03 15:35', '1', '0', '00', 'system', '系统自动', '2023-09-22 15:35:28', 'system', '系统自动', '2023-09-22 15:35:28'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (4, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间{expirationTime}', '1', '0', '00', 'system', '系统自动', '2023-07-11 13:00:15', 'system', '系统自动', '2023-07-11 13:00:15'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (5, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-08-02 13:05', '1', '0', '00', 'system', '系统自动', '2023-07-11 13:05:11', 'system', '系统自动', '2023-07-11 13:05:11'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020', '1', '0', '00', 'system', '系统自动', '2023-07-11 11:52:46', 'system', '系统自动', '2023-07-11 11:52:46'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (7, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-08-02 14:41', '1', '0', '00', 'system', '系统自动', '2023-07-11 14:41:45', 'system', '系统自动', '2023-07-11 14:41:45'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (30, 1, '门户管理员', '实验室(2023100000000033)即将到期', '您的实验室即将到期,实验室编号:2023100000000033,到期时间2023-10-24 20:44', '3', '0', '00', 'system', '系统自动', '2023-10-21 23:29:59', 'system', '系统自动', '2023-10-21 23:29:59'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (15, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-03 15:51', '1', '0', '00', 'system', '系统自动', '2023-09-22 15:51:18', 'system', '系统自动', '2023-09-22 15:51:18'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (28, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 17:35', '1', '0', '00', 'system', '系统自动', '2023-10-19 17:35:48', 'system', '系统自动', '2023-10-19 17:35:48'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (27, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 17:19', '1', '0', '00', 'system', '系统自动', '2023-10-19 17:20:09', 'system', '系统自动', '2023-10-19 17:20:09'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (18, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-11-08 10:09', '1', '0', '00', 'system', '系统自动', '2023-10-17 10:09:55', 'system', '系统自动', '2023-10-17 10:09:55'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (20, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-28 15:30', '1', '0', '00', 'system', '系统自动', '2023-10-17 15:30:11', 'system', '系统自动', '2023-10-17 15:30:11'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (21, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 10:00', '1', '0', '00', 'system', '系统自动', '2023-10-19 10:00:42', '1', '门户管理员', '2023-11-14 14:52:16'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (22, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 10:50', '1', '0', '00', 'system', '系统自动', '2023-10-19 10:51:25', '1', '门户管理员', '2023-11-14 14:52:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (23, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 14:23', '1', '0', '00', 'system', '系统自动', '2023-10-19 14:24:55', '1', '门户管理员', '2023-11-14 14:52:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (24, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 16:39', '1', '0', '00', 'system', '系统自动', '2023-10-19 16:40:36', '1', '门户管理员', '2023-11-14 14:52:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (53, 2023060000000002, '张三丰(zhangsf)', '实验室(2023110000000041)重新初始化', '您的实验室“zeppelin(测试)”已重新初始化,实验室编号:2023110000000041,如有疑问请拨打联系电话:(021-60825678)。', '6', '0', '00', 'system', '系统自动', '2023-11-15 17:38:38', 'system', '系统自动', '2023-11-15 17:38:38'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (6, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-08-02 13:19', '1', '0', '00', 'system', '系统自动', '2023-07-11 13:19:32', '1', '门户管理员', '2023-11-14 17:07:07'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (8, 2023060000000002, '张三丰', '实验室(2023070000000021)申请通过', '您申请的实验室已创建,实验室编号:2023070000000021,到期时间2023-08-10 20:16', '1', '0', '00', 'system', '系统自动', '2023-07-11 20:16:50', 'system', '系统自动', '2023-07-11 20:16:50'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (17, 2023100000000005, '测试1', '实验室(2023100000000029)申请通过', '您申请的实验室已创建,实验室编号:2023100000000029,到期时间2023-10-14 11:16', '1', '0', '00', 'system', '系统自动', '2023-10-12 11:16:22', 'system', '系统自动', '2023-10-12 11:16:22'); + + +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', '2023-08-25', 2875, '2023-11-09 14:35:30.598151', NULL, 135491951); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', '2023-08-25', 2602, '2023-11-09 14:35:30.631274', NULL, 135491952); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010000', '100', '1', '00-01', '巴士一公司', '3', '2023-08-25', 3300, '2023-11-09 14:35:30.631274', NULL, 135491953); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('101400', '1014', '1', '00-06', '巴士四公司', '1', '2023-08-25', 725, '2023-11-09 14:35:30.631274', NULL, 135491954); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010200', '102', '1', '00-01', '巴士一公司', '5', '2023-08-25', 141, '2023-11-09 14:35:30.631274', NULL, 135491955); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010300', '103', '1', '00-01', '巴士一公司', '3', '2023-08-25', 5748, '2023-11-09 14:35:30.631274', NULL, 135491956); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '1', '00-06', '巴士四公司', '3', '2023-08-25', 2513, '2023-11-09 14:35:30.631274', NULL, 135491957); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010500', '105', '1', '00-04', '巴士三公司', '3', '2023-08-25', 2423, '2023-11-09 14:35:30.631274', NULL, 135491958); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010600', '106', '1', '00-04', '巴士三公司', '3', '2023-08-25', 1662, '2023-11-09 14:35:30.631274', NULL, 135491959); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010700', '107', '1', '00-10', '巴士五公司', '5', '2023-08-25', 1631, '2023-11-09 14:35:30.631274', NULL, 135491960); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010800', '108', '1', '00-10', '巴士五公司', '3', '2023-08-25', 7863, '2023-11-09 14:35:30.631274', NULL, 135491961); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010880', '108区间', '1', '00-10', '巴士五公司', '1', '2023-08-25', 402, '2023-11-09 14:35:30.631274', NULL, 135491962); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('001100', '11', '1', '00-06', '巴士四公司', '3', '2023-08-25', 1822, '2023-11-09 14:35:30.631274', NULL, 135491963); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011000', '110', '1', '00-10', '巴士五公司', '3', '2023-08-25', 12314, '2023-11-09 14:35:30.631274', NULL, 135491964); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011100', '111', '1', '00-12', '巴士二公司', '3', '2023-08-25', 2554, '2023-11-09 14:35:30.631274', NULL, 135491965); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011200', '112', '1', '00-04', '巴士三公司', '3', '2023-08-25', 4305, '2023-11-09 14:35:30.631274', NULL, 135491966); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011280', '112区间', '1', '00-04', '巴士三公司', '3', '2023-08-25', 3194, '2023-11-09 14:35:30.631274', NULL, 135491967); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011300', '113', '1', '00-04', '巴士三公司', '3', '2023-08-25', 3478, '2023-11-09 14:35:30.631274', NULL, 135491968); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011500', '115', '1', '00-01', '巴士一公司', '3', '2023-08-25', 4334, '2023-11-09 14:35:30.631274', NULL, 135491969); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011690', '116', '1', '00-10', '巴士五公司', '3', '2023-08-25', 6640, '2023-11-09 14:35:30.631274', NULL, 135491970); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011700', '117', '1', '00-04', '巴士三公司', '3', '2023-08-25', 2401, '2023-11-09 14:35:30.631274', NULL, 135491971); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011800', '118', '1', '00-10', '巴士五公司', '3', '2023-08-25', 4618, '2023-11-09 14:35:30.631274', NULL, 135491972); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('012000', '120', '1', '00-04', '巴士三公司', '3', '2023-08-25', 1471, '2023-11-09 14:35:30.631274', NULL, 135491973); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120104', '1201', '1', '00-01', '巴士一公司', '3', '2023-08-25', 987, '2023-11-09 14:35:30.631274', NULL, 135491974); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120304', '1203', '1', '00-12', '巴士二公司', '3', '2023-08-25', 1102, '2023-11-09 14:35:30.631274', NULL, 135491975); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120404', '1204', '1', '00-12', '巴士二公司', '3', '2023-08-25', 501, '2023-11-09 14:35:30.631274', NULL, 135491976); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120490', '1204B', '1', '00-12', '巴士二公司', '3', '2023-08-25', 420, '2023-11-09 14:35:30.631274', NULL, 135491977); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120504', '1205', '1', '00-06', '巴士四公司', '3', '2023-08-25', 455, '2023-11-09 14:35:30.631274', NULL, 135491978); + + +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 5, '2023-08-25', 46, '2023-11-09 14:36:08.307074', NULL, 1738985); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 6, '2023-08-25', 106, '2023-11-09 14:36:08.314398', NULL, 1738986); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 7, '2023-08-25', 224, '2023-11-09 14:36:08.314398', NULL, 1738987); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 8, '2023-08-25', 288, '2023-11-09 14:36:08.314398', NULL, 1738988); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 9, '2023-08-25', 236, '2023-11-09 14:36:08.314398', NULL, 1738989); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 10, '2023-08-25', 184, '2023-11-09 14:36:08.314398', NULL, 1738990); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 11, '2023-08-25', 193, '2023-11-09 14:36:08.314398', NULL, 1738991); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 12, '2023-08-25', 196, '2023-11-09 14:36:08.314398', NULL, 1738992); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 13, '2023-08-25', 149, '2023-11-09 14:36:08.314398', NULL, 1738993); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 14, '2023-08-25', 164, '2023-11-09 14:36:08.314398', NULL, 1738994); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 15, '2023-08-25', 185, '2023-11-09 14:36:08.314398', NULL, 1738995); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 16, '2023-08-25', 175, '2023-11-09 14:36:08.314398', NULL, 1738996); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 17, '2023-08-25', 180, '2023-11-09 14:36:08.314398', NULL, 1738997); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 18, '2023-08-25', 187, '2023-11-09 14:36:08.314398', NULL, 1738998); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 19, '2023-08-25', 112, '2023-11-09 14:36:08.314398', NULL, 1738999); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 20, '2023-08-25', 85, '2023-11-09 14:36:08.314398', NULL, 1739000); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 21, '2023-08-25', 86, '2023-11-09 14:36:08.314398', NULL, 1739001); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 22, '2023-08-25', 56, '2023-11-09 14:36:08.314398', NULL, 1739002); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 23, '2023-08-25', 23, '2023-11-09 14:36:08.314398', NULL, 1739003); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 6, '2023-08-25', 13, '2023-11-09 14:36:08.314398', NULL, 1739004); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 7, '2023-08-25', 157, '2023-11-09 14:36:08.314398', NULL, 1739005); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 8, '2023-08-25', 303, '2023-11-09 14:36:08.314398', NULL, 1739006); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 9, '2023-08-25', 187, '2023-11-09 14:36:08.314398', NULL, 1739007); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 10, '2023-08-25', 101, '2023-11-09 14:36:08.314398', NULL, 1739008); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 11, '2023-08-25', 68, '2023-11-09 14:36:08.314398', NULL, 1739009); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 12, '2023-08-25', 56, '2023-11-09 14:36:08.314398', NULL, 1739010); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 13, '2023-08-25', 81, '2023-11-09 14:36:08.314398', NULL, 1739011); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 14, '2023-08-25', 123, '2023-11-09 14:36:08.314398', NULL, 1739012); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 15, '2023-08-25', 124, '2023-11-09 14:36:08.314398', NULL, 1739013); + + +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', '2023-08', 2875, '2023-11-09 14:36:08.600077', NULL, 32547); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', '2023-08', 2602, '2023-11-09 14:36:08.60549', NULL, 32548); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000600', '6', '1', '00-01', '巴士一公司', '3', '2023-08', 5313, '2023-11-09 14:36:08.60549', NULL, 32549); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000800', '8', '1', '00-01', '巴士一公司', '3', '2023-08', 1475, '2023-11-09 14:36:08.60549', NULL, 32550); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001100', '11', '1', '00-06', '巴士四公司', '3', '2023-08', 1822, '2023-11-09 14:36:08.60549', NULL, 32551); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001300', '13', '1', '00-01', '巴士一公司', '3', '2023-08', 3424, '2023-11-09 14:36:08.60549', NULL, 32552); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001400', '14', '1', '00-01', '巴士一公司', '3', '2023-08', 3278, '2023-11-09 14:36:08.60549', NULL, 32553); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001500', '15', '1', '00-01', '巴士一公司', '3', '2023-08', 2101, '2023-11-09 14:36:08.60549', NULL, 32554); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001700', '17', '1', '00-06', '巴士四公司', '3', '2023-08', 2767, '2023-11-09 14:36:08.60549', NULL, 32555); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001800', '18', '1', '00-06', '巴士四公司', '3', '2023-08', 3413, '2023-11-09 14:36:08.60549', NULL, 32556); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001900', '19', '1', '00-01', '巴士一公司', '3', '2023-08', 3358, '2023-11-09 14:36:08.60549', NULL, 32557); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002000', '20', '1', '00-01', '巴士一公司', '3', '2023-08', 6575, '2023-11-09 14:36:08.60549', NULL, 32558); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002100', '21', '1', '00-01', '巴士一公司', '3', '2023-08', 9073, '2023-11-09 14:36:08.60549', NULL, 32559); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002200', '22', '1', '00-01', '巴士一公司', '3', '2023-08', 3063, '2023-11-09 14:36:08.60549', NULL, 32560); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002300', '23', '1', '00-01', '巴士一公司', '3', '2023-08', 4126, '2023-11-09 14:36:08.60549', NULL, 32561); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002400', '24', '1', '00-01', '巴士一公司', '3', '2023-08', 4168, '2023-11-09 14:36:08.60549', NULL, 32562); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002500', '25', '1', '00-01', '巴士一公司', '3', '2023-08', 7407, '2023-11-09 14:36:08.60549', NULL, 32563); + + + +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '蓝村路南泉路', 1, '2023-08-25', 131, '2023-11-09 14:35:58.795016', NULL, 127361); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦建路东方路', 2, '2023-08-25', 94, '2023-11-09 14:35:58.807329', NULL, 127362); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路宁阳路', 3, '2023-08-25', 142, '2023-11-09 14:35:58.807329', NULL, 127363); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路浦电路', 4, '2023-08-25', 321, '2023-11-09 14:35:58.807329', NULL, 127364); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路商城路', 5, '2023-08-25', 101, '2023-11-09 14:35:58.807329', NULL, 127365); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路浦东大道', 6, '2023-08-25', 87, '2023-11-09 14:35:58.807329', NULL, 127366); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安东路浙江中路', 7, '2023-08-25', 140, '2023-11-09 14:35:58.807329', NULL, 127367); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安中路石门一路', 8, '2023-08-25', 47, '2023-11-09 14:35:58.807329', NULL, 127368); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安中路陕西北路', 9, '2023-08-25', 81, '2023-11-09 14:35:58.807329', NULL, 127369); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安西路华山路', 10, '2023-08-25', 81, '2023-11-09 14:35:58.807329', NULL, 127370); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安西路镇宁路', 11, '2023-08-25', 50, '2023-11-09 14:35:58.807329', NULL, 127371); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '江苏路延安西路', 12, '2023-08-25', 80, '2023-11-09 14:35:58.807329', NULL, 127372); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '江苏路愚园路', 13, '2023-08-25', 32, '2023-11-09 14:35:58.807329', NULL, 127373); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路谈家渡路', 14, '2023-08-25', 22, '2023-11-09 14:35:58.807329', NULL, 127374); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路白玉路', 15, '2023-08-25', 29, '2023-11-09 14:35:58.807329', NULL, 127375); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路南石路', 16, '2023-08-25', 7, '2023-11-09 14:35:58.807329', NULL, 127376); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路铜川路', 17, '2023-08-25', 6, '2023-11-09 14:35:58.807329', NULL, 127377); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路芝川路', 18, '2023-08-25', 1, '2023-11-09 14:35:58.807329', NULL, 127378); + + + +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 13, '2023-08-25', 7, '2023-11-09 14:36:01.034693', NULL, 1538323); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 14, '2023-08-25', 5, '2023-11-09 14:36:01.034693', NULL, 1538324); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 15, '2023-08-25', 17, '2023-11-09 14:36:01.034693', NULL, 1538325); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 16, '2023-08-25', 16, '2023-11-09 14:36:01.034693', NULL, 1538326); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 17, '2023-08-25', 10, '2023-11-09 14:36:01.034693', NULL, 1538327); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 18, '2023-08-25', 5, '2023-11-09 14:36:01.034693', NULL, 1538328); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 19, '2023-08-25', 2, '2023-11-09 14:36:01.034693', NULL, 1538329); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 20, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538330); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 22, '2023-08-25', 3, '2023-11-09 14:36:01.034693', NULL, 1538331); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 4, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538332); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 5, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538333); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 6, '2023-08-25', 21, '2023-11-09 14:36:01.034693', NULL, 1538334); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 7, '2023-08-25', 16, '2023-11-09 14:36:01.034693', NULL, 1538335); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 8, '2023-08-25', 16, '2023-11-09 14:36:01.034693', NULL, 1538336); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 9, '2023-08-25', 11, '2023-11-09 14:36:01.034693', NULL, 1538337); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 10, '2023-08-25', 11, '2023-11-09 14:36:01.034693', NULL, 1538338); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 11, '2023-08-25', 3, '2023-11-09 14:36:01.034693', NULL, 1538339); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 12, '2023-08-25', 7, '2023-11-09 14:36:01.034693', NULL, 1538340); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 13, '2023-08-25', 9, '2023-11-09 14:36:01.034693', NULL, 1538341); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 14, '2023-08-25', 11, '2023-11-09 14:36:01.034693', NULL, 1538342); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 15, '2023-08-25', 4, '2023-11-09 14:36:01.034693', NULL, 1538343); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 16, '2023-08-25', 6, '2023-11-09 14:36:01.034693', NULL, 1538344); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 17, '2023-08-25', 6, '2023-11-09 14:36:01.034693', NULL, 1538345); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 18, '2023-08-25', 8, '2023-11-09 14:36:01.034693', NULL, 1538346); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 19, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538347); + + +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 7, '延安东路浙江中路', '2023-08', 140, '2023-11-09 14:35:43.522737', NULL, 109168); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 8, '延安中路石门一路', '2023-08', 47, '2023-11-09 14:35:43.526955', NULL, 109169); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 9, '延安中路陕西北路', '2023-08', 81, '2023-11-09 14:35:43.526955', NULL, 109170); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 10, '延安西路华山路', '2023-08', 81, '2023-11-09 14:35:43.526955', NULL, 109171); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 11, '延安西路镇宁路', '2023-08', 50, '2023-11-09 14:35:43.526955', NULL, 109172); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 16, '曹杨路南石路', '2023-08', 7, '2023-11-09 14:35:43.526955', NULL, 109173); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 15, '曹杨路白玉路', '2023-08', 29, '2023-11-09 14:35:43.526955', NULL, 109174); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 18, '曹杨路芝川路', '2023-08', 1, '2023-11-09 14:35:43.526955', NULL, 109175); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 14, '曹杨路谈家渡路', '2023-08', 22, '2023-11-09 14:35:43.526955', NULL, 109176); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 17, '曹杨路铜川路', '2023-08', 6, '2023-11-09 14:35:43.526955', NULL, 109177); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 12, '江苏路延安西路', '2023-08', 80, '2023-11-09 14:35:43.526955', NULL, 109178); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 13, '江苏路愚园路', '2023-08', 32, '2023-11-09 14:35:43.526955', NULL, 109179); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 5, '浦东南路商城路', '2023-08', 101, '2023-11-09 14:35:43.526955', NULL, 109180); + + + +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '公交换公交', '2023-08-25', 23, '2023-11-09 14:35:32.240675', NULL, '蓝村路南泉路', 294934); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '地铁换公交', '2023-08-25', 9, '2023-11-09 14:35:32.255085', NULL, '蓝村路南泉路', 294935); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '非换乘', '2023-08-25', 99, '2023-11-09 14:35:32.255085', NULL, '蓝村路南泉路', 294936); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '公交换公交', '2023-08-25', 42, '2023-11-09 14:35:32.255085', NULL, '浦建路东方路', 294937); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '地铁换公交', '2023-08-25', 4, '2023-11-09 14:35:32.255085', NULL, '浦建路东方路', 294938); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '非换乘', '2023-08-25', 48, '2023-11-09 14:35:32.255085', NULL, '浦建路东方路', 294939); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '公交换公交', '2023-08-25', 13, '2023-11-09 14:35:32.255085', NULL, '浦东南路宁阳路', 294940); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '地铁换公交', '2023-08-25', 9, '2023-11-09 14:35:32.255085', NULL, '浦东南路宁阳路', 294941); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '非换乘', '2023-08-25', 120, '2023-11-09 14:35:32.255085', NULL, '浦东南路宁阳路', 294942); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '公交换公交', '2023-08-25', 29, '2023-11-09 14:35:32.255085', NULL, '浦东南路浦电路', 294943); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '地铁换公交', '2023-08-25', 2, '2023-11-09 14:35:32.255085', NULL, '浦东南路浦电路', 294944); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '非换乘', '2023-08-25', 290, '2023-11-09 14:35:32.255085', NULL, '浦东南路浦电路', 294945); + +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '公交换公交', 10, '2023-08-25', 1, '2023-11-09 14:35:46.061181', NULL, '上海西站', 2250944); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '公交换公交', 13, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250945); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '地铁换公交', 7, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250946); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '地铁换公交', 11, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250947); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '地铁换公交', 15, '2023-08-25', 1, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250948); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 5, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250949); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 6, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250950); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 7, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250951); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 8, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250952); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 9, '2023-08-25', 7, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250953); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 11, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250954); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 12, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250955); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 13, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250956); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 14, '2023-08-25', 5, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250957); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 15, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250958); + + + +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '公交换公交', '2023-08', 37, '2023-11-09 14:35:42.054173', NULL, '延安东路浙江中路', 252802); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:42.059253', NULL, '延安东路浙江中路', 252803); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '非换乘', '2023-08', 101, '2023-11-09 14:35:42.059253', NULL, '延安东路浙江中路', 252804); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '公交换公交', '2023-08', 14, '2023-11-09 14:35:42.059253', NULL, '延安中路石门一路', 252805); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '地铁换公交', '2023-08', 6, '2023-11-09 14:35:42.059253', NULL, '延安中路石门一路', 252806); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '非换乘', '2023-08', 27, '2023-11-09 14:35:42.059253', NULL, '延安中路石门一路', 252807); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '公交换公交', '2023-08', 12, '2023-11-09 14:35:42.059253', NULL, '延安中路陕西北路', 252808); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:42.059253', NULL, '延安中路陕西北路', 252809); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '非换乘', '2023-08', 67, '2023-11-09 14:35:42.059253', NULL, '延安中路陕西北路', 252810); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '公交换公交', '2023-08', 16, '2023-11-09 14:35:42.059253', NULL, '延安西路华山路', 252811); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '地铁换公交', '2023-08', 14, '2023-11-09 14:35:42.059253', NULL, '延安西路华山路', 252812); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '非换乘', '2023-08', 51, '2023-11-09 14:35:42.059253', NULL, '延安西路华山路', 252813); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '公交换公交', '2023-08', 12, '2023-11-09 14:35:42.059253', NULL, '延安西路镇宁路', 252814); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:42.059253', NULL, '延安西路镇宁路', 252815); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '非换乘', '2023-08', 36, '2023-11-09 14:35:42.059253', NULL, '延安西路镇宁路', 252816); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 16, '公交换公交', '2023-08', 4, '2023-11-09 14:35:42.059253', NULL, '曹杨路南石路', 252817); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 16, '地铁换公交', '2023-08', 1, '2023-11-09 14:35:42.059253', NULL, '曹杨路南石路', 252818); + + +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '03-06218', NULL, '蓝村路南泉路', '2023-08-25 07:15:00', '上海西站', '2023-08-25 08:26:37', '全程', '2023-08-25', 28, '2023-11-09 14:35:35.145978', NULL, 1437139); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '03-06218', NULL, '蓝村路南泉路', '2023-08-25 10:30:00', '上海西站', '2023-08-25 11:51:13', '全程', '2023-08-25', 15, '2023-11-09 14:35:35.164175', NULL, 1437140); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '03-06218', NULL, '上海西站', '2023-08-25 05:50:00', '蓝村路南泉路', '2023-08-25 06:46:55', '全程', '2023-08-25', 13, '2023-11-09 14:35:35.164175', NULL, 1437141); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '03-06218', NULL, '上海西站', '2023-08-25 08:45:00', '蓝村路南泉路', '2023-08-25 10:13:24', '全程', '2023-08-25', 25, '2023-11-09 14:35:35.164175', NULL, 1437142); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '04-07182', NULL, '蓝村路南泉路', '2023-08-25 17:40:00', '上海西站', '2023-08-25 19:21:04', '全程', '2023-08-25', 26, '2023-11-09 14:35:35.164175', NULL, 1437143); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '04-07182', NULL, '蓝村路南泉路', '2023-08-25 21:20:00', '上海西站', '2023-08-25 22:37:49', '全程', '2023-08-25', 9, '2023-11-09 14:35:35.164175', NULL, 1437144); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '04-07182', NULL, '上海西站', '2023-08-25 16:05:00', '蓝村路南泉路', '2023-08-25 17:20:40', '全程', '2023-08-25', 20, '2023-11-09 14:35:35.164175', NULL, 1437145); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '04-07182', NULL, '上海西站', '2023-08-25 19:50:00', '蓝村路南泉路', '2023-08-25 20:57:31', '全程', '2023-08-25', 24, '2023-11-09 14:35:35.164175', NULL, 1437146); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 07:30:00', '上海西站', '2023-08-25 08:51:40', '全程', '2023-08-25', 20, '2023-11-09 14:35:35.164175', NULL, 1437147); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 10:45:00', '上海西站', '2023-08-25 12:01:25', '全程', '2023-08-25', 15, '2023-11-09 14:35:35.164175', NULL, 1437148); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 14:00:00', '上海西站', '2023-08-25 15:29:52', '全程', '2023-08-25', 20, '2023-11-09 14:35:35.164175', NULL, 1437149); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 17:25:00', '上海西站', '2023-08-25 19:07:08', '全程', '2023-08-25', 21, '2023-11-09 14:35:35.164175', NULL, 1437150); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-03041D', '03-06097', NULL, '上海西站', '2023-08-25 06:10:00', '蓝村路南泉路', '2023-08-25 07:09:14', '全程', '2023-08-25', 16, '2023-11-09 14:35:35.164175', NULL, 1437151); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-03041D', '03-06097', NULL, '上海西站', '2023-08-25 09:00:00', '蓝村路南泉路', '2023-08-25 10:34:11', '全程', '2023-08-25', 45, '2023-11-09 14:35:35.164175', NULL, 1437152); + + + +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '1', '2023-08-25', 100, '2023-11-09 14:35:38.718145', NULL, '01', 138930); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '1', '2023-08-25', 66, '2023-11-09 14:35:38.736796', NULL, '01', 138931); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '1', '2023-08-25', 99, '2023-11-09 14:35:38.736796', NULL, '01', 138932); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '1', '2023-08-25', 273, '2023-11-09 14:35:38.736796', NULL, '01', 138933); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '1', '2023-08-25', 77, '2023-11-09 14:35:38.736796', NULL, '01', 138934); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 6, '1', '2023-08-25', 73, '2023-11-09 14:35:38.736796', NULL, '01', 138935); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '1', '2023-08-25', 80, '2023-11-09 14:35:38.736796', NULL, '01', 138936); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '1', '2023-08-25', 27, '2023-11-09 14:35:38.736796', NULL, '01', 138937); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '1', '2023-08-25', 50, '2023-11-09 14:35:38.736796', NULL, '01', 138938); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '1', '2023-08-25', 45, '2023-11-09 14:35:38.736796', NULL, '01', 138939); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '1', '2023-08-25', 33, '2023-11-09 14:35:38.736796', NULL, '01', 138940); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 12, '1', '2023-08-25', 60, '2023-11-09 14:35:38.736796', NULL, '01', 138941); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 13, '1', '2023-08-25', 22, '2023-11-09 14:35:38.736796', NULL, '01', 138942); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 14, '1', '2023-08-25', 15, '2023-11-09 14:35:38.736796', NULL, '01', 138943); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 15, '1', '2023-08-25', 20, '2023-11-09 14:35:38.736796', NULL, '01', 138944); + + + + +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '1', '2023-08', 100, '2023-11-09 14:35:39.89496', NULL, '01', 282029); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '1', '2023-08', 66, '2023-11-09 14:35:39.900578', NULL, '01', 282030); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '1', '2023-08', 99, '2023-11-09 14:35:39.900578', NULL, '01', 282031); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '1', '2023-08', 273, '2023-11-09 14:35:39.900578', NULL, '01', 282032); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '1', '2023-08', 77, '2023-11-09 14:35:39.900578', NULL, '01', 282033); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 6, '1', '2023-08', 73, '2023-11-09 14:35:39.900578', NULL, '01', 282034); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '1', '2023-08', 80, '2023-11-09 14:35:39.900578', NULL, '01', 282035); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '1', '2023-08', 27, '2023-11-09 14:35:39.900578', NULL, '01', 282036); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '1', '2023-08', 50, '2023-11-09 14:35:39.900578', NULL, '01', 282037); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '1', '2023-08', 45, '2023-11-09 14:35:39.900578', NULL, '01', 282038); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '1', '2023-08', 33, '2023-11-09 14:35:39.900578', NULL, '01', 282039); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 12, '1', '2023-08', 60, '2023-11-09 14:35:39.900578', NULL, '01', 282040); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 13, '1', '2023-08', 22, '2023-11-09 14:35:39.900578', NULL, '01', 282041); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 14, '1', '2023-08', 15, '2023-11-09 14:35:39.900578', NULL, '01', 282042); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 15, '1', '2023-08', 20, '2023-11-09 14:35:39.900578', NULL, '01', 282043); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 16, '1', '2023-08', 4, '2023-11-09 14:35:39.900578', NULL, '01', 282044); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 17, '1', '2023-08', 2, '2023-11-09 14:35:39.900578', NULL, '01', 282045); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '1', '2023-08', 36, '2023-11-09 14:35:39.900578', NULL, '01', 282046); + + + + + +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '公交换公交', '2023-08-25', 20, '2023-11-09 14:35:40.46062', NULL, '蓝村路南泉路', 717077); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '地铁换公交', '2023-08-25', 6, '2023-11-09 14:35:40.471864', NULL, '蓝村路南泉路', 717078); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '非换乘', '2023-08-25', 74, '2023-11-09 14:35:40.471864', NULL, '蓝村路南泉路', 717079); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '公交换公交', '2023-08-25', 32, '2023-11-09 14:35:40.471864', NULL, '浦建路东方路', 717080); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '地铁换公交', '2023-08-25', 2, '2023-11-09 14:35:40.471864', NULL, '浦建路东方路', 717081); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '非换乘', '2023-08-25', 32, '2023-11-09 14:35:40.471864', NULL, '浦建路东方路', 717082); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '公交换公交', '2023-08-25', 12, '2023-11-09 14:35:40.471864', NULL, '浦东南路宁阳路', 717083); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '地铁换公交', '2023-08-25', 5, '2023-11-09 14:35:40.471864', NULL, '浦东南路宁阳路', 717084); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '非换乘', '2023-08-25', 82, '2023-11-09 14:35:40.471864', NULL, '浦东南路宁阳路', 717085); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '公交换公交', '2023-08-25', 26, '2023-11-09 14:35:40.471864', NULL, '浦东南路浦电路', 717086); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '地铁换公交', '2023-08-25', 1, '2023-11-09 14:35:40.471864', NULL, '浦东南路浦电路', 717087); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '非换乘', '2023-08-25', 246, '2023-11-09 14:35:40.471864', NULL, '浦东南路浦电路', 717088); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '公交换公交', '2023-08-25', 30, '2023-11-09 14:35:40.471864', NULL, '浦东南路商城路', 717089); + + +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '非换乘', '2023-08', 74, '2023-11-09 14:35:44.124418', NULL, '蓝村路南泉路', 438220); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '公交换公交', '2023-08', 32, '2023-11-09 14:35:44.124418', NULL, '浦建路东方路', 438221); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:44.124418', NULL, '浦建路东方路', 438222); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '非换乘', '2023-08', 32, '2023-11-09 14:35:44.124418', NULL, '浦建路东方路', 438223); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '公交换公交', '2023-08', 12, '2023-11-09 14:35:44.124418', NULL, '浦东南路宁阳路', 438224); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '地铁换公交', '2023-08', 5, '2023-11-09 14:35:44.124418', NULL, '浦东南路宁阳路', 438225); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '非换乘', '2023-08', 82, '2023-11-09 14:35:44.124418', NULL, '浦东南路宁阳路', 438226); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '公交换公交', '2023-08', 26, '2023-11-09 14:35:44.124418', NULL, '浦东南路浦电路', 438227); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '地铁换公交', '2023-08', 1, '2023-11-09 14:35:44.124418', NULL, '浦东南路浦电路', 438228); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '非换乘', '2023-08', 246, '2023-11-09 14:35:44.124418', NULL, '浦东南路浦电路', 438229); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '公交换公交', '2023-08', 30, '2023-11-09 14:35:44.124418', NULL, '浦东南路商城路', 438230); + + +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (283, '/home/flink/dws-file/2023-08/dws_line_metric_month.zip', 'lineMonth', 503, '2023-11-09 14:36:08.885782', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (282, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_metric_hour.zip', 'lineHour', 8397, '2023-11-09 14:36:08.871764', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (281, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_metric_hour.zip', 'stationHour', 202677, '2023-11-09 14:36:08.83232', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (280, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_metric_day.zip', 'stationDay', 18193, '2023-11-09 14:35:59.25371', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (279, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_trans_hour.zip', 'stationTransHour', 321562, '2023-11-09 14:35:59.125862', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (278, '/home/flink/dws-file/2023-08/dws_station_freq_trans_month.zip', 'stationFreqTransMonth', 39837, '2023-11-09 14:35:44.390421', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (277, '/home/flink/dws-file/2023-08/dws_line_station_metric_month.zip', 'stationMonth', 18193, '2023-11-09 14:35:43.650689', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (276, '/home/flink/dws-file/2023-08/dws_line_station_trans_month.zip', 'stationTrnasMonth', 42132, '2023-11-09 14:35:42.377092', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (275, '/home/flink/dws-file/2023-08/2023-08-25/dws_station_freq_trans_day.zip', 'stationFreqTransDay', 39837, '2023-11-09 14:35:40.781475', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (274, '/home/flink/dws-file/2023-08/dws_station_freq_metric_month.zip', 'stationFreqMonth', 17365, '2023-11-09 14:35:40.017231', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (273, '/home/flink/dws-file/2023-08/2023-08-25/dws_station_freq_metric_day.zip', 'stationFreqDay', 17365, '2023-11-09 14:35:39.388497', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (272, '/home/flink/dws-file/2023-08/2023-08-25/dws_route_metric_day.zip', 'routeMetricDay', 57797, '2023-11-09 14:35:38.084658', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (271, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_trans_day.zip', 'stationTransDay', 42132, '2023-11-09 14:35:32.735624', '2023-08-25', '99'); + + + +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (386, 0, '666c0a65a6', 'e5718445179640a391be03548a7568c5', 'ruoyi-ui.zip', 'zip', '1543323', 'portal-2023-12', 'python', 'user', 'portal', '222', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 18:10:59', '1', '门户管理员', '2023-12-05 18:10:59'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (385, 0, 'dc4cfca8bc', 'b665724877e045a7b8d648c1a62d3988', 'agilebpm-ui.zip', 'zip', '14176772', 'portal-2023-12', 'python', 'user', 'portal', '111111', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 18:04:31', '1', '门户管理员', '2023-12-05 18:04:31'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (384, 0, '43c302a468', '8432fb2de08145868033eaa5de9d4e45', 'agilebpm-ui.zip', 'zip', '14176772', 'portal-2023-12', 'python', 'user', 'portal', '111111', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 18:04:11', '1', '门户管理员', '2023-12-05 18:04:11'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (383, 0, 'b47baf8421', '2202c93a48204219a3d1bfdd9f310689', 'agilebpm-ui.zip', 'zip', '14176772', 'portal-2023-12', 'python', 'user', 'portal', '111111', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 17:53:53', '1', '门户管理员', '2023-12-05 17:53:53'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (382, 0, 'e544b44ad1', '2f819636a2f34668a6558c9a2a445729', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:47:51', '100025', 'test88', '2023-12-05 14:47:51'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (381, 0, '229fddc9de', '6d94ef12d1a44d90a4e922f5d7cee99b', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:46:28', '100025', 'test88', '2023-12-05 14:46:28'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (380, 0, '89c827a40d', '1b99378246384e1a8410c7e0609220f7', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:31:41', '100025', 'test88', '2023-12-05 14:31:41'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (379, 0, '0095817244', '42e30ccf75894b7aa4d018bee14d2031', 'wallhaven-gp9d27.jpg', 'jpg', '13953884', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:20:21', '100025', 'test88', '2023-12-05 14:20:21'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (378, 0, '8506a3ba37', 'b3ba900787164394816182ad4575b047', 'wallhaven-gp9d27.jpg', 'jpg', '13953884', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:20:06', '100025', 'test88', '2023-12-05 14:20:06'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (377, 0, '1390b20e9f', 'fb02f11c1f1348caae73deea218a57c4', 'wallhaven-gp9d27.jpg', 'jpg', '13953884', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:16:33', '100025', 'test88', '2023-12-05 14:16:33'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (376, 0, '80dc44181c', '54f27f6f92cc4e1bb54d7c382e513eab', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:16:15', '100025', 'test88', '2023-12-05 14:16:15'); + + + +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (39, 0, '1', 'SQL工作台审批', 'sql_console_data_approve', 'SQL工作台审批', '您的SQL工作台数据申请{{applyNo}}已审批{{isPasss}},请登录久事大数据开放平台(管理系统)管理查看。', '22', '1', 'phone', '00', '1', '管理员', '2023-11-16 19:57:07', '1', '管理员', '2023-11-16 19:57:07'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (38, 0, '1', '实验室注入申请', 'docker_upload_review_sys', '实验室注入申请', '尊敬的用户您好,您的上传申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '21', '1', 'sys', '99', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (37, 0, '1', '实验室注入申请', 'docker_upload_review_phone', '实验室注入申请', '尊敬的用户您好,您的上传申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '21', '1', 'phone', '00', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (36, 0, '1', '实验室下载申请', 'docker_download_review_sys', '实验室下载申请', '尊敬的用户您好,您的下载申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '7', '1', 'sys', '99', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (35, 0, '1', '实验室下载申请', 'docker_download_review_phone', '实验室下载申请', '尊敬的用户您好,您的下载申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '7', '1', 'phone', '00', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (34, 0, '1', '实验室重新初始(jupyter)', 'docker_create_new_phone2', '实验室({{labCode}})重新初始化', '您的实验室“{{name}}”已重新初始化,实验室编号:{{labCode}},访问地址{{url}},密码:{{password}},如有疑问请拨打联系电话:(021-60825678)。', '6', '1', 'phone', '00', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); + + + +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (151, 'qOODy/Ov5qmQEq5PBdI4hg==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:11:42', '1', '管理员', '2023-12-04 15:11:42'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (150, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:11:39', '1', '管理员', '2023-12-04 15:11:39'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (149, 'qOODy/Ov5qmQEq5PBdI4hg==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:09:43', '1', '管理员', '2023-12-04 15:09:43'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (148, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:08:59', '1', '管理员', '2023-12-04 15:08:59'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (147, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIRszlQBp2eG2FKGjj/a7P89U7uIKsdzfO1KRGSpvhtHPp8KWMQA3cqOLVBb0ZeNXWG6UzE0ZGgvetUp2bz1ZzftMIOwdQhKT5YHRYxRuCdPYmlu114tQ7v1nwgRjckkB', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:08:30', '1', '管理员', '2023-12-04 15:08:30'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (146, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIRszlQBp2eG2FKGjj/a7P89U7uIKsdzfO1KRGSpvhtHPp8KWMQA3cqOLVBb0ZeNXWG6UzE0ZGgvetUp2bz1ZzftMIOwdQhKT5YHRYxRuCdPYmlu114tQ7v1nwgRjckkB', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 14:07:43', '1', '管理员', '2023-12-04 14:07:43'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (145, '5Agvo9GO0V4fkBmZN0bikw==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXXVjzoGqpUluENbIp6b9SdEreiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100025', 'test88', '', 'console', '00', 'system', '系统自动', '2023-12-01 09:10:38', 'system', '系统自动', '2023-12-01 09:10:38'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (144, '5Agvo9GO0V4fkBmZN0bikw==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXXN9EP5WJbQJTVVfJg8zw0WreiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100025', 'test88', '', 'console', '00', 'system', '系统自动', '2023-12-01 09:08:19', 'system', '系统自动', '2023-12-01 09:08:19'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (143, 'cYh/BaXTHMkXNJcb+vw/IA==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXWXx7q31Sla0zMPuUprLinMreiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100018', 'yts', '', 'console', '00', 'system', '系统自动', '2023-12-01 02:14:57', 'system', '系统自动', '2023-12-01 02:14:57'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (142, 'cYh/BaXTHMkXNJcb+vw/IA==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXXaGEaEuvgdsHJgFo6YpK1breiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100018', 'yts', '', 'console', '00', 'system', '系统自动', '2023-11-30 08:22:32', 'system', '系统自动', '2023-11-30 08:22:32'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (141, 'rEQBNNzhQM++IErAo94EIA==', '实验室下载申请', 'DAD/lS346vpJhMuhf39fO/cojSTbEcwwEevHsoPFkUmkNnG68yv6vjAk0dNf/CgsQDmsFHtCZYufm3Tbkd15Hm4TsZZpTNnj4uPOUrzg4OQARLAA3mciqScilZ86v6kCWRGlsSERac2fmmXuFHW4qRzch9UFCYnxa3VCssE12kE=', '7', '0', '1', '门户管理员', '', 'portal', '00', 'system', '系统自动', '2023-11-29 05:50:55', 'system', '系统自动', '2023-11-29 05:50:55'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (140, 'rEQBNNzhQM++IErAo94EIA==', '实验室下载申请', 'DAD/lS346vpJhMuhf39fO/cojSTbEcwwEevHsoPFkUmkNnG68yv6vjAk0dNf/CgsQDmsFHtCZYufm3Tbkd15HhV0vv/JAiJILOEmHOReQEIARLAA3mciqScilZ86v6kCWRGlsSERac2fmmXuFHW4qRzch9UFCYnxa3VCssE12kE=', '7', '0', '1', '门户管理员', '', 'portal', '00', 'system', '系统自动', '2023-11-29 05:49:30', 'system', '系统自动', '2023-11-29 05:49:30'); + + +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (27, '0-2', 1118783, '2023-05-15', '2023-11-07 20:48:13.926173'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (28, '10-12', 4090, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (29, '12-18', 12375, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (30, '18-24', 6544, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (31, '2-4', 1863575, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (32, '24-30', 2335, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (33, '30-36', 199, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (34, '36-42', 502, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (35, '4-6', 137042, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (36, '42-48', 433, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (37, '6-8', 9505, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (38, '8-10', 5154, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (39, '>48', 2759, '2023-05-15', '2023-11-07 20:48:13.92937'); + + +INSERT INTO tbl_qa_pos_match_rate (id, tran_num, match_num, match_rate, txn_date, create_time) VALUES (3, 1448235, 1394078, '0.9626048258742538', '2023-05-15', '2023-11-07 20:48:13.872702'); + + +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (11, '巴士一公司', 94, '2023-05-15', '00-01', '2023-11-07 20:48:13.87403'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (12, '巴士三公司', 104, '2023-05-15', '00-04', '2023-11-07 20:48:13.875728'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (13, '巴士四公司', 81, '2023-05-15', '00-06', '2023-11-07 20:48:13.875728'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (14, '巴士五公司', 139, '2023-05-15', '00-10', '2023-11-07 20:48:13.875728'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (15, '巴士二公司', 102, '2023-05-15', '00-12', '2023-11-07 20:48:13.875728'); + +INSERT INTO tbl_qa_route_miss (id, miss_rate, txn_date, route_count, bus_stop_count, create_time) VALUES (3, '0.008200504646439781', '2023-05-15', 64996, 64463, '2023-11-07 20:48:07.496644'); + +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4843, '000100', '01', '78.15281690140844', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.708146'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4844, '000100', '01', '89.43666666666667', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4845, '000100', '01', '89.02365591397849', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4846, '000400', '04', '48.159114583333334', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4847, '000400', '04', '13.991666666666667', '平峰', '区间', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4848, '000400', '04', '57.29047619047619', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4849, '000400', '04', '20.173333333333336', '早高峰', '区间', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4850, '000400', '04', '56.24722222222223', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4851, '000400', '04', '18.087037037037035', '晚高峰', '区间', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4852, '010000', '100', '41.53394308943089', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4853, '010000', '100', '47.89121212121212', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4854, '010000', '100', '46.65106382978724', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4855, '101400', '1014', '20.574166666666667', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4856, '101400', '1014', '29.976388888888888', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4857, '101400', '1014', '24.87222222222222', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4858, '010200', '102', '11.975', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4859, '010200', '102', '14.034722222222223', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); + + +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195293, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 05:50:00', '2023-05-15 06:48:38', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.355301', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195294, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 08:31:00', '2023-05-15 09:57:46', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195295, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 12:05:00', '2023-05-15 13:15:50', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195296, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 07:05:00', '2023-05-15 08:22:04', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195297, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 10:10:00', '2023-05-15 11:29:57', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195298, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 13:30:00', '2023-05-15 15:03:42', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195299, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 15:35:00', '2023-05-15 16:52:58', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195300, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 19:30:00', '2023-05-15 20:37:33', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195301, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 22:30:00', '2023-05-15 23:28:33', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195302, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 17:06:00', '2023-05-15 18:33:44', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195303, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 21:00:00', '2023-05-15 22:15:16', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195304, '000100', '01', '沪A-03041D', '03-06561', '2023-05-15 07:00:00', '2023-05-15 08:47:40', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); + + +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (6, '00-01', '巴士一公司', 1420, '2023-05-15', '2023-11-07 20:48:06.009578'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (7, '00-04', '巴士三公司', 1495, '2023-05-15', '2023-11-07 20:48:06.011452'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (8, '00-06', '巴士四公司', 1210, '2023-05-15', '2023-11-07 20:48:06.011452'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (9, '00-10', '巴士五公司', 1602, '2023-05-15', '2023-11-07 20:48:06.011452'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (10, '00-12', '巴士二公司', 1341, '2023-05-15', '2023-11-07 20:48:06.011452'); + + + +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (18, 0, '1', 'test', '12345678', NULL, NULL, '02', '/sftpdata/test', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 13:57:06.91938', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (19, 0, '1', 'hello', '12345678', NULL, NULL, '01', '/sftpdata/hello', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 14:45:01.742521', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (20, 0, '1', 'read', '12345678', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:03:50.274712', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (22, 0, '1', 'bb', '12345678', NULL, NULL, '775', '/data/sftp/bb', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:27:29.371303', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (21, 0, '1', 'read', '12345678', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:22:26.26842', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (24, 0, '1', 'write', '12345678', NULL, NULL, '777', '/data/sftp/write', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 17:56:52.374945', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (23, 0, '1', 'read', '12345678', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:56:12.959005', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (25, 0, '1', 'read', '123', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:43:50.353176', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (26, 0, '1', 'read', '123', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 18:56:44.417817', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (28, 0, '1', 'jiuyv', '12345678', NULL, NULL, '775', '/data/sftp/jiuyv', NULL, NULL, '99', 'yts', 'yts', '2023-07-18 11:03:40.55482', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (27, 0, '1', 'hello', '123', NULL, NULL, '775', '/data/sftp/hello', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 19:32:02.004178', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (29, 0, '1', 'sftp', '123rrr', NULL, NULL, '775', '/data/sftp/sftp', NULL, NULL, '00', 'admin1', 'admin1', '2023-11-02 17:28:03.582541', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (30, 0, '1', 'test', '123456', NULL, NULL, '755', '/data/sftp/test', NULL, NULL, '00', 'admin', 'admin', '2023-11-21 19:24:08.877314', NULL, NULL, '2023-11-21 19:24:08.877314', NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (31, 0, '1', 'test66', '123456', NULL, NULL, '755', '/data/sftp/test66', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:09:25.692241', NULL, NULL, '2023-12-05 16:09:25.692241', NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (32, 0, '1', 'test88', '123456', NULL, NULL, '757', '/data/sftp/test88', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 18:15:25.430912', NULL, NULL, '2023-12-05 18:15:25.430912', NULL, NULL, NULL); + + +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (14, 0, '1', 19, 'cc.png', '/sftpdata/hello/hh/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 14:45:19.866959', NULL, NULL, NULL, 'hello'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (16, 0, '1', 23, 'cc.png', '/data/sftp/read/home/dd/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:09:23.214017', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (15, 0, '1', 23, 'cc.png', '/data/sftp/read/home/null/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:07:41.523635', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (17, 0, '1', 25, 'cc.png', '/data/sftp/read/home/dd/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:55:50.26498', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (18, 0, '1', 26, 'cc.png', '/data/sftp/read/home/dd/cc.png', '102272', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 18:57:59.497132', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (19, 0, '1', 26, 'cc.png', '/data/sftp/read/home/rr/cc.png', '102272', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 18:58:59.207031', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (27, 0, '1', 27, '微信图片_20230625154831.jpg', '/data/sftp/hello/home/xx/微信图片_20230625154831.jpg', '3547204', NULL, NULL, '99', 'yts', 'yts', '2023-07-18 11:07:01.308433', NULL, NULL, NULL, 'hello'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (22, 0, '1', 26, 'cc.png', '/data/sftp/read/home/null/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 19:03:14.428', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (28, 0, '1', 29, 'user_1698912763162.xlsx', '/data/sftp/sftp/home//ss/user_1698912763162.xlsx', '4343', NULL, NULL, '00', 'admin1', 'admin1', '2023-11-02 17:28:19.715902', NULL, NULL, NULL, 'sftp'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (29, 0, '1', 31, 'wallhaven-3z98pd.jpg', '/data/sftp/test66/home\test\wallhaven-3z98pd.jpg', '3599349', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:10:53.784304', NULL, NULL, '2023-12-05 16:10:53.784304', 'test66'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (30, 0, '1', 31, 'wallhaven-9d89zw.jpg', '/data/sftp/test66/home\null\wallhaven-9d89zw.jpg', '983802', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:18:31.126612', NULL, NULL, '2023-12-05 16:18:31.126612', 'test66'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (31, 0, '1', 31, 'wallhaven-gp7ee3.jpg', '/data/sftp/test66/home/null/wallhaven-gp7ee3.jpg', '4475534', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:26:27.648833', NULL, NULL, '2023-12-05 16:26:27.648833', 'test66'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (32, 0, '1', 31, 'wallhaven-qz3wel.png', '/data/sftp/test66/home/null/wallhaven-qz3wel.png', '16215458', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:30:31.37368', NULL, NULL, '2023-12-05 16:30:31.37368', 'test66'); + + + +INSERT INTO tbl_sys_config (config_id, version_num, rec_token, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) VALUES (1, 2, '82ebfa177a', '主框架页-默认皮肤样式名称', 'sys.index.skinName', 'skin-green', 'Y', 'admin', '2023-04-04 13:29:12', '1', '2023-07-03 13:22:00', '蓝色 skin-blue、绿色 skin-green、紫色 skin-purple、红色 skin-red、黄色 skin-yellow'); +INSERT INTO tbl_sys_config (config_id, version_num, rec_token, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) VALUES (3, 2, 'f22e8adc54', '主框架页-侧边栏主题', 'sys.index.sideTheme', 'theme-dark', 'Y', 'admin', '2023-04-04 13:29:12', '1', '2023-07-03 13:22:37', '深色主题theme-dark,浅色主题theme-light'); +INSERT INTO tbl_sys_config (config_id, version_num, rec_token, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) VALUES (2, 2, '9b3a4eef03', '用户管理-账号初始密码', 'sys.user.initPassword', '123456', 'Y', 'admin', '2023-04-04 13:29:12', '1', '2023-11-17 11:21:10', ''); + + +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (3, 0, '1', 1, '0,1', '交通卡运营部', 3, NULL, NULL, NULL, '0', '0', '1', '2023-06-27 09:43:10', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (5, 0, '1', 1, '0,1', 'dss ', 2, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 11:22:06', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (4, 1, '80ce31198f', 1, '0,1', '测试部门', 2, NULL, NULL, NULL, '0', '0', '1', '2023-06-27 09:43:48', '1', '2023-06-27 19:01:03'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (6, 0, '1', 1, '0,1', 'ceshi', 4, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 19:04:17', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (7, 0, '1', 1, '0,1', 'ddd', 1, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 19:32:27', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (9, 0, '1', 1, '0,1', 'dsds', 4, NULL, NULL, NULL, '0', '2', '1', '2023-06-28 17:06:58', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (10, 0, '1', 8, '0,1,8', '山东分公司', 1, NULL, NULL, NULL, '0', '2', '1', '2023-07-03 11:21:38', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (8, 1, 'f70e642a0a', 1, '0,1', '测试发发发', 4, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 19:43:24', '1', '2023-07-03 11:21:29'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (12, 0, '1', 11, '0,1,11', 'tetstsss', 1, NULL, NULL, NULL, '0', '2', '1', '2023-07-06 20:14:51', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (11, 1, '964eafd0b6', 1, '0,1', 'testbumen', 1, NULL, NULL, NULL, '0', '2', '1', '2023-07-06 20:14:31', '1', '2023-07-06 20:14:41'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (2, 0, '1', 1, '0,1', '上海总公司', 1, '', '', '', '0', '0', '1', '2023-04-04 13:29:06', '1', '2023-04-04 09:56:56'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (1, 3, '1', 0, '0', '数据中心', 0, '', '', '', '0', '0', '1', '2023-04-04 13:29:06', '1', NULL); + + + + +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (1, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有4次登录机会', '2023-04-28 11:05:13'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (2, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有3次登录机会', '2023-04-28 11:05:14'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (3, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '验证码错误', '2023-04-28 11:05:16'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (4, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有2次登录机会', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (5, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有1次登录机会', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (6, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '0', '登录成功', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (7, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '0', '登录成功', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (8, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '0', '登录成功', '2023-04-28 11:07:11'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (9, 'afmin', '127.0.0.1', '内网IP', 'Chrome 10', 'Windows 10', '1', '账户或密码错误', '2023-04-28 13:08:45'); + + +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3272, 0, '1', '用户实验室-数据注入', 3133, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:addlib', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3280, 0, '1', '导出', 3252, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:centimeDelay:export', NULL, '1', '2023-11-17 10:35:46', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3281, 0, '1', '导出', 3253, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:posMatchRate:export', NULL, '1', '2023-11-17 10:36:27', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3282, 0, '1', '导出', 3254, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:routeDailyCount:export', NULL, '1', '2023-11-17 10:37:00', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3283, 0, '1', '导出', 3259, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:vehicleDaily:export', NULL, '1', '2023-11-17 10:37:30', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3284, 0, '1', '导出', 3255, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:routeMiss:export', NULL, '1', '2023-11-17 10:38:06', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3285, 0, '1', '导出', 3256, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:routeTurnover:export', NULL, '1', '2023-11-17 10:38:46', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3286, 0, '1', '导出', 3257, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:stationMiss:export', NULL, '1', '2023-11-17 10:39:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3287, 0, '1', '同步-单表', 3003, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:syncTable', NULL, '1', '2023-11-17 10:50:29', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3273, 2, 'b47789fd2e', '数据产品', 0, 2, 'product', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'build', '100014', '2023-10-31 10:13:23', '1', '2023-11-17 15:30:47', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3006, 6, 'f40f5864c9', 'SQL工作台', 3004, 1, 'sqlconsole', 'dataconsole/sqlconsole/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:sqlconsole:index', 'server', '1', '2023-05-18 14:38:04', '1', '2023-11-21 10:29:00', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3291, 0, '1', '详情', 3276, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:export:detail', NULL, '1', '2023-12-04 15:25:00', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1001, 0, '1', '用户查询', 100, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3038, 10, '2f36953b4e', '我的数据申请', 3004, 2, 'sqlmyapply', 'dataconsole/myapply/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:apply:my:list', 'logininfor', '1', '2023-06-02 17:09:56', '100019', '2023-11-16 17:58:58', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3288, 0, '1', '格式化SQL', 3006, 12, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:format', NULL, '100019', '2023-11-17 13:45:25', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3289, 0, '1', '图形分析', 3006, 13, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:chart', NULL, '1', '2023-11-17 13:50:02', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3292, 0, '1', '获取所有表', 3006, 16, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datatable:allList', NULL, '100025', '2023-12-04 17:20:31', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3274, 0, '1', '客流量指标', 3251, 1, 'metric', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', NULL, 'dashboard', '1', '2023-10-31 10:17:44', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3000, 2, 'b4b1c98ad0', '数据治理', 0, 3, 'datagovern', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'excel', '1', '2023-05-18 13:48:22', '1', '2023-11-17 15:30:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3130, 2, '3df7f54938', '文件管理', 0, 9, 'sftp', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'clipboard', '1', '2023-06-29 19:40:38', '1', '2023-11-17 15:31:38', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3144, 0, '1', '告警对象编辑', 3123, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:edit', NULL, '1', '2023-06-30 13:23:01', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3149, 1, 'dd02dac5c6', '我的数据申请详情', 3038, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:my:detail', NULL, '1', '2023-06-30 13:32:38', '1', '2023-07-07 13:17:33', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3145, 0, '1', '告警对象删除', 3123, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:remove', NULL, '1', '2023-06-30 13:23:23', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3131, 0, '1', 'SFTP用户管理', 3130, 1, 'user', 'sftp/user/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'sftp:user:list', NULL, '1', '2023-06-29 19:41:42', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3176, 1, 'b73896b0f9', 'SFTP用户新增', 3131, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:user:add', NULL, '1', '2023-06-30 13:50:03', '1', '2023-11-17 15:01:59', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3125, 1, '710b163d83', '内容管理', 121, 1, 'content', 'portal/content/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:content:list', 'documentation', '1', '2023-06-25 10:04:28', '100004', '2023-07-17 16:11:57', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3178, 1, '3ecb2da9f4', 'SFTP用户删除', 3131, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:user:remove', NULL, '1', '2023-06-30 13:50:54', '1', '2023-11-17 15:02:07', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3146, 0, '1', 'SQL数据审批详情', 3036, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:detail', NULL, '1', '2023-06-30 13:30:30', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3112, 6, 'b95ffcb6f3', 'sftp文件列表', 121, 3, 'publicFiles', 'publicx/publicFiles/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'publicx:publicFiles:page', 'zip', '1', '2023-06-16 17:55:21', '1', '2023-11-17 15:38:59', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3142, 0, '1', '告警对象详情', 3123, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:query', NULL, '1', '2023-06-30 13:21:57', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3143, 0, '1', '告警对象新增', 3123, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:add', NULL, '1', '2023-06-30 13:22:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3150, 0, '1', 'SQL元数据申请', 3006, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:add', NULL, '1', '2023-06-30 13:33:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3151, 0, '1', '运行SQL', 3006, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:run', NULL, '1', '2023-06-30 13:33:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3152, 0, '1', '停止SQL', 3006, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:stop', NULL, '1', '2023-06-30 13:34:21', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3153, 0, '1', '导出查询结果', 3006, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:export', NULL, '1', '2023-06-30 13:34:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3154, 1, '46cdda1444', '文件列表', 3006, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:list', NULL, '1', '2023-06-30 13:35:40', '1', '2023-06-30 13:35:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3155, 0, '1', '文件详情', 3006, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:detail', NULL, '1', '2023-06-30 13:36:15', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3156, 0, '1', '文件新增', 3006, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:add', NULL, '1', '2023-06-30 13:36:44', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3157, 0, '1', '文件编辑', 3006, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:edit', NULL, '1', '2023-06-30 13:37:15', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3158, 0, '1', '文件删除', 3006, 9, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:remove', NULL, '1', '2023-06-30 13:37:38', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3159, 0, '1', 'SQL解析', 3009, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:parse', NULL, '1', '2023-06-30 13:40:24', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3160, 1, '0cc98d3989', '服务注册', 3009, 9, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:register', NULL, '1', '2023-06-30 13:41:04', '1', '2023-06-30 13:41:19', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3161, 0, '1', '服务测试', 3009, 10, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:check', NULL, '1', '2023-06-30 13:41:42', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3162, 0, '1', '服务下架', 3009, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:down', NULL, '1', '2023-06-30 13:42:12', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3163, 0, '1', '机构详情', 3109, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:detail', NULL, '1', '2023-06-30 13:43:50', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3164, 0, '1', '机构新增', 3109, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:add', NULL, '1', '2023-06-30 13:44:16', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3165, 0, '1', '机构编辑', 3109, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:edit', NULL, '1', '2023-06-30 13:44:39', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3123, 3, '12650dbed9', '告警对象', 121, 7, 'contact', 'system/warning/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:warning:list', 'form', '1', '2023-06-20 16:47:08', '1', '2023-10-31 16:26:28', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3166, 0, '1', '机构删除', 3109, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:remove', NULL, '1', '2023-06-30 13:45:03', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3167, 0, '1', '加盐/加密秘钥', 3109, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:key', NULL, '1', '2023-06-30 13:45:34', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3216, 2, '3c44a6f0bb', '申请管理', 120, 4, 'apply', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'dict', '100006', '2023-07-11 13:31:57', '100013', '2023-10-12 15:07:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3169, 0, '1', '内容详情', 3125, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:query', NULL, '1', '2023-06-30 13:47:05', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3170, 0, '1', '内容新增', 3125, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:add', NULL, '1', '2023-06-30 13:47:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3171, 0, '1', '内容编辑', 3125, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:edit', NULL, '1', '2023-06-30 13:47:47', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3172, 0, '1', '内容删除', 3125, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:remove', NULL, '1', '2023-06-30 13:48:08', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3173, 0, '1', '内容发布', 3125, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:release', NULL, '1', '2023-06-30 13:48:27', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3174, 0, '1', '内容下架', 3125, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:down', NULL, '1', '2023-06-30 13:48:48', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3180, 0, '1', 'SFTP文件新增', 3132, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:file:add', NULL, '1', '2023-06-30 13:51:43', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3181, 0, '1', 'SFTP文件编辑', 3132, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:file:remove', NULL, '1', '2023-06-30 13:52:05', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3182, 0, '1', '元数据层级树', 3020, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:tree', NULL, '1', '2023-06-30 13:58:29', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3183, 0, '1', 'SQL数据审批', 3036, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:apply', NULL, '1', '2023-06-30 14:12:58', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3132, 1, 'cab057f202', 'SFTP文件管理', 3130, 2, 'userFile', 'sftp/userFile/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'sftp:file:list', NULL, '1', '2023-06-29 19:42:32', '1', '2023-06-30 14:21:29', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3185, 1, '24307e7f7a', '元数据-表-下拉框', 3009, 12, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datatable:list', NULL, '1', '2023-07-03 16:58:05', '1', '2023-07-03 17:03:57', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3186, 0, '1', '元数据-字段-下拉框', 3009, 13, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:list', NULL, '1', '2023-07-03 17:04:36', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3276, 3, '58a81c6f6d', '我的导出记录', 3004, 4, 'export', 'dataconsole/export/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:export:page', 'download', '1', '2023-10-31 18:05:45', '100019', '2023-11-16 17:59:36', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3224, 1, '410cf710c7', '数据源下拉框', 3212, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:list', NULL, '1', '2023-07-13 16:39:17', '1', '2023-11-17 11:17:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3236, 1, '8a7f3948f3', '门户用户下拉框', 3109, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:list', NULL, '1', '2023-07-18 10:53:53', '1', '2023-11-17 14:38:51', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3192, 0, '1', '机构启用', 3109, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:run', NULL, '1', '2023-07-03 17:42:02', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3193, 0, '1', '机构停用', 3109, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:stop', NULL, '1', '2023-07-03 17:42:32', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3226, 1, '4514c539ad', '机构授权详情', 3109, 10, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:auth:info', NULL, '1', '2023-07-17 11:05:07', '1', '2023-11-17 14:40:01', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3198, 4, '77bdf04fc8', '资讯管理', 121, 2, 'information', 'portal/content/information', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:content:info:list', 'form', '100004', '2023-07-04 19:55:46', '1', '2023-07-07 13:17:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3199, 0, '1', '资讯详情', 3198, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:query', NULL, '1', '2023-07-07 13:19:26', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3200, 0, '1', '资讯新增', 3198, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:add', NULL, '1', '2023-07-07 13:19:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3201, 0, '1', '资讯编辑', 3198, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:edit', NULL, '1', '2023-07-07 13:20:29', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3202, 0, '1', '资讯删除', 3198, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:remove', NULL, '1', '2023-07-07 13:20:56', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3203, 0, '1', '资讯发布', 3198, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:release', NULL, '1', '2023-07-07 13:21:23', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3204, 0, '1', '资讯下架', 3198, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:down', NULL, '1', '2023-07-07 13:21:45', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3209, 0, '1', '数据源下拉框', 3006, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:list', NULL, '1', '2023-07-07 13:54:56', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3210, 0, '1', '数据源下拉框', 3009, 14, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:list', NULL, '1', '2023-07-07 13:56:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3211, 0, '1', 'API接口列表', 3109, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:list', NULL, '1', '2023-07-07 13:59:08', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3213, 0, '1', '数据源关联表', 3212, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'asset:data:table', NULL, '1', '2023-07-10 16:23:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3214, 0, '1', '关联表详情', 3212, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'asset:data:detail', NULL, '1', '2023-07-10 16:23:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3232, 1, '1fdf2c4334', '机构信息下拉框', 3227, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:list', NULL, '1', '2023-07-17 17:43:23', '1', '2023-11-17 14:43:31', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3277, 0, '1', '下载', 3276, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:export:download', NULL, '1', '2023-10-31 18:08:18', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3215, 1, 'bf1e5dd794', '资源管理', 120, 5, 'resource', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'zip', '100006', '2023-07-11 13:31:33', '1', '2023-07-11 13:55:48', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3184, 0, '1', '实验室创建-发布', 3090, 6, '#', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:release', NULL, '1', '2023-06-30 15:08:59', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3278, 0, '1', '删除', 3276, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:export:delete', NULL, '1', '2023-10-31 18:08:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3220, 1, 'f3418b578c', '数据检索', 3001, 3, 'datasearch', 'metadata/datasearch/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'metadata:datasearch:list', NULL, '1', '2023-07-11 15:18:32', '1', '2023-07-11 15:18:48', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3212, 2, '4938ade025', '基础数据', 3002, 1, 'basedata', 'metadata/assetdata/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'asset:data:list', NULL, '1', '2023-07-07 15:42:18', '1', '2023-07-11 17:46:14', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3208, 1, '259ab10c05', 'SFTP用户下拉框', 3132, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:user:list', NULL, '1', '2023-07-07 13:50:40', '1', '2023-11-17 15:03:21', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3222, 0, '1', '用户实验室-收回', 3133, 10, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:withdraw', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3223, 0, '1', '导出', 3212, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'asset:data:export', NULL, '1', '2023-07-13 13:19:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3225, 0, '1', '机构授权', 3109, 9, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:auth', NULL, '1', '2023-07-17 11:04:41', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3227, 0, '1', '机构配置', 3015, 2, 'orgconfig', 'apimanage/orgconfig/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'org:config:list', NULL, '1', '2023-07-17 15:20:14', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3228, 0, '1', '配置详情', 3227, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org.config:query', NULL, '1', '2023-07-17 17:41:41', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3229, 0, '1', '配置新增', 3227, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org:config:add', NULL, '1', '2023-07-17 17:42:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3230, 0, '1', '配置编辑', 3227, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org:config:edit', NULL, '1', '2023-07-17 17:42:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3231, 0, '1', '配置删除', 3227, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org:config:del', NULL, '1', '2023-07-17 17:42:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3235, 0, '1', '数据源-元数据列表', 3220, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:page', NULL, '1', '2023-07-17 18:08:22', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3234, 1, '6f8e9d9225', '数据源-表列表', 3220, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datatable:page', NULL, '1', '2023-07-17 18:07:44', '1', '2023-07-17 18:08:31', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3238, 0, '1', '部门查询', 100, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:query', NULL, '1', '2023-08-15 15:37:33', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3239, 0, '1', '用户实验室-日志文件', 3133, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:getLogs', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3240, 0, '1', '用户实验室-日志下载', 3133, 12, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:downloadLog', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3242, 0, '1', '获取连接数', 3006, 15, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:connectNum', NULL, '1', '2023-09-13 15:10:26', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3233, 1, '0d08dbf77c', '数据源列表', 3220, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:page', NULL, '1', '2023-07-17 18:07:14', '1', '2023-11-21 09:55:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3290, 0, '1', '基础数据', 3006, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:tree', NULL, '1', '2023-11-21 10:28:22', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (106, 2, '58c05d6b35', '参数设置', 1, 7, 'config', 'system/config/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:config:list', 'edit', '1', '2023-04-04 09:54:39', '1', '2023-11-17 11:20:24', '参数设置菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3250, 4, 'a649716593', '数据质量', 3251, 4, 'dataquality', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'job', '1', '2023-09-26 18:37:46', '1', '2023-10-31 10:16:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3255, 2, '68a0cb0520', '日班次缺数量', 3250, 4, 'routeMiss', 'quality/routeMiss/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:routeMiss:page', NULL, '1', '2023-09-26 18:50:30', '1', '2023-10-31 11:29:06', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3256, 2, 'a4c8ed85d5', '日班次周转时间', 3250, 5, 'routeTurnover', 'quality/routeTurnoverTime/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:routeTurnover:page', NULL, '1', '2023-09-26 18:52:25', '1', '2023-10-31 11:29:14', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3258, 0, '1', '站点缺失率详情', 3257, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:stationMiss:detail', NULL, '1', '2023-09-26 18:54:19', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3269, 4, 'f7165276c0', '站点客流量', 3274, 2, 'stationMetric', 'product/stationMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationMetric:page', NULL, '1', '2023-09-26 19:17:15', '1', '2023-10-31 11:07:13', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3251, 3, 'f29dfe646d', '客流宝', 3273, 5, 'product', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'star', '1', '2023-09-26 18:44:19', '1', '2023-10-31 10:16:46', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3264, 3, '269c86886d', '线路客流量', 3274, 0, 'lineMetric', 'product/lineMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:lineMetric:page', NULL, '1', '2023-09-26 19:07:11', '1', '2023-10-31 11:03:58', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3252, 4, '933dcdaea1', '日结算时间统计', 3250, 1, 'centimeDelay', 'quality/centimeDelay/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:centimeDelay:page', NULL, '1', '2023-09-26 18:46:16', '1', '2023-10-31 11:28:31', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3254, 2, '31fe991e73', '日运营线路条数', 3250, 3, 'routeDailyCount', 'quality/routeDailyCount/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:routeDailyCount:page', NULL, '1', '2023-09-26 18:49:17', '1', '2023-09-26 19:46:33', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3257, 2, '228bf9e71d', '日线路站点数量', 3250, 6, 'stationMiss', 'quality/stationMiss/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:stationMiss:page', NULL, '1', '2023-09-26 18:53:36', '1', '2023-10-31 11:29:28', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3279, 0, '1', '接口文档', 3009, 16, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:word', NULL, '1', '2023-11-03 15:51:37', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3265, 4, '0f9f3d1e33', '班次客流量', 3274, 1, 'routeMetric', 'product/routeMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:routeMetric:page', NULL, '1', '2023-09-26 19:08:50', '1', '2023-11-03 19:53:43', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3253, 2, '0f7b813fec', '日pos匹配数量', 3250, 2, 'posMatchRate', 'quality/posMatchRate/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:posMatchRate:page', NULL, '1', '2023-09-26 18:48:05', '1', '2023-10-31 11:28:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3266, 1, '59adae7cb2', '班次日客流量统计详情', 3265, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'product:routeMetric:detail', NULL, '1', '2023-09-26 19:09:20', '1', '2023-09-27 11:35:46', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3267, 6, 'f4f30d79d0', '站点常客客流量', 3274, 6, 'stationFreqMetric', 'product/stationFreqMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationFreqMetric:page', NULL, '1', '2023-09-26 19:11:28', '1', '2023-11-03 19:54:20', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3268, 8, 'c7380adda3', '站点常乘客换乘客流量', 3274, 7, 'stationFreqTrans', 'product/stationFreqTrans/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationFreqTrans:page', NULL, '1', '2023-09-26 19:14:26', '1', '2023-11-03 19:14:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3259, 4, '10f208f7a9', '日运营车辆数', 3250, 4, 'vehicleDaily', 'quality/vehicleDailyCount/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:vehicleDaily:page', NULL, '1', '2023-09-26 18:55:36', '1', '2023-11-03 17:35:27', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3271, 0, '1', 'API前缀地址', 3009, 15, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:prefix', NULL, '1', '2023-10-10 18:41:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3270, 8, '5af494fc80', '站点换乘客流量', 3274, 5, 'stationTrans', 'product/stationTrans/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationTrans:page', NULL, '1', '2023-09-26 19:36:43', '1', '2023-10-31 11:16:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (100, 0, '1', '用户管理', 1, 1, 'user', 'system/user/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:user:list', 'user', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '用户管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (101, 0, '1', '角色管理', 1, 2, 'role', 'system/role/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:role:list', 'peoples', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '角色管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (102, 0, '1', '菜单管理', 1, 3, 'menu', 'system/menu/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:menu:list', 'tree-table', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '菜单管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (103, 0, '1', '部门管理', 1, 4, 'dept', 'system/dept/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:dept:list', 'tree', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '部门管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (105, 0, '1', '字典管理', 1, 6, 'dict', 'system/dict/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:dict:list', 'dict', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '字典管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (107, 0, '1', '通知公告', 1, 8, 'notice', 'system/notice/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:notice:list', 'message', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '通知公告菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (108, 0, '1', '日志管理', 1, 9, 'log', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'log', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '日志管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (500, 0, '1', '操作日志', 108, 1, 'operlog', 'monitor/operlog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'monitor:operlog:list', 'form', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '操作日志菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (501, 0, '1', '登录日志', 108, 2, 'logininfor', 'monitor/logininfor/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'monitor:logininfor:list', 'logininfor', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '登录日志菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1002, 0, '1', '用户新增', 100, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1003, 0, '1', '用户修改', 100, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1004, 0, '1', '用户删除', 100, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1005, 0, '1', '用户导出', 100, 5, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1006, 0, '1', '用户导入', 100, 6, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:import', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1007, 0, '1', '重置密码', 100, 7, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:resetPwd', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1008, 0, '1', '角色查询', 101, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1009, 0, '1', '角色新增', 101, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1010, 0, '1', '角色修改', 101, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1011, 0, '1', '角色删除', 101, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1012, 0, '1', '角色导出', 101, 5, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1013, 0, '1', '菜单查询', 102, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1014, 0, '1', '菜单新增', 102, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1015, 0, '1', '菜单修改', 102, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1016, 0, '1', '菜单删除', 102, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1017, 0, '1', '部门查询', 103, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1018, 0, '1', '部门新增', 103, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1019, 0, '1', '部门修改', 103, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1020, 0, '1', '部门删除', 103, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1, 1, 'ea73707ed6', '系统管理', 0, 1, 'system', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'system', '1', '2023-04-04 09:54:39', '1', '2023-09-27 13:18:39', '系统管理目录'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1026, 0, '1', '字典查询', 105, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1027, 0, '1', '字典新增', 105, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1028, 0, '1', '字典修改', 105, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1029, 0, '1', '字典删除', 105, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1030, 0, '1', '字典导出', 105, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1031, 0, '1', '参数查询', 106, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1032, 0, '1', '参数新增', 106, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1033, 0, '1', '参数修改', 106, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1034, 0, '1', '参数删除', 106, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1035, 0, '1', '参数导出', 106, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1036, 0, '1', '公告查询', 107, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1037, 0, '1', '公告新增', 107, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1038, 0, '1', '公告修改', 107, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1039, 0, '1', '公告删除', 107, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1040, 0, '1', '操作查询', 500, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:operlog:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1041, 0, '1', '操作删除', 500, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:operlog:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1042, 0, '1', '日志导出', 500, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:operlog:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1043, 0, '1', '登录查询', 501, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:logininfor:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1044, 0, '1', '登录删除', 501, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:logininfor:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1045, 0, '1', '日志导出', 501, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:logininfor:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3008, 1, '427fbc37d7', '敏捷开发', 3007, 1, 'agiledev', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'online', '1', '2023-05-18 14:47:06', '1', '2023-10-12 15:01:30', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3001, 1, 'b9d6ad6aa2', '数据源治理', 3000, 1, 'metadata', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'form', '1', '2023-05-18 13:54:59', '1', '2023-10-12 15:09:02', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3002, 5, '9eaaa573d2', '数据资产', 3000, 2, 'org', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'guide', '1', '2023-05-18 14:04:09', '1', '2023-10-12 15:09:34', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3015, 2, '3e582eb888', '机构网关', 3007, 2, 'instit', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'international', '1', '2023-05-18 17:31:15', '1', '2023-10-31 14:15:35', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3003, 6, '5182f77bf8', '数据源', 3001, 1, 'datasource', 'metadata/datasource/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'metadata:source:conn:page', NULL, '1', '2023-05-18 14:07:12', '1', '2023-09-21 18:01:43', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3021, 0, '1', '元数据详情', 3020, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:detail', NULL, '1', '2023-05-18 17:39:12', '1', NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3017, 4, '1fa486e504', '连接信息详情', 3003, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:detail', NULL, '1', '2023-05-18 17:34:34', '1', '2023-09-21 18:02:08', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3012, 0, '1', '连通性测试', 3003, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:connect', NULL, '1', '2023-05-18 15:01:59', '1', NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3027, 1, '1db7220c82', '服务删除', 3009, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:remove', NULL, '1', '2023-05-18 17:48:03', '1', '2023-06-14 16:36:50', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3020, 1, 'f27585dd18', '元数据', 3001, 2, 'datacolumn', 'metadata/datacolumn/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'metadata:datacolumn:page', NULL, '1', '2023-05-18 17:38:02', '1', '2023-06-30 13:57:24', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3059, 0, '1', '操作日志', 3057, 2, 'portaloperlog', 'portal/operlog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:operlog:list', 'form', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3060, 0, '1', '登录日志', 3057, 3, 'portallogininfor', 'portal/logininfor/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:logininfor:list', 'logininfor', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3061, 0, '1', '用户查询', 3058, 1, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3062, 0, '1', '用户新增', 3058, 2, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3036, 7, 'e9d792f5ca', 'SQL数据审批', 3004, 3, 'sqlapply', 'dataconsole/sqlapply/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:apply:list', 'validCode', '1', '2023-06-02 17:04:10', '100019', '2023-11-16 17:59:22', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3019, 1, '04c4d90cc6', '同步-全表', 3003, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:sync', NULL, '1', '2023-05-18 17:35:37', '1', '2023-11-17 10:50:41', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3007, 3, 'b01ccfdce1', 'API管理', 0, 5, 'apimanage', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'guide', '1', '2023-05-18 14:44:52', '1', '2023-11-17 15:31:09', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3057, 5, '828dec8aac', '门户管理', 0, 6, 'portal', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'international', '1', '2023-05-18 16:10:18', '1', '2023-11-17 15:31:16', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (120, 4, '50cd08bd08', '实验室管理', 0, 7, 'docker', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'tab', '1', '2023-05-18 16:10:18', '1', '2023-11-17 15:31:23', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3058, 1, '72b6fc2b70', '会员管理', 3057, 1, 'portaluser', 'portal/user/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:user:list', 'user', '1', '2023-04-04 09:54:39', '100025', '2023-12-08 11:24:58', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3063, 0, '1', '用户修改', 3058, 3, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3064, 0, '1', '用户删除', 3058, 4, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3065, 0, '1', '用户导出', 3058, 5, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3066, 0, '1', '用户导入', 3058, 6, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:import', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3067, 0, '1', '重置密码', 3058, 7, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:resetPwd', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3068, 0, '1', '操作查询', 3059, 1, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:operlog:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3069, 0, '1', '操作删除', 3059, 2, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:operlog:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3070, 0, '1', '日志导出', 3059, 4, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:operlog:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3071, 0, '1', '登录查询', 3060, 1, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:logininfor:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3035, 2, 'f8d5d09051', '日志详情', 3011, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:apilog:detail', NULL, '1', '2023-05-18 17:52:25', '1', '2023-06-30 13:43:11', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3024, 1, '9a8ffce2a1', '服务新增', 3009, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:add', NULL, '1', '2023-05-18 17:45:53', '1', '2023-06-14 16:36:32', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3025, 1, '977af73cbd', '服务修改', 3009, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:edit', NULL, '1', '2023-05-18 17:46:13', '1', '2023-06-14 16:36:37', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3026, 1, '35ac5a0971', '服务详情', 3009, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:detail', NULL, '1', '2023-05-18 17:46:50', '1', '2023-06-14 16:36:43', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3028, 1, 'bc20d577d1', '服务拷贝', 3009, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:copy', NULL, '1', '2023-05-18 17:48:32', '1', '2023-06-14 16:36:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3029, 1, '16ee108a0e', '服务发布', 3009, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:release', NULL, '1', '2023-05-18 17:48:57', '1', '2023-06-14 16:37:01', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3030, 1, '15a33939aa', '服务注销', 3009, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:cancel', NULL, '1', '2023-05-18 17:49:23', '1', '2023-06-14 16:37:06', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3011, 2, '72495e9e14', '接口日志', 3008, 3, 'apilog', 'apimanage/apilog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:apilog:page', NULL, '1', '2023-05-18 14:52:13', '1', '2023-06-30 13:42:58', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3009, 3, '23b6c86f16', 'API敏捷开发', 3008, 1, 'dataapi', 'apimanage/dataapi/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:api:page', NULL, '1', '2023-05-18 14:48:52', '1', '2023-06-30 13:38:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3016, 3, 'ad0a4b14a6', '连接信息修改', 3003, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:edit', NULL, '1', '2023-05-18 17:33:41', '1', '2023-09-21 18:02:00', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3018, 3, '9cc71af86b', '连接信息删除', 3003, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:del', NULL, '1', '2023-05-18 17:35:08', '1', '2023-09-21 18:02:17', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3013, 3, '60f1f55bf1', '连接信息新增', 3003, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:add', NULL, '1', '2023-05-18 15:21:12', '1', '2023-09-21 18:01:51', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3072, 0, '1', '登录删除', 3060, 2, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:logininfor:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3073, 0, '1', '日志导出', 3060, 3, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:logininfor:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3079, 0, '1', '服务器管理-查询', 3078, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerClientInfo:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3083, 0, '1', '服务器端口-查询', 3082, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortList:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3084, 0, '1', '服务器端口-详情', 3082, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortList:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3085, 0, '1', '服务器端口-编辑', 3082, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortList:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3082, 0, '1', '端口清单(不要)', 120, 4, 'dockerPortList', 'docker/dockerPortList/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerPortList:index', '', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3080, 0, '1', '服务器管理-详情', 3078, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerClientInfo:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3107, 0, '1', 'vpn用户-停用', 3100, 7, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:disable', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3089, 0, '1', '镜像管理-编辑', 3086, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerImages:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3105, 0, '1', 'vpn用户-删除', 3100, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:del', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3081, 0, '1', '服务器管理-编辑', 3078, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerClientInfo:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3086, 1, '253d6ae7a1', '镜像管理', 3215, 6, 'dockerImages', 'docker/dockerImages/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerImages:index', '', '1', '2023-06-14 10:36:21', '1', '2023-07-11 13:50:36', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3078, 1, '7077cf6831', '服务器管理', 3215, 5, 'dockerClientInfo', 'docker/dockerClientInfo/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerClientInfo:index', '', '1', '2023-06-14 10:36:21', '1', '2023-07-11 13:50:48', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3088, 0, '1', '镜像管理-详情', 3086, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerImages:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3090, 5, 'd4f60a107f', '实验室创建', 120, 1, 'dockerApplyInfo', 'docker/dockerApplyInfo/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerApplyInfo:index', '', '1', '2023-06-14 10:42:58', '1', '2023-07-11 15:15:07', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3087, 0, '1', '镜像管理-查询', 3086, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerImages:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3095, 0, '1', '实验室创建-删除', 3090, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:del', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3275, 0, '1', '用户实验室-删除组件', 3133, 9, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:dellib', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3113, 0, '1', '系统文件表-查询', 3112, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicFiles:page', '', '1', '2023-06-16 17:55:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3114, 0, '1', '系统文件表-详情', 3112, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicFiles:detail', '', '1', '2023-06-16 17:55:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3106, 1, '13a5345977', 'vpn用户-发送账户', 3100, 6, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:send', '', '1', '2023-06-15 12:11:57', '1', '2023-07-12 16:11:56', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3109, 2, 'a15193ff45', '机构管理', 3015, 1, 'orginfo', 'apimanage/orginfo/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:orginfo:list', NULL, '1', '2023-06-15 14:00:06', '1', '2023-06-19 11:08:27', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3108, 0, '1', 'vpn用户-启用', 3100, 8, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:enable', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3103, 0, '1', 'vpn用户-新增', 3100, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:add', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3004, 3, 'adad7399a6', '数据分析工作台', 0, 4, 'dataconsole', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'chart', '1', '2023-05-18 14:33:34', '1', '2023-11-17 15:31:02', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3099, 1, 'a2e459579e', '数据注入申请-审核', 3096, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyReview:review', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:15:44', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3096, 3, '2fe01e1733', '文件注入申请', 3216, 2, 'dockerApplyReview', 'docker/dockerApplyReview/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerApplyReview:reviewPage', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:16:16', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3101, 0, '1', 'vpn用户-查询', 3100, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:page', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3104, 0, '1', 'vpn用户-编辑', 3100, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:edit', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3102, 0, '1', 'vpn用户-详情', 3100, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:detail', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3111, 3, 'a1b0129be6', '接口统计', 3015, 4, 'orgstatistics', 'apimanage/orgstatistics/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:statistics:list', NULL, '1', '2023-06-15 15:45:56', '1', '2023-07-17 15:20:29', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3100, 0, '1', 'Vpn账户管理', 120, 3, 'dockerVpn', 'docker/dockerVpn/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerVpn:index', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3076, 0, '1', 'Portainer账户-详情', 3074, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortainerUser:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3077, 0, '1', 'Portainer账户-编辑', 3074, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortainerUser:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3074, 0, '1', 'Portainer账户(不要)', 120, 20, 'dockerPortainerUser', 'docker/dockerPortainerUser/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerPortainerUser:index', '', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3119, 0, '1', '消息模板-查询', 3118, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicMsgTemplate:page', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3120, 0, '1', '消息模板-详情', 3118, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicMsgTemplate:detail', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3121, 0, '1', '消息模板-编辑', 3118, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicMsgTemplate:edit', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3093, 0, '1', '实验室创建-新增', 3090, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:add', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3092, 0, '1', '实验室创建-详情', 3090, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:detail', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3127, 0, '1', '实验室硬件选项-查询', 3126, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:page', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3128, 0, '1', '实验室硬件选项-详情', 3126, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:detail', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3075, 0, '1', 'Portainer账户-查询', 3074, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortainerUser:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3134, 0, '1', '用户实验室-查询', 3133, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:page', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3135, 0, '1', '用户实验室-详情', 3133, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:detail', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3136, 0, '1', '用户实验室-重启', 3133, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:restart', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3137, 0, '1', '用户实验室-禁用', 3133, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:disable', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3138, 0, '1', '用户实验室-启用', 3133, 6, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:enable', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3139, 0, '1', '用户实验室-销毁', 3133, 7, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:remove', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3140, 0, '1', '用户实验室-重置密码', 3133, 8, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:resetPwd', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3141, 0, '1', '用户实验室-重新初始化', 3133, 9, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:initialize', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3133, 1, '2da1f18d1d', '用户实验室', 120, 2, 'dockerWithUser', 'docker/dockerWithUser/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerWithUser:index', '', '1', '2023-06-29 19:47:21', '1', '2023-07-11 13:55:29', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3129, 0, '1', '实验室硬件选项-编辑', 3126, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:edit', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3094, 0, '1', '实验室创建-编辑', 3090, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:edit', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3091, 0, '1', '实验室创建-查询', 3090, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:page', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3188, 0, '1', '文件下载申请-查询', 3187, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:page', '', '1', '2023-07-03 17:14:07', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3189, 0, '1', '文件下载申请-详情', 3187, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:detail', '', '1', '2023-07-03 17:14:07', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3187, 2, '2b0c596f29', '文件下载申请', 3216, 3, 'dockerDownloadApply', 'docker/dockerDownloadApply/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerDownloadApply:index', '', '1', '2023-07-03 17:14:07', '1', '2023-10-11 16:32:21', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3197, 0, '1', '文件下载申请-审核', 3187, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:review', '', '1', '2023-07-03 18:01:55', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3126, 1, '633283cea6', '实验室硬件选项', 3215, 4, 'dockerConfigHardware', 'docker/dockerConfigHardware/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerConfigHardware:index', '', '1', '2023-06-29 19:33:50', '1', '2023-07-11 13:50:28', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3221, 0, '1', '实验室硬件选项-新增', 3126, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:add', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3244, 0, '1', '短信记录-查询', 3243, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicPhoneMsgLog:page', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3245, 0, '1', '短信记录-详情', 3243, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicPhoneMsgLog:detail', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3248, 0, '1', '门户消息-详情', 3246, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:portalUserMsg:detail', '', '1', '2023-09-21 17:35:06', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3241, 0, '1', '文件下载申请-下载', 3187, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:downloadFile', '', '1', '2023-07-03 18:01:55', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (121, 4, '3332cc8dc0', '内容管理', 0, 8, 'content', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'education', '1', '2023-05-18 16:10:18', '1', '2023-11-17 15:31:30', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3246, 2, 'cf8114926d', '门户消息', 3057, 4, 'portalUserMsg', 'portal/portalUserMsg/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:portalUserMsg:page', 'email', '1', '2023-09-21 17:35:06', '1', '2023-11-17 14:57:34', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3118, 4, 'f598ef44c4', '消息模板', 121, 4, 'publicMsgTemplate', 'publicx/publicMsgTemplate/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'publicx:publicMsgTemplate:page', 'list', '1', '2023-06-19 11:23:25', '1', '2023-11-17 15:41:10', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3243, 2, '52dd404400', '短信记录', 121, 5, 'publicPhoneMsgLog', 'publicx/publicPhoneMsgLog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'publicx:publicPhoneMsgLog:page', 'email', '1', '2023-06-19 11:23:25', '1', '2023-11-17 15:41:56', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3097, 1, '24ca2f0edc', '数据注入申请-查询', 3096, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyReview:reviewPage', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:13:58', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3098, 1, 'e5733686dd', '数据注入申请-详情', 3096, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyReview:detail', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:15:26', ''); + + +INSERT INTO tbl_sys_notice (notice_id, version_num, rec_token, notice_title, notice_type, notice_content, status, create_by, create_time, update_by, update_time, remark) VALUES (1, 6, '1566efff47', '测试通知', '1', '

1111111

', '0', '1', '2023-06-27 19:47:31', 'zhoul', '2023-10-27 13:11:37', NULL); +INSERT INTO tbl_sys_notice (notice_id, version_num, rec_token, notice_title, notice_type, notice_content, status, create_by, create_time, update_by, update_time, remark) VALUES (9, 3, '78f14c9761', '测试通知1', '2', '

22222

', '0', '1', '2023-07-06 20:15:39', 'zhoul', '2023-10-27 13:11:48', NULL); + + + +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3149, '实验室创建-新增', 1, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.addDockerApplyInfo()', 'POST', 1, 'admin55', NULL, '/docker/dockerApplyInfo/add', '172.16.12.254', '内网IP', '{dockerServerId:2,applyUserId:1,applyUserName:门户管理员(admin),applyDesc:aabbcc,dockerImageName:jupyterlab-py310:0.0.1,serviceType:jupyter,usageTime:6,configId:1,labTitle:测试03,dockerApplyLib:[{libType:data,libDesc:aa,fileId:272},{libType:data,libDesc:cc,fileId:273},{libType:data,libDesc:ddd,fileId:274}]}', NULL, 1, '实验室剩余资源不足,不允许当前操作', '2023-11-16 13:43:27'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3150, '用户实验室-收回', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.withdrawDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/withdraw', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:7,recToken:3ee65c7360}', '{code:success,msg:操作成功,data:{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:44:00}}', 0, NULL, '2023-11-16 13:44:10'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3151, '实验室创建-新增', 1, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.addDockerApplyInfo()', 'POST', 1, 'admin55', NULL, '/docker/dockerApplyInfo/add', '172.16.12.254', '内网IP', '{dockerServerId:2,applyUserId:1,applyUserName:门户管理员(admin),applyDesc:aabbcc,dockerImageName:jupyterlab-py310:0.0.1,serviceType:jupyter,usageTime:6,configId:1,labTitle:测试03,dockerApplyLib:[{libType:data,libDesc:aa,fileId:272},{libType:data,libDesc:cc,fileId:273},{libType:data,libDesc:ddd,fileId:274}]}', NULL, 1, '实验室剩余资源不足,不允许当前操作', '2023-11-16 13:44:21'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3153, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', NULL, 1, '不允许当前操作!实验室有未处理的注入申请', '2023-11-16 13:45:24'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3155, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', '{code:success,msg:操作成功,data:{applyId:2023110000000042,versionNum:9,recToken:64f0c43a91,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:47:29}}', 0, NULL, '2023-11-16 13:47:29'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3197, '用户实验室-收回', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.withdrawDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/withdraw', '172.16.12.254', '内网IP', '{applyId:2023110000000039,versionNum:15,recToken:b78c487519}', '{code:success,msg:操作成功,data:{applyId:2023110000000039,versionNum:16,recToken:9b04c092ef,updateBy:2,updateByName:管理员,updateTime:2023-11-16 20:55:21}}', 0, NULL, '2023-11-16 20:55:32'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3152, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', NULL, 1, '不允许当前操作!实验室有未处理的注入申请', '2023-11-16 13:45:16'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3154, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', NULL, 1, '不允许当前操作!实验室有未处理的下载申请', '2023-11-16 13:46:50'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3156, '实验室创建-新增', 1, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.addDockerApplyInfo()', 'POST', 1, 'admin55', NULL, '/docker/dockerApplyInfo/add', '172.16.12.254', '内网IP', '{dockerServerId:2,applyUserId:1,applyUserName:门户管理员(admin),applyDesc:aabbcc,dockerImageName:jupyterlab-py310:0.0.1,serviceType:jupyter,usageTime:6,configId:1,labTitle:测试03,dockerApplyLib:[{libType:data,libDesc:aa,fileId:272},{libType:data,libDesc:cc,fileId:273},{libType:data,libDesc:ddd,fileId:274}]}', '{code:success,msg:操作成功,data:{applyId:2023110000000043,versionNum:0,recToken:f85d7d82ea,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:47:37}}', 0, NULL, '2023-11-16 13:47:37'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3157, '实验室创建-发布', 13, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.releaseDockerApplyInfo()', 'PUT', 1, 'admin55', NULL, '/docker/dockerApplyInfo/release', '172.16.12.254', '内网IP', '{applyId:2023110000000043,versionNum:0,recToken:f85d7d82ea}', '{code:success,msg:操作成功,data:{applyId:2023110000000043,versionNum:1,recToken:188ded6c05,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:47:54}}', 0, NULL, '2023-11-16 13:47:54'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3198, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000039,versionNum:16,recToken:9b04c092ef}', '{code:success,msg:操作成功,data:{applyId:2023110000000039,versionNum:17,recToken:cd24ba08ca,updateBy:2,updateByName:管理员,updateTime:2023-11-16 20:55:46}}', 0, NULL, '2023-11-16 20:55:46'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3158, '用户实验室-重新初始化', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.initializeDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/initialize', '172.16.12.254', '内网IP', '{applyId:2023110000000041,versionNum:24,recToken:a7deb5dc44}', '{code:success,msg:操作成功,data:{applyId:2023110000000041,versionNum:25,recToken:319176c6aa,updateBy:2,updateByName:管理员,updateTime:2023-11-16 15:14:06}}', 0, NULL, '2023-11-16 15:14:06'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3159, '用户实验室-重新初始化', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.initializeDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/initialize', '172.16.12.254', '内网IP', '{applyId:2023110000000041,versionNum:26,recToken:53226a425a}', '{code:success,msg:操作成功,data:{applyId:2023110000000041,versionNum:27,recToken:15988968bb,updateBy:2,updateByName:管理员,updateTime:2023-11-16 15:37:22}}', 0, NULL, '2023-11-16 15:37:22'); + + + +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (1, 0, '1', '超级管理员', 'admin', 1, '1', '1', '1', '0', '0', 'admin', '2023-04-04 13:29:07', '', NULL, '超级管理员'); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (18, 3, '385e0e1f29', '测试角色1', 'testrole1', 0, NULL, '1', '1', '1', '0', '2', '2023-10-27 10:12:44', '100014', '2023-11-02 10:47:17', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (19, 1, 'aa47a7ce37', 'test4', 'test', 5, NULL, '0', '1', '0', '0', '100014', '2023-11-02 10:49:33', '100014', '2023-11-02 10:51:26', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (6, 0, '1', '啊实打实', '啊实打实', 1, NULL, '1', '1', '0', '2', '100007', '2023-06-30 15:26:07', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (12, 0, '1', '测试角色', 'fasdf', 0, NULL, '1', '1', '0', '2', '1', '2023-07-03 11:20:14', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (15, 22, 'd51c1ad7d4', '单菜单权限', 'one', 0, NULL, '1', '1', '0', '2', '1', '2023-07-17 17:49:42', '1', '2023-07-18 15:48:17', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (14, 7, '0a1eaf4b07', 'testRole', 'testRole', 0, '1', '1', '1', '0', '2', '1', '2023-07-06 20:12:28', '1', '2023-10-11 09:54:33', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (3, 15, '2174d570a4', '测试', 'jiuyv', 3, '1', '1', '1', '0', '2', '1', '2023-06-28 18:47:19', '1', '2023-10-11 09:53:23', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (16, 0, '1', '测试角色', 'jj', 0, NULL, '1', '1', '0', '2', '1', '2023-10-17 19:56:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (17, 0, '1', '测试角色', 'jj', 0, NULL, '1', '1', '0', '2', '1', '2023-10-17 19:57:11', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (20, 34, '19503aa738', '单权限测试', 'onetest', 10, NULL, '1', '1', '0', '0', '1', '2023-11-20 09:58:51', '1', '2023-11-21 15:54:21', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (13, 50, '4f1869dd65', '全部权限', 'all', 4, '1', '1', '1', '0', '0', '1', '2023-07-04 18:04:20', '1', '2023-12-04 17:22:53', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (2, 20, '4c9baf81bf', '普通角色', 'common', 2, '2', '1', '1', '0', '0', 'admin', '2023-04-04 13:29:07', '1', '2023-11-17 16:11:26', ''); + + + +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 1); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 2); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 4); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 3); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 8); + + +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (1, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3197); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3241); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3215); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3126); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3127); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3128); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3221); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3129); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3078); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3079); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3080); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3081); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3086); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3087); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3088); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3089); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3074); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3075); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3076); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3077); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3125); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3169); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3170); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3171); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3172); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3173); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3174); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3198); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3199); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3200); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3201); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3202); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3203); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3204); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3112); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3113); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3114); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3118); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3119); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3243); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3244); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3245); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3123); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3142); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3143); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3144); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3145); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3130); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3131); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3176); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3178); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3132); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3208); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3180); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3181); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3216); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3096); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3097); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3098); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3099); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1005); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3238); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1010); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1014); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1031); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1032); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1033); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1034); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1037); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1039); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 500); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1040); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1041); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1042); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 501); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1043); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1044); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1045); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3273); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3251); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3274); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3264); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3265); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3266); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3269); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3270); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3267); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3268); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3250); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3252); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3280); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3253); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3281); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3254); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3282); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3255); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3284); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3259); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3283); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3256); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3285); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3257); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3286); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3258); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3000); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3287); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3021); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3182); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3220); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3233); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3234); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3235); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3212); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3213); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3214); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3223); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3224); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3150); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3290); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3151); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3152); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3153); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3154); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3155); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3156); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3157); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3158); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3209); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3288); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3289); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3242); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3292); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3149); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3146); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3183); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3276); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3277); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3278); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3291); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3024); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3025); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3159); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3160); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3161); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3162); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3185); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3186); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3210); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3271); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3279); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3109); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3163); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3164); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3165); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3166); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3167); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3192); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3193); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3211); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3225); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3226); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3236); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3227); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3228); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3229); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3230); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3231); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3232); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3111); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3057); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3058); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3061); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3062); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3063); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3064); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3065); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3066); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3067); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3059); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3068); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3069); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3070); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3060); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3071); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3072); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3073); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3246); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3248); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3090); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3091); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3092); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3093); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3094); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3095); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3184); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3133); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3134); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3135); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3136); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3137); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3138); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3139); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3140); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3141); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3275); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3222); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3239); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3272); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3240); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3104); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3216); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3096); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3097); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3098); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3099); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3187); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3188); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3189); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3197); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3241); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3082); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3083); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3084); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3085); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3215); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3126); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3127); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3128); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3221); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3129); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3078); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3079); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3080); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3081); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3086); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3087); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3088); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3089); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3074); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3075); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3076); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3077); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3125); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3169); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3170); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3171); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3172); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3173); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3174); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3198); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3199); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3200); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3201); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3202); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3203); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3204); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3112); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3113); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3114); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3118); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3119); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3243); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3244); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3245); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3123); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3142); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3143); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3144); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3145); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3130); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3131); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3176); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3178); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3132); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3208); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3180); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3181); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1005); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3238); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1010); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1014); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1031); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1032); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1033); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1034); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1037); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1039); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 500); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1040); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1041); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1042); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 501); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1043); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1044); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1045); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3273); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3251); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3274); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3264); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3265); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3266); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3269); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3270); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3267); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3268); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3250); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3252); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3280); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3253); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3281); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3254); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3282); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3255); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3284); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3259); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3283); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3256); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3285); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3257); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3286); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3258); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3000); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1010); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1014); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1031); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1032); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1033); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1034); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1037); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1039); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 500); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1040); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1041); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1042); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 501); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1043); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1044); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1045); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3287); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3021); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3182); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3220); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3233); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3234); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3235); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3212); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3213); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3214); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3223); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3224); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3150); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3151); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3152); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3153); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3154); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3155); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3156); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3157); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3158); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3209); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3288); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3289); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3242); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3149); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3146); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3183); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3276); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3277); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3278); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3024); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3025); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3159); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3160); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3161); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3162); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3185); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3186); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3210); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3271); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3279); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3109); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3163); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3164); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3165); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3166); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3167); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3192); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3193); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3211); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3225); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3226); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3236); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3227); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3228); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3229); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3230); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3231); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3232); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3111); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3057); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3058); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3061); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3062); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3063); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3064); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3065); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3066); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3067); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3059); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3068); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3069); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3070); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3060); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3071); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3072); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3073); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3246); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3248); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3090); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3091); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3092); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3093); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3094); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3095); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3184); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3133); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3134); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3135); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3136); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3137); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3138); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3139); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3140); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3275); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3141); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3222); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3239); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3272); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3240); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3104); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3082); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3083); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3084); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3085); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3216); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3096); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3097); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3098); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3099); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3187); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3188); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3189); + + +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100017, 2, '29f61b6666', 1, 'test4', 'aa', '00', '92410233@qq.com', '18712387795', '0', NULL, '$2a$10$E2Ayp58A9KlFmL23Cwu5WO9KSF7LTjh69PgOppec3zRsd0NTiTbr6', '0', '0', '172.16.12.254', '2023-11-02 10:51:06.345', '0', 0, '2023-11-02 10:50:41', '100014', '2023-11-02 10:42:28', '100014', '2023-11-02 10:51:05', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (3, 3, '3c4f8a0400', 2, 'zhoul2', '管理员', '01', '', '', '1', '/images/console/3c8f3855a4b1404fbaa492c8349d22c5.jpg', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '1', '0', '127.0.0.1', '2023-10-26 20:10:15.438', '0', 0, '2023-10-10 10:22:12', '1', '2023-04-04 13:29:07', '1', '2023-10-27 09:50:37', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100020, 0, '1', 1, 'admin5', 'admin5', '00', NULL, NULL, NULL, NULL, '$2a$10$6Eg3BZlQkID5pcLDy/feQ.4JaEW2x6ZO0gxYDQ9cg48V13knKG3lW', '0', '0', '127.0.0.1', '2023-11-20 09:42:59.663', '0', 0, NULL, '1', '2023-11-20 09:42:31', NULL, '2023-11-20 09:42:58', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100024, 0, '1', 1, 'test66', '测试SQLapply', '00', NULL, NULL, NULL, NULL, '$2a$10$ch.NYHltpZzQzoDLKsiQMOzdoRhMp1.6aO6c1s1UIr/z43VyMpXGW', '0', '0', '127.0.0.1', '2023-12-01 16:24:59.082', '0', 0, NULL, '100018', '2023-12-01 14:10:50', NULL, '2023-12-01 16:24:59', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100022, 1, '542a19cc95', 1, 'admin20', 'SQL工作台测试', '00', NULL, '15516673702', NULL, NULL, '$2a$10$YJ0aISeuEa1z7JzQmeEdG.v1RS3xQNUaLDqUNAW8wWbBRcf7ZrjiO', '0', '0', '127.0.0.1', '2023-11-28 16:22:11.621', '0', 0, NULL, '1', '2023-11-28 16:21:40', '1', '2023-11-28 16:22:11', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100015, 0, '1', 1, 'admin2', 'admin2', '00', '22@33.com', '13512312124', '1', NULL, '$2a$10$Q7nAT0P6dCIGbWF0SSv6Ue/ZkLcB5IegmjJsHpywTiNpI7apXN3h2', '0', '0', '192.168.83.4', '2023-12-05 23:56:56.802', '0', 0, '2023-11-20 15:05:01', '1', '2023-10-16 09:48:06', NULL, '2023-12-05 16:04:17', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100023, 1, 'ad24aa5ad8', 1, 'test02', 'ttt', '00', NULL, NULL, NULL, NULL, '$2a$10$.m/0nD4ZNKcswa.jjL4.CuCQB3ax9AHuuIqcnIUeqOUzyRntejoTu', '0', '0', '127.0.0.1', '2023-12-04 17:46:02.428', '0', 0, NULL, '1', '2023-11-28 16:23:43', '1', '2023-12-04 17:46:01', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (1, 126, '1', 2, 'admin', '管理员', '01', '', '', '1', '/images/console/3c8f3855a4b1404fbaa492c8349d22c5.jpg', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', '2023-12-07 20:52:16.808', '0', 0, '2023-11-24 11:25:27', '1', '2023-04-04 13:29:07', '1', '2023-12-07 20:52:16', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100014, 1, '6abd041739', 1, 'admin1', 'admin1', '00', '11@22.com', '13512312123', '2', NULL, '$2a$10$c/5GyT5yKnyJwBtQb7XZBubJyyFDm2WowPH9rvjKmD5O1OzdK5Gri', '0', '0', '172.16.12.254', '2023-12-08 06:36:50.538', '0', 0, '2023-11-03 19:57:50', '1', '2023-10-16 09:47:01', '2', '2023-12-07 22:44:11', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100019, 0, '1', 1, 'admin3', 'admin3', '00', NULL, NULL, NULL, NULL, '$2a$10$58MAXMpS1pN9390K7Awb4egjVy1zV3epyyAX.GNUHNmPNai6aH9dO', '0', '0', '127.0.0.1', '2023-11-20 15:17:25.87', '0', 0, NULL, '1', '2023-11-16 16:04:56', NULL, '2023-11-20 15:17:24', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (2, 1, '1', 2, 'zhoul', '管理员', '01', '', '', '1', '/images/console/3c8f3855a4b1404fbaa492c8349d22c5.jpg', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', '2023-12-08 10:13:53.835', '0', 0, '2023-10-10 10:22:12', '1', '2023-04-04 13:29:07', '1', '2023-12-08 10:13:52', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100016, 0, '1', 1, 'admin55', 'admin55', '00', NULL, '13899999999', '0', NULL, '$2a$10$ryvYWUIgL6NC19qM7Y98UOIeE/ISBBp0o3bmfHKrU4iKKIquxe6se', '0', '0', '172.16.12.254', '2023-12-08 21:26:59.872', '0', 0, NULL, '1', '2023-10-19 11:29:28', NULL, '2023-12-08 13:34:21', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100025, 1, 'bf6270ffc1', 1, 'test88', 'test88', '00', NULL, '15516673777', NULL, NULL, '$2a$10$jj4lssD1ceWTojSwUySwaesxFpoT7dlR2Gh.wwNxHncjT90nltWES', '0', '0', '127.0.0.1', '2023-12-08 13:50:09.694', '0', 0, NULL, '100018', '2023-12-01 17:06:19', '100018', '2023-12-08 13:50:09', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100021, 0, '1', 1, 'admin12', 'admin12', '00', NULL, NULL, NULL, NULL, '$2a$10$VemvbBkB8SDkYt7TU3ISrO56Yl6Wr/V4QpxfjCKkoG0LUTqdTectu', '0', '0', '127.0.0.1', '2023-12-04 16:15:38.262', '0', 0, '2023-11-21 11:13:50', '1', '2023-11-21 11:13:18', NULL, '2023-12-04 16:15:37', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100018, 4, '73b8d5d951', 1, 'yts', 'yts', '00', '11@11.cc', '15516612123', '0', NULL, '$2a$10$kqZENVYYhIx2ZAwpQe1nOOwag0Skg5jqym9DM0dADgexShHkxAQpC', '0', '0', '127.0.0.1', '2023-12-01 17:06:59.93', '0', 0, '2023-11-24 11:27:59', '1', '2023-11-03 17:15:30', '1', '2023-12-01 17:07:00', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100026, 0, '1', 1, 'test99', 'test99', '00', NULL, NULL, NULL, NULL, '$2a$10$jxQRDh4xKy.A1YTnlvSRLeZSqio9OChabFilBW7oqEu5fVYVLr4MK', '0', '0', '127.0.0.1', '2023-12-07 16:48:59.334', '0', 0, NULL, '100025', '2023-12-07 16:48:43', NULL, '2023-12-07 16:48:58', ''); + + +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (1, 1); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (3, 18); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100014, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100015, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100016, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100017, 19); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100018, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100018, 20); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100019, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100020, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100021, 20); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100022, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100023, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100024, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100025, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100026, 13); + + +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (13, 1, '0fcec93c63', '00', '01', '12312312', '00', 'admin', '2023-07-03 13:25:01', 'admin', '2023-07-03 13:27:22', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (15, 1, '22d148e4bf', '01', '01', '13313312122', '00', 'yts', '2023-07-17 17:51:37', 'yts', '2023-07-17 17:51:46', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (14, 1, '61b141512b', '01', '02', '15516613123', '00', 'admin', '2023-07-06 20:17:28', 'admin', '2023-07-07 09:56:55', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (11, 3, 'd523a81ad0', '00', '01', '16615512123', '00', 'admin', '2023-06-30 10:05:28', 'yts', '2023-07-28 14:07:21', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10, 2, '6664922e76', '00', '01', '111111111', '00', 'admin', '2023-06-30 10:05:09', 'yts', '2023-06-30 13:53:58', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (17, 0, '1', '01', '01', '13248363323', '00', 'admin', '2023-10-08 11:28:48', NULL, NULL, '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (18, 0, '1', '00', '01', '15612312123', '00', 'admin', '2023-10-18 10:22:53', NULL, NULL, '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (16, 1, 'aa591707c0', '01', '01', '13212312319', '00', 'yts', '2023-07-28 14:07:41', 'admin', '2023-10-08 11:28:24', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10000, 0, '1', 'ds_sms', '01', '18712387792', '00', 'admin1', '2023-12-04 13:19:57', NULL, '2023-12-04 13:19:57', '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10001, 0, '1', 'pmth_sms', '01', '18712387792', '00', 'admin1', '2023-12-04 13:20:17', NULL, '2023-12-04 13:20:17', '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10002, 0, '1', 'pmth_sms', '01', '13564853037', '00', 'admin1', '2023-12-04 13:46:56', NULL, '2023-12-04 13:46:56', '0'); + +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000153', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2024-12-25', '1', 0, 'edde58bceb', '1220', 'admin', '2023-12-15 20:18:21', NULL, 'admin', NULL, '0', NULL, 'oPdk4whkHRheecCHOX7LMw==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000154', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2023-12-25', '0', 0, 'ca365f98f1', '1220', 'admin', '2023-12-15 20:35:50', NULL, 'admin', NULL, '0', NULL, 'oPdk4whkHRheecCHOX7LMw==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000155', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2024-12-25', '1', 0, 'd0ef53603f', '1220', 'admin', '2023-12-15 20:38:06', NULL, 'admin', NULL, '0', NULL, 'oPdk4whkHRheecCHOX7LMw==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000156', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2023-12-25', '1', 0, '0ff16cab10', '1220', 'admin', '2023-12-15 20:46:47', NULL, 'admin', NULL, '0', NULL, '8pcg94Nm4CbHfeJ4Q2yY6g==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000157', '第三代', '01', '是多少', 'TI/zQ29Xz/mslv1KaAuVw67OLwab/LLzpiwoE5U//FcCrUD/+R948Q==', 'fBOJHExmOEC/sSjLsVnz6pJst/VsRAfR9qtp9+niQ10CrUD/+R948Q==', '2023-11-28', '2024-12-25', '1', 0, '12c6936f71', '1', 'admin', '2023-12-15 20:51:37', NULL, 'admin', NULL, '0', NULL, 'MMk8HA35ZIJUt3WDHo609A==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000158', '第四代', '01', '是多少', 'TI/zQ29Xz/mslv1KaAuVw67OLwab/LLzpiwoE5U//FcCrUD/+R948Q==', 'fBOJHExmOEC/sSjLsVnz6pJst/VsRAfR9qtp9+niQ10CrUD/+R948Q==', '2023-11-28', '2024-12-25', '0', 0, '12c6936f71', '1', 'admin', '2023-12-15 20:51:37', NULL, 'admin', NULL, '0', NULL, 'MMk8HA35ZIJUt3WDHo609A==', NULL, NULL, NULL); + + + + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/sql/schema.sql b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/sql/schema.sql new file mode 100644 index 00000000..a34840c5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/agile-data-service/src/test/resources/sql/schema.sql @@ -0,0 +1,6277 @@ +/* + Navicat Premium Data Transfer + + Source Server : 172.16.12.105 + Source Server Type : PostgreSQL + Source Server Version : 140007 (140007) + Source Host : 172.16.12.105:5432 + Source Catalog : keliubao + Source Schema : public + + Target Server Type : PostgreSQL + Target Server Version : 140007 (140007) + File Encoding : 65001 + + Date: 07/12/2023 20:04:05 +*/ + + +-- ---------------------------- +-- Sequence structure for demorange_int_seq +-- ---------------------------- +DROP SEQUENCE IF EXISTS demorange_int_seq; +CREATE SEQUENCE demorange_int_seq +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for prd_line_station_trans_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS prd_line_station_trans_month; +CREATE SEQUENCE prd_line_station_trans_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_asset_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_asset_column; +CREATE SEQUENCE seq_data_asset_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_asset_table +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_asset_table; +CREATE SEQUENCE seq_data_asset_table +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_asset_table_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_asset_table_column; +CREATE SEQUENCE seq_data_asset_table_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_config +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_config; +CREATE SEQUENCE seq_data_config +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_institute +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_institute; +CREATE SEQUENCE seq_data_institute +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_institute_api_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_institute_api_log; +CREATE SEQUENCE seq_data_institute_api_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_institute_auth +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_institute_auth; +CREATE SEQUENCE seq_data_institute_auth +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_market_api +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_market_api; +CREATE SEQUENCE seq_data_market_api +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_market_api_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_market_api_log; +CREATE SEQUENCE seq_data_market_api_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_market_api_mask +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_market_api_mask; +CREATE SEQUENCE seq_data_market_api_mask +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_authorize +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_authorize; +CREATE SEQUENCE seq_data_metadata_authorize +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_change_record +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_change_record; +CREATE SEQUENCE seq_data_metadata_change_record +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_column; +CREATE SEQUENCE seq_data_metadata_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_source +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_source; +CREATE SEQUENCE seq_data_metadata_source +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_source_conn +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_source_conn; +CREATE SEQUENCE seq_data_metadata_source_conn +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_table +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_table; +CREATE SEQUENCE seq_data_metadata_table +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_quality_report +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_quality_report; +CREATE SEQUENCE seq_data_quality_report +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_sql_console_export +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_sql_console_export; +CREATE SEQUENCE seq_data_sql_console_export +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_sql_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_sql_log; +CREATE SEQUENCE seq_data_sql_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_info +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_info; +CREATE SEQUENCE seq_docker_apply_info +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_lib +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_lib; +CREATE SEQUENCE seq_docker_apply_lib +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_review +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_review; +CREATE SEQUENCE seq_docker_apply_review +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_review_dtl +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_review_dtl; +CREATE SEQUENCE seq_docker_apply_review_dtl +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_config_hardware +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_config_hardware; +CREATE SEQUENCE seq_docker_config_hardware +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_download_apply +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_download_apply; +CREATE SEQUENCE seq_docker_download_apply +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_images +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_images; +CREATE SEQUENCE seq_docker_images +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_vpn +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_vpn; +CREATE SEQUENCE seq_docker_vpn +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_with_user_account +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_with_user_account; +CREATE SEQUENCE seq_docker_with_user_account +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_gen_table +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_gen_table; +CREATE SEQUENCE seq_gen_table +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_gen_table_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_gen_table_column; +CREATE SEQUENCE seq_gen_table_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_lab_config_hardware +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_lab_config_hardware; +CREATE SEQUENCE seq_lab_config_hardware +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_api_auth +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_api_auth; +CREATE SEQUENCE seq_org_api_auth +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_config +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_config; +CREATE SEQUENCE seq_org_config +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_gateway_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_gateway_log; +CREATE SEQUENCE seq_org_gateway_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_statistics +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_statistics; +CREATE SEQUENCE seq_org_statistics +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_content +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_content; +CREATE SEQUENCE seq_portal_content +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_logininfor +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_logininfor; +CREATE SEQUENCE seq_portal_logininfor +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_oper_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_oper_log; +CREATE SEQUENCE seq_portal_oper_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_user +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_user; +CREATE SEQUENCE seq_portal_user +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_user_msg +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_user_msg; +CREATE SEQUENCE seq_portal_user_msg +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_metric_day; +CREATE SEQUENCE seq_prd_line_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_metric_hour +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_metric_hour; +CREATE SEQUENCE seq_prd_line_metric_hour +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_metric_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_metric_month; +CREATE SEQUENCE seq_prd_line_metric_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_metric_day; +CREATE SEQUENCE seq_prd_line_station_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_metric_hour +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_metric_hour; +CREATE SEQUENCE seq_prd_line_station_metric_hour +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_metric_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_metric_month; +CREATE SEQUENCE seq_prd_line_station_metric_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_trans_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_trans_day; +CREATE SEQUENCE seq_prd_line_station_trans_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_trans_hour +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_trans_hour; +CREATE SEQUENCE seq_prd_line_station_trans_hour +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_trans_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_trans_month; +CREATE SEQUENCE seq_prd_line_station_trans_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_route_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_route_metric_day; +CREATE SEQUENCE seq_prd_route_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_metric_day; +CREATE SEQUENCE seq_prd_station_freq_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_metric_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_metric_month; +CREATE SEQUENCE seq_prd_station_freq_metric_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_trans_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_trans_day; +CREATE SEQUENCE seq_prd_station_freq_trans_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_trans_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_trans_month; +CREATE SEQUENCE seq_prd_station_freq_trans_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_files +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_files; +CREATE SEQUENCE seq_public_files +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_files_progress +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_files_progress; +CREATE SEQUENCE seq_public_files_progress +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_msg_template +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_msg_template; +CREATE SEQUENCE seq_public_msg_template +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_phone_msg_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_phone_msg_log; +CREATE SEQUENCE seq_public_phone_msg_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_centime_delay +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_centime_delay; +CREATE SEQUENCE seq_qa_centime_delay +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_pos_match_rate +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_pos_match_rate; +CREATE SEQUENCE seq_qa_pos_match_rate +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_route_daily_count +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_route_daily_count; +CREATE SEQUENCE seq_qa_route_daily_count +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_route_miss +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_route_miss; +CREATE SEQUENCE seq_qa_route_miss +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_route_turnover_time +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_route_turnover_time; +CREATE SEQUENCE seq_qa_route_turnover_time +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_station_miss +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_station_miss; +CREATE SEQUENCE seq_qa_station_miss +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_vehicle_daily_count +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_vehicle_daily_count; +CREATE SEQUENCE seq_qa_vehicle_daily_count +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sftp_user +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sftp_user; +CREATE SEQUENCE seq_sftp_user +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sftp_user_file +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sftp_user_file; +CREATE SEQUENCE seq_sftp_user_file +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sql_console_file +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sql_console_file; +CREATE SEQUENCE seq_sql_console_file +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sql_data_apply +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sql_data_apply; +CREATE SEQUENCE seq_sql_data_apply +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_config +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_config; +CREATE SEQUENCE seq_sys_config +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 4 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_dept +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_dept; +CREATE SEQUENCE seq_sys_dept +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 3 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_dict_data +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_dict_data; +CREATE SEQUENCE seq_sys_dict_data +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_dict_type +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_dict_type; +CREATE SEQUENCE seq_sys_dict_type +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_job +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_job; +CREATE SEQUENCE seq_sys_job +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_job_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_job_log; +CREATE SEQUENCE seq_sys_job_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_logininfor +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_logininfor; +CREATE SEQUENCE seq_sys_logininfor +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_menu +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_menu; +CREATE SEQUENCE seq_sys_menu +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 3000 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_notice +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_notice; +CREATE SEQUENCE seq_sys_notice +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_oper_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_oper_log; +CREATE SEQUENCE seq_sys_oper_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_post +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_post; +CREATE SEQUENCE seq_sys_post +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_role +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_role; +CREATE SEQUENCE seq_sys_role +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 3 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_user +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_user; +CREATE SEQUENCE seq_sys_user +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 2 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_warning_contact +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_warning_contact; +CREATE SEQUENCE seq_sys_warning_contact +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_warning_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_warning_log; +CREATE SEQUENCE seq_sys_warning_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_test_t_t +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_test_t_t; +CREATE SEQUENCE seq_test_t_t +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for tbl_prd_sync_record_id_seq +-- ---------------------------- +DROP SEQUENCE IF EXISTS tbl_prd_sync_record_id_seq; +CREATE SEQUENCE tbl_prd_sync_record_id_seq +INCREMENT 1 +MINVALUE 1 +MAXVALUE 2147483647 +START 1 +CACHE 1; + +-- ---------------------------- +-- Table structure for demorange +-- ---------------------------- +DROP TABLE IF EXISTS demorange; +CREATE TABLE demorange ( + int int8 NOT NULL AUTO_INCREMENT , + val int4, + crt timestamp(6) +) +; + +-- ---------------------------- +-- Table structure for gen_table +-- ---------------------------- +DROP TABLE IF EXISTS gen_table; +CREATE TABLE gen_table ( + table_id int8 NOT NULL AUTO_INCREMENT , + table_name varchar(200) , + table_comment varchar(500) , + sub_table_name varchar(64) , + sub_table_fk_name varchar(64) , + class_name varchar(100) , + tpl_category varchar(200) , + package_name varchar(100) , + module_name varchar(30) , + business_name varchar(30) , + function_name varchar(50) , + function_author varchar(50) , + gen_type char(1) , + gen_path varchar(200) , + options varchar(1000) , + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6), + remark varchar(500) +) +; +COMMENT ON COLUMN gen_table.table_id IS '编号'; +COMMENT ON COLUMN gen_table.table_name IS '表名称'; +COMMENT ON COLUMN gen_table.table_comment IS '表描述'; +COMMENT ON COLUMN gen_table.sub_table_name IS '关联子表的表名'; +COMMENT ON COLUMN gen_table.sub_table_fk_name IS '子表关联的外键名'; +COMMENT ON COLUMN gen_table.class_name IS '实体类名称'; +COMMENT ON COLUMN gen_table.tpl_category IS '使用的模板(crud单表操作 tree树表操作)'; +COMMENT ON COLUMN gen_table.package_name IS '生成包路径'; +COMMENT ON COLUMN gen_table.module_name IS '生成模块名'; +COMMENT ON COLUMN gen_table.business_name IS '生成业务名'; +COMMENT ON COLUMN gen_table.function_name IS '生成功能名'; +COMMENT ON COLUMN gen_table.function_author IS '生成功能作者'; +COMMENT ON COLUMN gen_table.gen_type IS '生成代码方式(0zip压缩包 1自定义路径)'; +COMMENT ON COLUMN gen_table.gen_path IS '生成路径(不填默认项目路径)'; +COMMENT ON COLUMN gen_table.options IS '其它生成选项'; +COMMENT ON COLUMN gen_table.create_by IS '创建者'; +COMMENT ON COLUMN gen_table.create_time IS '创建时间'; +COMMENT ON COLUMN gen_table.update_by IS '更新者'; +COMMENT ON COLUMN gen_table.update_time IS '更新时间'; +COMMENT ON COLUMN gen_table.remark IS '备注'; +COMMENT ON TABLE gen_table IS '代码生成业务表'; + +-- ---------------------------- +-- Table structure for gen_table_column +-- ---------------------------- +DROP TABLE IF EXISTS gen_table_column; +CREATE TABLE gen_table_column ( + column_id int8 NOT NULL AUTO_INCREMENT , + table_id int8, + column_name varchar(200) , + column_comment varchar(500) , + column_type varchar(100) , + java_type varchar(500) , + java_field varchar(200) , + is_pk char(1) , + is_increment char(1) , + is_required char(1) , + is_insert char(1) , + is_edit char(1) , + is_list char(1) , + is_query char(1) , + query_type varchar(200) , + html_type varchar(200) , + dict_type varchar(200) , + sort int4, + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6) +) +; +COMMENT ON COLUMN gen_table_column.column_id IS '编号'; +COMMENT ON COLUMN gen_table_column.table_id IS '归属表编号'; +COMMENT ON COLUMN gen_table_column.column_name IS '列名称'; +COMMENT ON COLUMN gen_table_column.column_comment IS '列描述'; +COMMENT ON COLUMN gen_table_column.column_type IS '列类型'; +COMMENT ON COLUMN gen_table_column.java_type IS 'JAVA类型'; +COMMENT ON COLUMN gen_table_column.java_field IS 'JAVA字段名'; +COMMENT ON COLUMN gen_table_column.is_pk IS '是否主键(1是)'; +COMMENT ON COLUMN gen_table_column.is_increment IS '是否自增(1是)'; +COMMENT ON COLUMN gen_table_column.is_required IS '是否必填(1是)'; +COMMENT ON COLUMN gen_table_column.is_insert IS '是否为插入字段(1是)'; +COMMENT ON COLUMN gen_table_column.is_edit IS '是否编辑字段(1是)'; +COMMENT ON COLUMN gen_table_column.is_list IS '是否列表字段(1是)'; +COMMENT ON COLUMN gen_table_column.is_query IS '是否查询字段(1是)'; +COMMENT ON COLUMN gen_table_column.query_type IS '查询方式(等于、不等于、大于、小于、范围)'; +COMMENT ON COLUMN gen_table_column.html_type IS '显示类型(文本框、文本域、下拉框、复选框、单选框、日期控件)'; +COMMENT ON COLUMN gen_table_column.dict_type IS '字典类型'; +COMMENT ON COLUMN gen_table_column.sort IS '排序'; +COMMENT ON COLUMN gen_table_column.create_by IS '创建者'; +COMMENT ON COLUMN gen_table_column.create_time IS '创建时间'; +COMMENT ON COLUMN gen_table_column.update_by IS '更新者'; +COMMENT ON COLUMN gen_table_column.update_time IS '更新时间'; +COMMENT ON TABLE gen_table_column IS '代码生成业务表字段'; + +-- ---------------------------- +-- Table structure for seqno +-- ---------------------------- +DROP TABLE IF EXISTS seqno; +CREATE TABLE seqno ( + nextval int8 +) +; + +-- ---------------------------- +-- Table structure for tbl_batch_table_mapping +-- ---------------------------- +DROP TABLE IF EXISTS tbl_batch_table_mapping; +CREATE TABLE tbl_batch_table_mapping ( + task_no varchar(100) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + remote_table_sql varchar(3000) NOT NULL, + remote_db_name varchar(100) NOT NULL, + remote_days int4 NOT NULL, + local_table varchar(200) NOT NULL, + local_db_name varchar(100) NOT NULL, + local_pre_sql varchar(300) , + mapping_json varchar(3000) NOT NULL, + remarks varchar(500) , + data_status varchar(2) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_batch_table_mapping.task_no IS '【任务编号】'; +COMMENT ON COLUMN tbl_batch_table_mapping.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_batch_table_mapping.remote_table_sql IS '【远程表查询SQL】 完整SQL,或 tbl_user where date=''{date}'' 形式(无FROM会自动拼接);条件完全自行写'; +COMMENT ON COLUMN tbl_batch_table_mapping.remote_db_name IS '【远程表数据库】 自定义的一个数据源名称,自行实现,配置在yml'; +COMMENT ON COLUMN tbl_batch_table_mapping.remote_days IS '【远程前推天数】 T+N模式,比如1,表示同步昨天数据,2则同步前天数据'; +COMMENT ON COLUMN tbl_batch_table_mapping.local_table IS '【本地表名】 真实表编码 如 tbl_user'; +COMMENT ON COLUMN tbl_batch_table_mapping.local_db_name IS '【本地数据库】自定义的一个数据源名称,自行实现,配置在yml。也可以是文件csv/txt'; +COMMENT ON COLUMN tbl_batch_table_mapping.local_pre_sql IS '【本地前置SQL】如果要避免重复插入,那么执行删除语句,切记条件要正确。或者文件要清空true'; +COMMENT ON COLUMN tbl_batch_table_mapping.mapping_json IS '【映射关系】json格式 : {来源字段:存储字段|转换类型} 。如果来源类型和存储类型一致就不用写“|转换类型”部分'; +COMMENT ON COLUMN tbl_batch_table_mapping.remarks IS '【备注】'; +COMMENT ON COLUMN tbl_batch_table_mapping.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_batch_table_mapping.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_batch_table_mapping IS '【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。'; + +-- ---------------------------- +-- Table structure for tbl_batch_task +-- ---------------------------- +DROP TABLE IF EXISTS tbl_batch_task; +CREATE TABLE tbl_batch_task ( + task_no varchar(100) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + task_title varchar(100) , + pre_start_date timestamp(6), + pre_end_date timestamp(6), + pre_total_time varchar(20) , + curr_start_date timestamp(6), + failure_conditions varchar(2000) , + bus_status varchar(30) NOT NULL, + data_status varchar(2) NOT NULL, + update_time timestamp(6) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_batch_task.task_no IS '【任务编号】'; +COMMENT ON COLUMN tbl_batch_task.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_batch_task.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_batch_task.task_title IS '【任务名称】'; +COMMENT ON COLUMN tbl_batch_task.pre_start_date IS '【上次开始时间】'; +COMMENT ON COLUMN tbl_batch_task.pre_end_date IS '【上次结束时间】'; +COMMENT ON COLUMN tbl_batch_task.pre_total_time IS '【上次耗时】'; +COMMENT ON COLUMN tbl_batch_task.curr_start_date IS '【当前开始时间】'; +COMMENT ON COLUMN tbl_batch_task.failure_conditions IS '【失败数据条件】比如按天处理失败把日期记下,后面继续跑。'; +COMMENT ON COLUMN tbl_batch_task.bus_status IS '【任务状态】'; +COMMENT ON COLUMN tbl_batch_task.data_status IS '【数据状态】上传时可先处理成98临时,方便清理无用文件'; +COMMENT ON COLUMN tbl_batch_task.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_batch_task.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_batch_task.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_batch_task.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_batch_task IS '【批处理任务表】记录任务处理情况,方便实现增量重跑'; + +-- ---------------------------- +-- Table structure for tbl_data_api +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_api; +CREATE TABLE tbl_data_api ( + api_id int8 NOT NULL AUTO_INCREMENT , + status char(1) NOT NULL, + create_by varchar(50) , + create_time timestamp(0), + create_dept varchar(50) , + update_by varchar(50) , + update_time timestamp(0), + remark varchar(1000) , + api_name varchar(255) NOT NULL, + api_version varchar(60) NOT NULL, + api_url varchar(255) NOT NULL, + req_method varchar(10) NOT NULL, + res_type varchar(10) NOT NULL, + deny varchar(2000) , + limit_json text , + config_json text , + req_json text , + res_json text , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0', + api_code varchar(50) , + api_type char(1) , + source_id int8 +) +; +COMMENT ON COLUMN tbl_data_api.api_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_api.status IS '状态(1待注册,2已注册,3已发布)'; +COMMENT ON COLUMN tbl_data_api.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_api.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_api.create_dept IS '创建人所属部门'; +COMMENT ON COLUMN tbl_data_api.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_api.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_api.remark IS '备注'; +COMMENT ON COLUMN tbl_data_api.api_name IS 'API名称'; +COMMENT ON COLUMN tbl_data_api.api_version IS 'API版本'; +COMMENT ON COLUMN tbl_data_api.api_url IS 'API路径'; +COMMENT ON COLUMN tbl_data_api.req_method IS '请求方式'; +COMMENT ON COLUMN tbl_data_api.res_type IS '返回格式'; +COMMENT ON COLUMN tbl_data_api.deny IS 'IP黑名单多个,隔开'; +COMMENT ON COLUMN tbl_data_api.limit_json IS '限流配置'; +COMMENT ON COLUMN tbl_data_api.config_json IS '执行配置'; +COMMENT ON COLUMN tbl_data_api.req_json IS '请求参数'; +COMMENT ON COLUMN tbl_data_api.res_json IS '返回参数'; +COMMENT ON COLUMN tbl_data_api.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_api.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_api.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_api.api_code IS 'API code'; +COMMENT ON COLUMN tbl_data_api.api_type IS '类型:1敏捷API 2系统API'; +COMMENT ON COLUMN tbl_data_api.source_id IS '数据源id'; +COMMENT ON TABLE tbl_data_api IS '【API信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_api_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_api_log; +CREATE TABLE tbl_data_api_log ( + api_log_id int8 NOT NULL AUTO_INCREMENT , + api_id int8 NOT NULL, + caller_id varchar(50) , + caller_ip varchar(50) , + caller_url varchar(255) , + caller_params varchar(2000) , + caller_date timestamp(0), + caller_size int4, + time int4, + msg varchar(2000) , + status char(1) +) +; +COMMENT ON COLUMN tbl_data_api_log.api_log_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_api_log.api_id IS '调用api'; +COMMENT ON COLUMN tbl_data_api_log.caller_id IS '调用者id'; +COMMENT ON COLUMN tbl_data_api_log.caller_ip IS '调用者ip'; +COMMENT ON COLUMN tbl_data_api_log.caller_url IS '调用url'; +COMMENT ON COLUMN tbl_data_api_log.caller_params IS '调用参数'; +COMMENT ON COLUMN tbl_data_api_log.caller_date IS '调用时间'; +COMMENT ON COLUMN tbl_data_api_log.caller_size IS '调用数据量'; +COMMENT ON COLUMN tbl_data_api_log.time IS '调用耗时'; +COMMENT ON COLUMN tbl_data_api_log.msg IS '信息记录'; +COMMENT ON COLUMN tbl_data_api_log.status IS '状态(0成功,1失败)'; +COMMENT ON TABLE tbl_data_api_log IS '【API调用日志信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_asset_column +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_asset_column; +CREATE TABLE tbl_data_asset_column ( + asset_column_id int8 NOT NULL AUTO_INCREMENT , + column_name varchar(255) NOT NULL, + column_comment varchar(255) , + data_type varchar(255) NOT NULL, + column_no varchar(255) , + data_length varchar(255) , + data_example varchar(255) , + data_desc varchar(255) , + rsv varchar(255) , + data_unit varchar(255) +) +; +COMMENT ON COLUMN tbl_data_asset_column.asset_column_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_asset_column.column_name IS '字段名称'; +COMMENT ON COLUMN tbl_data_asset_column.column_comment IS '字段注释'; +COMMENT ON COLUMN tbl_data_asset_column.data_type IS '数据类型'; +COMMENT ON COLUMN tbl_data_asset_column.column_no IS '字段编码'; +COMMENT ON COLUMN tbl_data_asset_column.data_length IS '长度'; +COMMENT ON COLUMN tbl_data_asset_column.data_example IS '数据示例'; +COMMENT ON COLUMN tbl_data_asset_column.data_desc IS '数据说明'; +COMMENT ON COLUMN tbl_data_asset_column.rsv IS '备用字段'; +COMMENT ON COLUMN tbl_data_asset_column.data_unit IS '数据单位'; +COMMENT ON TABLE tbl_data_asset_column IS '数据资产基础元数据'; + +-- ---------------------------- +-- Table structure for tbl_data_asset_table +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_asset_table; +CREATE TABLE tbl_data_asset_table ( + asset_table_id int8 NOT NULL AUTO_INCREMENT , + source_id int8 NOT NULL, + table_name varchar(255) NOT NULL, + table_comment varchar(255) , + source varchar(255) , + rsv1 varchar(255) , + rsv2 varchar(255) , + table_create_time date +) +; +COMMENT ON COLUMN tbl_data_asset_table.asset_table_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_asset_table.source_id IS '数据源ID'; +COMMENT ON COLUMN tbl_data_asset_table.table_name IS '表名'; +COMMENT ON COLUMN tbl_data_asset_table.table_comment IS '表注释'; +COMMENT ON COLUMN tbl_data_asset_table.source IS '来源'; +COMMENT ON COLUMN tbl_data_asset_table.rsv1 IS '备用字段1'; +COMMENT ON COLUMN tbl_data_asset_table.rsv2 IS '备用字段2'; +COMMENT ON COLUMN tbl_data_asset_table.table_create_time IS '表创建时间'; +COMMENT ON TABLE tbl_data_asset_table IS '数据资产基础表'; + +-- ---------------------------- +-- Table structure for tbl_data_asset_table_column +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_asset_table_column; +CREATE TABLE tbl_data_asset_table_column ( + asset_table_column_id int8 NOT NULL AUTO_INCREMENT , + asset_table_id int8 NOT NULL, + column_name varchar(255) NOT NULL, + rsv varchar(255) +) +; +COMMENT ON COLUMN tbl_data_asset_table_column.asset_table_column_id IS '表ID'; +COMMENT ON COLUMN tbl_data_asset_table_column.asset_table_id IS '资产基础表ID'; +COMMENT ON COLUMN tbl_data_asset_table_column.column_name IS '资产元数据名称'; +COMMENT ON COLUMN tbl_data_asset_table_column.rsv IS '备用字段'; +COMMENT ON TABLE tbl_data_asset_table_column IS '数据资产基础表与元数据关联表'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_column +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_column; +CREATE TABLE tbl_data_metadata_column ( + column_id int8 NOT NULL AUTO_INCREMENT , + source_id int8 NOT NULL, + table_id int8 NOT NULL, + column_name varchar(255) NOT NULL, + column_comment varchar(255) , + column_key varchar(255) , + column_nullable varchar(255) , + column_position varchar(50) , + data_type varchar(255) , + data_length varchar(255) , + data_precision varchar(255) , + data_scale varchar(255) , + data_default varchar(255) , + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_metadata_column.column_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_metadata_column.source_id IS '所属数据源'; +COMMENT ON COLUMN tbl_data_metadata_column.table_id IS '所属数据表'; +COMMENT ON COLUMN tbl_data_metadata_column.column_name IS '字段名称'; +COMMENT ON COLUMN tbl_data_metadata_column.column_comment IS '字段注释'; +COMMENT ON COLUMN tbl_data_metadata_column.column_key IS '字段是否主键(0是 1否)'; +COMMENT ON COLUMN tbl_data_metadata_column.column_nullable IS '字段是否允许为空(0是 1否)'; +COMMENT ON COLUMN tbl_data_metadata_column.column_position IS '字段序号'; +COMMENT ON COLUMN tbl_data_metadata_column.data_type IS '数据类型'; +COMMENT ON COLUMN tbl_data_metadata_column.data_length IS '数据长度'; +COMMENT ON COLUMN tbl_data_metadata_column.data_precision IS '数据精度'; +COMMENT ON COLUMN tbl_data_metadata_column.data_scale IS '数据小数位'; +COMMENT ON COLUMN tbl_data_metadata_column.data_default IS '数据默认值'; +COMMENT ON COLUMN tbl_data_metadata_column.conn_id IS '连接ID'; +COMMENT ON TABLE tbl_data_metadata_column IS '【元数据信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_source +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_source; +CREATE TABLE tbl_data_metadata_source ( + source_id int8 NOT NULL AUTO_INCREMENT , + status char(1) NOT NULL, + create_by varchar(50) , + create_time timestamp(6), + create_dept varchar(50) , + update_by varchar(50) , + update_time timestamp(6), + remark varchar(1000) , + db_type char(1) NOT NULL, + source_name varchar(50) NOT NULL, + is_sync char(1) , + db_schema varchar(500) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0', + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_metadata_source.source_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_metadata_source.status IS '状态(0正常,1停用)'; +COMMENT ON COLUMN tbl_data_metadata_source.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_metadata_source.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_metadata_source.create_dept IS '创建人所属部门'; +COMMENT ON COLUMN tbl_data_metadata_source.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_metadata_source.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_metadata_source.remark IS '备注'; +COMMENT ON COLUMN tbl_data_metadata_source.db_type IS '数据源类型'; +COMMENT ON COLUMN tbl_data_metadata_source.source_name IS '数据源名称'; +COMMENT ON COLUMN tbl_data_metadata_source.is_sync IS '元数据同步(0已同步 1同步中 2未同步)'; +COMMENT ON COLUMN tbl_data_metadata_source.db_schema IS '数据源连接信息'; +COMMENT ON COLUMN tbl_data_metadata_source.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_metadata_source.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_metadata_source.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_metadata_source.conn_id IS '连接id'; +COMMENT ON TABLE tbl_data_metadata_source IS '【数据源信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_source_conn +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_source_conn; +CREATE TABLE tbl_data_metadata_source_conn ( + conn_id int8 NOT NULL AUTO_INCREMENT , + db_type char(1) NOT NULL, + host varchar(20) NOT NULL, + port int4 NOT NULL, + username varchar(50) NOT NULL, + password varchar(50) NOT NULL, + create_by varchar(50) , + create_time timestamp(6), + update_by varchar(50) , + update_time timestamp(6), + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0', + remark varchar(1000) , + sid varchar(255) , + init_source varchar(50) NOT NULL, + alias_name varchar(255) +) +; +COMMENT ON COLUMN tbl_data_metadata_source_conn.conn_id IS 'id'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.db_type IS '数据源类型'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.host IS 'ip地址'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.port IS '端口'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.username IS '用户名'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.password IS '密码'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.del_flag IS '【删除标志】0代表存在 1代表删除'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.init_source IS '初始数据源'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.alias_name IS '别名'; +COMMENT ON TABLE tbl_data_metadata_source_conn IS '数据源连接信息表'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_table +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_table; +CREATE TABLE tbl_data_metadata_table ( + table_id int8 NOT NULL AUTO_INCREMENT , + source_id int8 NOT NULL, + table_name varchar(255) NOT NULL, + table_comment varchar(255) , + create_table_by varchar(50) , + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_metadata_table.table_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_metadata_table.source_id IS '所属数据源'; +COMMENT ON COLUMN tbl_data_metadata_table.table_name IS '表名'; +COMMENT ON COLUMN tbl_data_metadata_table.table_comment IS '表注释'; +COMMENT ON COLUMN tbl_data_metadata_table.create_table_by IS '表创建人'; +COMMENT ON COLUMN tbl_data_metadata_table.conn_id IS '连接ID'; +COMMENT ON TABLE tbl_data_metadata_table IS '【数据库表信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_console_conn_num +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_console_conn_num; +CREATE TABLE tbl_data_sql_console_conn_num ( + conn_num int4 NOT NULL DEFAULT 0, + max_conn_num int4 NOT NULL, + alarm_conn_num int4 NOT NULL +) +; +COMMENT ON COLUMN tbl_data_sql_console_conn_num.conn_num IS '数据源连接数'; +COMMENT ON COLUMN tbl_data_sql_console_conn_num.max_conn_num IS '最大连接数'; +COMMENT ON COLUMN tbl_data_sql_console_conn_num.alarm_conn_num IS '告警连接数'; +COMMENT ON TABLE tbl_data_sql_console_conn_num IS '数据源连接数'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_console_export +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_console_export; +CREATE TABLE tbl_data_sql_console_export ( + export_id int8 NOT NULL AUTO_INCREMENT , + export_name varchar(200) NOT NULL, + sql_text varchar(2000) , + status char(1) NOT NULL, + fail_reason varchar(1000) , + user_id int8 NOT NULL, + create_by varchar(50) , + create_time timestamp(0), + update_by varchar(50) , + update_time timestamp(0) DEFAULT now(), + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0' +) +; +COMMENT ON COLUMN tbl_data_sql_console_export.export_id IS '导出文件ID'; +COMMENT ON COLUMN tbl_data_sql_console_export.export_name IS '导出文件名'; +COMMENT ON COLUMN tbl_data_sql_console_export.sql_text IS 'SQL文本'; +COMMENT ON COLUMN tbl_data_sql_console_export.status IS '状态:1导出中,2导出完成,3导出失败,4已取消'; +COMMENT ON COLUMN tbl_data_sql_console_export.fail_reason IS '失败原因'; +COMMENT ON COLUMN tbl_data_sql_console_export.user_id IS '用户ID'; +COMMENT ON COLUMN tbl_data_sql_console_export.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_sql_console_export.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_sql_console_export.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_sql_console_export.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_sql_console_export.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_sql_console_export.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_sql_console_export.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON TABLE tbl_data_sql_console_export IS 'SQL查询导出记录'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_console_file +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_console_file; +CREATE TABLE tbl_data_sql_console_file ( + file_id int8 NOT NULL AUTO_INCREMENT , + name varchar(255) NOT NULL, + source_id int8 NOT NULL, + sql_text text , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6), + del_flag char(1) DEFAULT '0', + user_id int8 NOT NULL, + pid int8 NOT NULL DEFAULT 0, + type char(1) NOT NULL DEFAULT 1, + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_sql_console_file.file_id IS '【文件ID】'; +COMMENT ON COLUMN tbl_data_sql_console_file.name IS '【文件名】'; +COMMENT ON COLUMN tbl_data_sql_console_file.source_id IS '【数据元ID】'; +COMMENT ON COLUMN tbl_data_sql_console_file.sql_text IS '【SQL语句】'; +COMMENT ON COLUMN tbl_data_sql_console_file.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_data_sql_console_file.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_data_sql_console_file.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_data_sql_console_file.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_data_sql_console_file.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_data_sql_console_file.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_data_sql_console_file.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_sql_console_file.user_id IS '【用户id】'; +COMMENT ON COLUMN tbl_data_sql_console_file.pid IS '【父id】'; +COMMENT ON COLUMN tbl_data_sql_console_file.type IS '【类型】0文件夹 1文件'; +COMMENT ON COLUMN tbl_data_sql_console_file.conn_id IS '数据源连接ID'; +COMMENT ON TABLE tbl_data_sql_console_file IS '【SQL工作台文件】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_data_apply +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_data_apply; +CREATE TABLE tbl_data_sql_data_apply ( + apply_id int8 NOT NULL AUTO_INCREMENT , + user_id int8 NOT NULL, + data_check_strictly char(1) DEFAULT '1', + end_time date NOT NULL, + explain text , + status char(1) DEFAULT '0', + reviewer varchar(255) , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + del_flag varchar(1) DEFAULT '0', + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) , + reason varchar(255) , + user_name varchar(255) , + review_time timestamp(0), + apply_no varchar(32) +) +; +COMMENT ON COLUMN tbl_data_sql_data_apply.apply_id IS '【申请id】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.user_id IS '【用户id】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.data_check_strictly IS '【数据树选择项是否关联显示】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.end_time IS '【到期时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.explain IS '【申请说明】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.status IS '【审批状态】0 待审批 1审批通过 2审批拒绝'; +COMMENT ON COLUMN tbl_data_sql_data_apply.reviewer IS '【审批人】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_sql_data_apply.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.remark IS '【备注】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.reason IS '【拒绝原因】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.user_name IS '【用户名】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.review_time IS '【审批时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.apply_no IS '申请单号'; +COMMENT ON TABLE tbl_data_sql_data_apply IS '【SQL元数据权限申请表】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_data_auth +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_data_auth; +CREATE TABLE tbl_data_sql_data_auth ( + object_id int8 NOT NULL, + user_id int8 NOT NULL, + object_type varchar(10) NOT NULL, + apply_id int8 NOT NULL, + par_id int8, + object_name varchar(255) +) +; +COMMENT ON COLUMN tbl_data_sql_data_auth.object_id IS '目标表主键ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.user_id IS '用户ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.object_type IS '目标表类型'; +COMMENT ON COLUMN tbl_data_sql_data_auth.apply_id IS '权限申请表ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.par_id IS '父ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.object_name IS '目标表名称'; +COMMENT ON TABLE tbl_data_sql_data_auth IS '【元数据授权信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_log; +CREATE TABLE tbl_data_sql_log ( + sql_log_id int8 NOT NULL AUTO_INCREMENT , + db_type char(2) , + db_name varchar(255) , + sql_text text , + status char(1) , + fail_reason text , + start_time timestamp(6), + end_time timestamp(6), + total_times int8 +) +; +COMMENT ON COLUMN tbl_data_sql_log.sql_log_id IS 'SQL日志id'; +COMMENT ON COLUMN tbl_data_sql_log.db_type IS '数据库类型'; +COMMENT ON COLUMN tbl_data_sql_log.db_name IS '数据库名称'; +COMMENT ON COLUMN tbl_data_sql_log.sql_text IS 'SQL语句'; +COMMENT ON COLUMN tbl_data_sql_log.status IS '状态:1成功 2失败'; +COMMENT ON COLUMN tbl_data_sql_log.fail_reason IS '失败原因'; +COMMENT ON COLUMN tbl_data_sql_log.start_time IS 'SQL执行开始时间'; +COMMENT ON COLUMN tbl_data_sql_log.end_time IS 'SQL执行结束时间'; +COMMENT ON COLUMN tbl_data_sql_log.total_times IS 'SQL执行总耗时'; +COMMENT ON TABLE tbl_data_sql_log IS 'SQL执行日志'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_info +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_info; +CREATE TABLE tbl_docker_apply_info ( + apply_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_server_id int8 NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + apply_desc varchar(1000) NOT NULL, + lab_title varchar(100) NOT NULL, + service_type varchar(100) NOT NULL, + docker_image_name varchar(200) NOT NULL, + usage_time varchar(10) NOT NULL, + usage_time_unit varchar(10) NOT NULL, + start_date timestamp(0), + end_date timestamp(0), + delay_times varchar(2) , + cpu_limits varchar(10) NOT NULL, + cpu_seq varchar(10) , + memory_limits varchar(10) NOT NULL, + disc_limits varchar(10) NOT NULL, + remarks varchar(1000) , + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + release_flag varchar(1) , + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_info.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_info.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_info.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_info.docker_server_id IS '【 服务器id】'; +COMMENT ON COLUMN tbl_docker_apply_info.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_apply_info.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_apply_info.apply_desc IS '【 申请原因】'; +COMMENT ON COLUMN tbl_docker_apply_info.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_apply_info.service_type IS '【 服务类型】'; +COMMENT ON COLUMN tbl_docker_apply_info.docker_image_name IS '【 使用镜像】'; +COMMENT ON COLUMN tbl_docker_apply_info.usage_time IS '【 申请时效】'; +COMMENT ON COLUMN tbl_docker_apply_info.usage_time_unit IS '【 时间单位】'; +COMMENT ON COLUMN tbl_docker_apply_info.start_date IS '【开始时间】系统计算,到小时吧'; +COMMENT ON COLUMN tbl_docker_apply_info.end_date IS '【结束时间】系统计算,到小时吧'; +COMMENT ON COLUMN tbl_docker_apply_info.delay_times IS '【延期次数】系统计算'; +COMMENT ON COLUMN tbl_docker_apply_info.cpu_limits IS '【 CPU数量】'; +COMMENT ON COLUMN tbl_docker_apply_info.cpu_seq IS '【cpu序号】绝对分配时固定内核,比如只能用0,1内核'; +COMMENT ON COLUMN tbl_docker_apply_info.memory_limits IS '【 内存大小】'; +COMMENT ON COLUMN tbl_docker_apply_info.disc_limits IS '【 磁盘大小】'; +COMMENT ON COLUMN tbl_docker_apply_info.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_apply_info.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_info.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_info.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_info.release_flag IS '【是否发布】'; +COMMENT ON COLUMN tbl_docker_apply_info.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_apply_info.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_info.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_info.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_info.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_info.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_info.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_info.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_info.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_info.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_info.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_info IS '【 容器申请】'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_lib +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_lib; +CREATE TABLE tbl_docker_apply_lib ( + apply_lib_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_id int8 NOT NULL, + lib_type varchar(20) NOT NULL, + lib_desc text , + file_id int8 NOT NULL, + data_source_type varchar(1) NOT NULL, + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + plugin_names varchar(3000) , + handle_result varchar(2000) , + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_lib.apply_lib_id IS '【申请组件id】'; +COMMENT ON COLUMN tbl_docker_apply_lib.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_lib.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.lib_type IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.lib_desc IS '【内容说明】'; +COMMENT ON COLUMN tbl_docker_apply_lib.file_id IS '【 文件id】'; +COMMENT ON COLUMN tbl_docker_apply_lib.data_source_type IS '【数据来源】1系统提供的,2用户自己的'; +COMMENT ON COLUMN tbl_docker_apply_lib.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_lib.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_lib.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_lib.plugin_names IS '【组件真实名】打算记录一下里面的组件真实name'; +COMMENT ON COLUMN tbl_docker_apply_lib.handle_result IS '【处理结果】组件上传和安装具体结果描述'; +COMMENT ON COLUMN tbl_docker_apply_lib.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_apply_lib.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_lib.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_lib.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_lib.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_lib.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_lib IS '【容器使用自传组件】包含组件和数据'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_review +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_review; +CREATE TABLE tbl_docker_apply_review ( + review_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_remark varchar(1000) NOT NULL, + apply_id int8 NOT NULL, + lab_title varchar(100) NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + remarks varchar(1000) , + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_review.review_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_review.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_review.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_remark IS '【 申请原因】'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_id IS '【 实验室编号】'; +COMMENT ON COLUMN tbl_docker_apply_review.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_apply_review.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_apply_review.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_review.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_review.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_review.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_review.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_review.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_review.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_review.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_review.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_review.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_review.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_review IS '【 数据注入申请审核表】'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_review_dtl +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_review_dtl; +CREATE TABLE tbl_docker_apply_review_dtl ( + review_dtl_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + review_id int8 NOT NULL, + lib_type varchar(20) NOT NULL, + lib_desc text , + file_id int8 NOT NULL, + data_source_type varchar(1) NOT NULL, + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_dtl_id IS '【申请明细id】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.lib_type IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.lib_desc IS '【内容说明】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.file_id IS '【 文件id】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.data_source_type IS '【数据来源】1系统提供的,2用户自己的'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_review_dtl IS '【数据注入申请明细】包含组件和数据'; + +-- ---------------------------- +-- Table structure for tbl_docker_client_info +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_client_info; +CREATE TABLE tbl_docker_client_info ( + docker_server_id int4 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_server_name varchar(100) NOT NULL, + docker_server_ip varchar(100) NOT NULL, + docker_server_port varchar(100) , + docker_server_username varchar(100) , + docker_server_password varchar(100) , + cpu_limits varchar(10) , + memory_limits varchar(10) , + disc_limits varchar(10) , + used_cpu_limits varchar(10) , + used_memory_limits varchar(10) , + used_disc_limits varchar(10) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_id IS '【 服务器主键ID】'; +COMMENT ON COLUMN tbl_docker_client_info.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_client_info.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_name IS '【 服务器名称】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_ip IS '【 服务器IP】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_port IS '【 服务器port】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_username IS '【 服务器账户】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_password IS '【 服务器密码】'; +COMMENT ON COLUMN tbl_docker_client_info.cpu_limits IS '【 CPU数量】'; +COMMENT ON COLUMN tbl_docker_client_info.memory_limits IS '【 内存大小】'; +COMMENT ON COLUMN tbl_docker_client_info.disc_limits IS '【 磁盘大小】'; +COMMENT ON COLUMN tbl_docker_client_info.used_cpu_limits IS '【 使用CPU大小】'; +COMMENT ON COLUMN tbl_docker_client_info.used_memory_limits IS '【 使用内存大小】'; +COMMENT ON COLUMN tbl_docker_client_info.used_disc_limits IS '【 使用磁盘大小】'; +COMMENT ON COLUMN tbl_docker_client_info.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_client_info.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_client_info.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_client_info.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_client_info.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_client_info.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_client_info.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_client_info.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_client_info.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_client_info IS '【 服务器清单】'; + +-- ---------------------------- +-- Table structure for tbl_docker_config_hardware +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_config_hardware; +CREATE TABLE tbl_docker_config_hardware ( + config_id int8 NOT NULL AUTO_INCREMENT , + cpu int4 NOT NULL, + core_num int4 NOT NULL, + disk int4 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + order_num int4 DEFAULT 0, + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_config_hardware.config_id IS '【硬件配置id】'; +COMMENT ON COLUMN tbl_docker_config_hardware.cpu IS '【cpu大小】,单位G'; +COMMENT ON COLUMN tbl_docker_config_hardware.core_num IS '【内存】单位G'; +COMMENT ON COLUMN tbl_docker_config_hardware.disk IS '【磁盘大小】单位G'; +COMMENT ON COLUMN tbl_docker_config_hardware.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_config_hardware.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_config_hardware.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_config_hardware.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_config_hardware.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_config_hardware.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_config_hardware.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_config_hardware.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_config_hardware.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_config_hardware.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_config_hardware.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_config_hardware IS '【实验室硬件配置信息表】'; + +-- ---------------------------- +-- Table structure for tbl_docker_download_apply +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_download_apply; +CREATE TABLE tbl_docker_download_apply ( + download_apply_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_id int8 NOT NULL, + lab_title varchar(100) NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + apply_desc varchar(1000) NOT NULL, + file_name varchar(200) , + file_size varchar(20) , + file_last_time varchar(50) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_download_apply.download_apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_download_apply.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_id IS '【 关联主键ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_desc IS '【 申请原因】'; +COMMENT ON COLUMN tbl_docker_download_apply.file_name IS '【文件名】'; +COMMENT ON COLUMN tbl_docker_download_apply.file_size IS '【文件大小】'; +COMMENT ON COLUMN tbl_docker_download_apply.file_last_time IS '【文件更新时间】防止修改,最后下载的时候要校验'; +COMMENT ON COLUMN tbl_docker_download_apply.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_download_apply.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_download_apply.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_download_apply.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_download_apply.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_download_apply.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_download_apply.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_download_apply.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_download_apply.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_download_apply.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_download_apply.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_download_apply.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_download_apply.rsv3 IS '【备用字段2】'; +COMMENT ON TABLE tbl_docker_download_apply IS '【 下载文件申请】容器内的文件下载'; + +-- ---------------------------- +-- Table structure for tbl_docker_images +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_images; +CREATE TABLE tbl_docker_images ( + docker_image_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_image_name varchar(200) NOT NULL, + service_type varchar(100) NOT NULL, + docker_image_desc varchar(2000) NOT NULL, + file_id int8, + remarks varchar(1000) , + order_num int4 DEFAULT 0, + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_images.docker_image_id IS '【 镜像主键id】'; +COMMENT ON COLUMN tbl_docker_images.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_images.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_images.docker_image_name IS '【 镜像名称】'; +COMMENT ON COLUMN tbl_docker_images.service_type IS '【 服务类型】镜像里是可以有多个服务的'; +COMMENT ON COLUMN tbl_docker_images.docker_image_desc IS '【 镜像说明】'; +COMMENT ON COLUMN tbl_docker_images.file_id IS '【 组件id】'; +COMMENT ON COLUMN tbl_docker_images.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_images.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_images.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_images.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_images.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_images.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_images.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_images.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_images.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_images.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_images IS '【 容器可用镜像】'; + +-- ---------------------------- +-- Table structure for tbl_docker_port_list +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_port_list; +CREATE TABLE tbl_docker_port_list ( + docker_port_id int8 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_server_id int8 NOT NULL, + docker_server_port varchar(10) , + url_path varchar(100) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_port_list.docker_port_id IS '【 端口主键ID】'; +COMMENT ON COLUMN tbl_docker_port_list.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_port_list.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_port_list.docker_server_id IS '【 服务器id】'; +COMMENT ON COLUMN tbl_docker_port_list.docker_server_port IS '【端口号】'; +COMMENT ON COLUMN tbl_docker_port_list.url_path IS '【映射路径】和端口对应的域名'; +COMMENT ON COLUMN tbl_docker_port_list.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_port_list.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_port_list.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_port_list.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_port_list.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_port_list.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_port_list.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_port_list.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_port_list.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_port_list IS '【 服务器端口】把可用端口配置在这里,端口是固定的几个'; + +-- ---------------------------- +-- Table structure for tbl_docker_portainer_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_portainer_user; +CREATE TABLE tbl_docker_portainer_user ( + docker_account_id int8 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + api_http varchar(100) NOT NULL, + api_key varchar(500) , + admin_username varchar(32) , + admin_password varchar(100) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_portainer_user.docker_account_id IS '【 账户主键id】'; +COMMENT ON COLUMN tbl_docker_portainer_user.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_portainer_user.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_portainer_user.api_http IS '【 API地址】'; +COMMENT ON COLUMN tbl_docker_portainer_user.api_key IS '【 API密钥】'; +COMMENT ON COLUMN tbl_docker_portainer_user.admin_username IS '【 账户】'; +COMMENT ON COLUMN tbl_docker_portainer_user.admin_password IS '【 密码】'; +COMMENT ON COLUMN tbl_docker_portainer_user.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_portainer_user.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_portainer_user.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_portainer_user.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_portainer_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_portainer_user.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_portainer_user.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_portainer_user.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_portainer_user.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_portainer_user IS '【portainer管理账户信息】'; + +-- ---------------------------- +-- Table structure for tbl_docker_vpn +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_vpn; +CREATE TABLE tbl_docker_vpn ( + vpn_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + vpn_ip varchar(150) , + vpn_username varchar(100) , + vpn_password varchar(100) , + fortress_ip varchar(200) , + fortress_username varchar(100) , + fortress_password varchar(100) , + apply_id int8, + lab_title varchar(100) , + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + start_date timestamp(0), + end_date timestamp(0), + send_flag varchar(1) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_vpn.vpn_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_docker_vpn.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_docker_vpn.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_docker_vpn.vpn_ip IS '【VPN地址】'; +COMMENT ON COLUMN tbl_docker_vpn.vpn_username IS '【账户名】'; +COMMENT ON COLUMN tbl_docker_vpn.vpn_password IS '【密码】'; +COMMENT ON COLUMN tbl_docker_vpn.fortress_ip IS '【堡垒机地址】'; +COMMENT ON COLUMN tbl_docker_vpn.fortress_username IS '【堡垒机账户】'; +COMMENT ON COLUMN tbl_docker_vpn.fortress_password IS '【堡垒机密码】'; +COMMENT ON COLUMN tbl_docker_vpn.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_vpn.lab_title IS '【实验室名称】'; +COMMENT ON COLUMN tbl_docker_vpn.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_vpn.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_vpn.start_date IS '【生效时间】'; +COMMENT ON COLUMN tbl_docker_vpn.end_date IS '【到期时间】'; +COMMENT ON COLUMN tbl_docker_vpn.send_flag IS '【推送标志】'; +COMMENT ON COLUMN tbl_docker_vpn.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_docker_vpn.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_docker_vpn.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_docker_vpn.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_vpn.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_docker_vpn.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_docker_vpn.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_docker_vpn.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_docker_vpn.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_vpn.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_vpn.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_vpn IS '【VPN用户表】'; + +-- ---------------------------- +-- Table structure for tbl_docker_with_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_with_user; +CREATE TABLE tbl_docker_with_user ( + apply_id int8 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + lab_title varchar(100) NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + docker_container_id varchar(100) NOT NULL, + docker_server_id int8 NOT NULL, + remarks varchar(200) , + order_num int4 DEFAULT 0, + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_with_user.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_with_user.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_with_user.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_with_user.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_with_user.apply_user_id IS '【 用户id】'; +COMMENT ON COLUMN tbl_docker_with_user.apply_user_name IS '【 用户】'; +COMMENT ON COLUMN tbl_docker_with_user.docker_container_id IS '【 容器id】'; +COMMENT ON COLUMN tbl_docker_with_user.docker_server_id IS '【 服务器id】'; +COMMENT ON COLUMN tbl_docker_with_user.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_with_user.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_with_user.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_with_user.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_with_user.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_with_user.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_with_user.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_with_user.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_with_user.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_with_user.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_with_user.rsv3 IS '【备用字段2】'; +COMMENT ON TABLE tbl_docker_with_user IS '【 用户与容器信息】'; + +-- ---------------------------- +-- Table structure for tbl_docker_with_user_account +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_with_user_account; +CREATE TABLE tbl_docker_with_user_account ( + account_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_id int8 NOT NULL, + service_type varchar(50) NOT NULL, + login_url varchar(200) NOT NULL, + login_username varchar(100) , + login_password varchar(100) , + docker_port_id int8 NOT NULL, + remarks varchar(200) , + order_num int4 DEFAULT 0, + bus_status varchar(2) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_with_user_account.account_id IS '【 账户主键id】'; +COMMENT ON COLUMN tbl_docker_with_user_account.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_with_user_account.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.service_type IS '【 服务类型】'; +COMMENT ON COLUMN tbl_docker_with_user_account.login_url IS '【 访问地址】'; +COMMENT ON COLUMN tbl_docker_with_user_account.login_username IS '【 账户】'; +COMMENT ON COLUMN tbl_docker_with_user_account.login_password IS '【 密码】'; +COMMENT ON COLUMN tbl_docker_with_user_account.docker_port_id IS '【 端口主键ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_with_user_account.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_with_user_account.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_with_user_account.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_with_user_account.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_with_user_account.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_with_user_account.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_with_user_account.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_with_user_account IS '【 容器用户账户信息】设计成允许多个服务'; + +-- ---------------------------- +-- Table structure for tbl_org_api_auth +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_api_auth; +CREATE TABLE tbl_org_api_auth ( + id int8 NOT NULL AUTO_INCREMENT , + org_no varchar(255) NOT NULL, + api_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_org_api_auth.id IS '【ID】'; +COMMENT ON COLUMN tbl_org_api_auth.org_no IS '【机构号】'; +COMMENT ON COLUMN tbl_org_api_auth.api_id IS '【接口API ID】'; +COMMENT ON TABLE tbl_org_api_auth IS '【机构接口权限表】'; + +-- ---------------------------- +-- Table structure for tbl_org_config +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_config; +CREATE TABLE tbl_org_config ( + config_id int8 NOT NULL AUTO_INCREMENT , + org_no varchar(64) NOT NULL, + config_key varchar(64) , + config_desc varchar(500) , + config_value varchar(50) , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6), + del_flag char(1) NOT NULL DEFAULT '0', + status char(1) NOT NULL DEFAULT '0' +) +; +COMMENT ON COLUMN tbl_org_config.config_id IS 'ID'; +COMMENT ON COLUMN tbl_org_config.org_no IS '机构号'; +COMMENT ON COLUMN tbl_org_config.config_key IS '配置项'; +COMMENT ON COLUMN tbl_org_config.config_desc IS '配置名称'; +COMMENT ON COLUMN tbl_org_config.config_value IS '配置值'; +COMMENT ON COLUMN tbl_org_config.version_num IS '版本号'; +COMMENT ON COLUMN tbl_org_config.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_org_config.create_by IS '创建者'; +COMMENT ON COLUMN tbl_org_config.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_org_config.update_by IS '更新者'; +COMMENT ON COLUMN tbl_org_config.update_time IS '更新时间'; +COMMENT ON COLUMN tbl_org_config.del_flag IS '【删除标志】0代表存在 1代表删除'; +COMMENT ON COLUMN tbl_org_config.status IS '【状态】0正常 1停用'; +COMMENT ON TABLE tbl_org_config IS '【机构配置表】'; + +-- ---------------------------- +-- Table structure for tbl_org_info +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_info; +CREATE TABLE tbl_org_info ( + org_no varchar(64) NOT NULL, + org_name varchar(255) NOT NULL, + org_type varchar(2) NOT NULL, + org_desc varchar(255) , + salt varchar(255) NOT NULL, + encrypt varchar(1024) NOT NULL, + start_time date NOT NULL, + end_time date NOT NULL, + status char(1) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + create_by varchar(64) , + create_by_name varchar(100) , + create_time timestamp(0), + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + del_flag char(1) DEFAULT '0', + ip varchar(64) , + contract_tel varchar(100) , + data_begin date, + data_end date, + member_id varchar(64) +) +; +COMMENT ON COLUMN tbl_org_info.org_no IS '【机构号】'; +COMMENT ON COLUMN tbl_org_info.org_name IS '【机构名称】'; +COMMENT ON COLUMN tbl_org_info.org_type IS '【机构类型】'; +COMMENT ON COLUMN tbl_org_info.org_desc IS '【机构描述】'; +COMMENT ON COLUMN tbl_org_info.salt IS '【加盐】'; +COMMENT ON COLUMN tbl_org_info.encrypt IS '【加密】'; +COMMENT ON COLUMN tbl_org_info.start_time IS '【生效时间】'; +COMMENT ON COLUMN tbl_org_info.end_time IS '【到期时间】'; +COMMENT ON COLUMN tbl_org_info.status IS '【状态】0正常 1停用 2到期'; +COMMENT ON COLUMN tbl_org_info.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_org_info.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_org_info.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_org_info.create_by_name IS '【创建人】'; +COMMENT ON COLUMN tbl_org_info.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_org_info.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_org_info.update_by_name IS '【更新人】'; +COMMENT ON COLUMN tbl_org_info.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_org_info.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_org_info.ip IS '【ip白名单】'; +COMMENT ON COLUMN tbl_org_info.contract_tel IS '【联系人电话】'; +COMMENT ON COLUMN tbl_org_info.data_begin IS '【数据起始时间】'; +COMMENT ON COLUMN tbl_org_info.data_end IS '【数据结束时间】'; +COMMENT ON COLUMN tbl_org_info.member_id IS '【用户ID】'; +COMMENT ON TABLE tbl_org_info IS '【机构管理信息表】'; + +-- ---------------------------- +-- Table structure for tbl_org_statistics +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_statistics; +CREATE TABLE tbl_org_statistics ( + id int8 NOT NULL AUTO_INCREMENT , + org_no varchar(64) NOT NULL, + org_name varchar(255) , + api_id int4, + success_total int4, + fail_total int4, + api_name varchar(255) , + create_time timestamp(0), + create_by varchar(100) , + update_time timestamp(0), + update_by varchar(100) , + version_num int4 DEFAULT 0, + rec_token varchar(100) DEFAULT '1', + del_flag char(1) +) +; +COMMENT ON COLUMN tbl_org_statistics.org_no IS '机构号'; +COMMENT ON COLUMN tbl_org_statistics.org_name IS '机构名称'; +COMMENT ON COLUMN tbl_org_statistics.api_id IS 'API ID'; +COMMENT ON COLUMN tbl_org_statistics.success_total IS '成功次数'; +COMMENT ON COLUMN tbl_org_statistics.fail_total IS '失败次数'; +COMMENT ON COLUMN tbl_org_statistics.api_name IS '接口名称'; +COMMENT ON COLUMN tbl_org_statistics.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_org_statistics.create_by IS '创建人'; +COMMENT ON COLUMN tbl_org_statistics.update_time IS '更新时间'; +COMMENT ON COLUMN tbl_org_statistics.update_by IS '更新人'; +COMMENT ON COLUMN tbl_org_statistics.version_num IS '版本号'; +COMMENT ON COLUMN tbl_org_statistics.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_org_statistics.del_flag IS '是否删除【0否,1是】'; +COMMENT ON TABLE tbl_org_statistics IS '接口调用次数统计'; + +-- ---------------------------- +-- Table structure for tbl_portal_content +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_content; +CREATE TABLE tbl_portal_content ( + content_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + content_title varchar(200) , + content_text text , + content_type varchar(2) , + show_type varchar(2) , + remarks varchar(1000) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + sort int4, + show_index char(1) , + subtitle varchar(50) , + img_url varchar(255) +) +; +COMMENT ON COLUMN tbl_portal_content.content_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_portal_content.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_portal_content.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_portal_content.content_title IS '【标题】'; +COMMENT ON COLUMN tbl_portal_content.content_text IS '【内容】'; +COMMENT ON COLUMN tbl_portal_content.content_type IS '【类型】'; +COMMENT ON COLUMN tbl_portal_content.show_type IS '【展示类型】'; +COMMENT ON COLUMN tbl_portal_content.remarks IS '【文件备注】'; +COMMENT ON COLUMN tbl_portal_content.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_portal_content.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_portal_content.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_portal_content.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_portal_content.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_portal_content.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_portal_content.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_portal_content.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_portal_content.sort IS '【排序】'; +COMMENT ON COLUMN tbl_portal_content.show_index IS '【首页播报】0展示 1不展示'; +COMMENT ON COLUMN tbl_portal_content.subtitle IS '副标题'; +COMMENT ON COLUMN tbl_portal_content.img_url IS '图片地址'; +COMMENT ON TABLE tbl_portal_content IS '【门户内容表】'; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2023 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2023; +CREATE TABLE tbl_portal_logininfor_2023 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2024; +CREATE TABLE tbl_portal_logininfor_2024 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2025; +CREATE TABLE tbl_portal_logininfor_2025 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2026; +CREATE TABLE tbl_portal_logininfor_2026 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2027; +CREATE TABLE tbl_portal_logininfor_2027 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2028; +CREATE TABLE tbl_portal_logininfor_2028 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2029; +CREATE TABLE tbl_portal_logininfor_2029 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2030 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2030; +CREATE TABLE tbl_portal_logininfor_2030 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2031 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2031; +CREATE TABLE tbl_portal_logininfor_2031 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2032 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2032; +CREATE TABLE tbl_portal_logininfor_2032 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_copy1 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_copy1; +CREATE TABLE tbl_portal_logininfor_copy1 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.info_id IS '【访问ID】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.ipaddr IS '【登录IP地址】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.login_location IS '【登录地点】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.browser IS '【浏览器类型】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.os IS '【操作系统】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.status IS '【登录状态】0成功 1失败'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.msg IS '【提示消息】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.login_time IS '【访问时间】'; +COMMENT ON TABLE tbl_portal_logininfor_copy1 IS '【门户登录日志】'; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2023 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2023; +CREATE TABLE tbl_portal_oper_log_2023 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2024; +CREATE TABLE tbl_portal_oper_log_2024 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2025; +CREATE TABLE tbl_portal_oper_log_2025 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2026; +CREATE TABLE tbl_portal_oper_log_2026 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2027; +CREATE TABLE tbl_portal_oper_log_2027 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2028; +CREATE TABLE tbl_portal_oper_log_2028 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2029; +CREATE TABLE tbl_portal_oper_log_2029 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2030 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2030; +CREATE TABLE tbl_portal_oper_log_2030 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2031 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2031; +CREATE TABLE tbl_portal_oper_log_2031 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2032 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2032; +CREATE TABLE tbl_portal_oper_log_2032 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_copy1 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_copy1; +CREATE TABLE tbl_portal_oper_log_copy1 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_id IS '【日志主键】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.title IS '【模块标题】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.business_type IS '【业务类型】0其它 1新增 2修改 3删除'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.method IS '【方法名称】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.request_method IS '【请求方式】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.operator_type IS '【操作类别】0其它 1后台用户 2手机端用户'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_name IS '【操作人员】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_url IS '【请求URL】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_ip IS '【主机地址】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_location IS '【操作地点】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_param IS '【请求参数】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.json_result IS '【返回参数】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.status IS '【操作状态】0正常 1异常'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.error_msg IS '【错误消息】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_time IS '【操作时间】'; +COMMENT ON TABLE tbl_portal_oper_log_copy1 IS '【门户操作日志】'; + +-- ---------------------------- +-- Table structure for tbl_portal_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_user; +CREATE TABLE tbl_portal_user ( + user_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dept_id int8, + user_name varchar(30) NOT NULL, + nick_name varchar(30) NOT NULL, + user_type varchar(2) , + email varchar(200) , + phonenumber varchar(200) , + sex char(1) , + avatar varchar(100) , + password varchar(100) , + enterprise_name varchar(500) , + industry_category varchar(3) , + social_credit_code varchar(50) , + enterprise_industry varchar(500) , + enterprise_address varchar(500) , + status char(1) , + del_flag char(1) DEFAULT '0', + login_ip varchar(128) , + login_date timestamp(6), + is_locked char(1) , + login_error_count int4, + last_login_error_time timestamp(6), + remark varchar(500) , + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + first_flag varchar +) +; +COMMENT ON COLUMN tbl_portal_user.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_portal_user.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_portal_user.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_portal_user.dept_id IS '【所属机构】'; +COMMENT ON COLUMN tbl_portal_user.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_portal_user.nick_name IS '【用户昵称】'; +COMMENT ON COLUMN tbl_portal_user.user_type IS '【用户类型】00系统用户'; +COMMENT ON COLUMN tbl_portal_user.email IS '【用户邮箱】'; +COMMENT ON COLUMN tbl_portal_user.phonenumber IS '【手机号码】'; +COMMENT ON COLUMN tbl_portal_user.sex IS '【用户性别】0男 1女 2未知'; +COMMENT ON COLUMN tbl_portal_user.avatar IS '【头像地址】'; +COMMENT ON COLUMN tbl_portal_user.password IS '【密码】'; +COMMENT ON COLUMN tbl_portal_user.enterprise_name IS '【企业名称】'; +COMMENT ON COLUMN tbl_portal_user.industry_category IS '【行业类别】'; +COMMENT ON COLUMN tbl_portal_user.social_credit_code IS '【社会统一信用代码】'; +COMMENT ON COLUMN tbl_portal_user.enterprise_industry IS '【企业行业】'; +COMMENT ON COLUMN tbl_portal_user.enterprise_address IS '【enterprise_address】'; +COMMENT ON COLUMN tbl_portal_user.status IS '【帐号状态】0正常 1停用'; +COMMENT ON COLUMN tbl_portal_user.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_portal_user.login_ip IS '【最后登录IP】'; +COMMENT ON COLUMN tbl_portal_user.login_date IS '【最后登录时间】'; +COMMENT ON COLUMN tbl_portal_user.is_locked IS '【锁定状态】'; +COMMENT ON COLUMN tbl_portal_user.login_error_count IS '【登陆错误次数】'; +COMMENT ON COLUMN tbl_portal_user.last_login_error_time IS '【登陆错误时间】'; +COMMENT ON COLUMN tbl_portal_user.remark IS '【备注】'; +COMMENT ON COLUMN tbl_portal_user.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_portal_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_portal_user.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_portal_user.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_portal_user.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_portal_user.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_portal_user.first_flag IS '【首次登录标记】null或0表示首次,1非首次'; +COMMENT ON TABLE tbl_portal_user IS '【门户用户信息表】'; + +-- ---------------------------- +-- Table structure for tbl_portal_user_msg +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_user_msg; +CREATE TABLE tbl_portal_user_msg ( + msg_id int8 NOT NULL AUTO_INCREMENT , + user_id int8 NOT NULL, + nike_name varchar(100) , + msg_title varchar(200) , + msg_text text , + msg_type varchar(2) , + msg_status varchar(1) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_user_msg.msg_id IS '【主键id】'; +COMMENT ON COLUMN tbl_portal_user_msg.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_portal_user_msg.nike_name IS '【用户姓名】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_title IS '【消息标题】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_text IS '【消息内容】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_type IS '【消息类型】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_status IS '【消息状态】'; +COMMENT ON COLUMN tbl_portal_user_msg.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_portal_user_msg.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_portal_user_msg.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_portal_user_msg.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_portal_user_msg.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_portal_user_msg.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_portal_user_msg.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_portal_user_msg IS '【用户消息表】'; + +-- ---------------------------- +-- Table structure for tbl_prd_base_line +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_base_line; +CREATE TABLE tbl_prd_base_line ( + line_name varchar(200) NOT NULL, + line_code varchar(6) NOT NULL, + line_no varchar(5) +) +; +COMMENT ON COLUMN tbl_prd_base_line.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_base_line.line_code IS '6位线路编码'; +COMMENT ON COLUMN tbl_prd_base_line.line_no IS '五位线路编码'; + +-- ---------------------------- +-- Table structure for tbl_prd_base_line_station +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_base_line_station; +CREATE TABLE tbl_prd_base_line_station ( + line_code varchar(10) NOT NULL, + line_name varchar(200) NOT NULL, + up varchar(1) NOT NULL, + levels int4 NOT NULL, + level_name varchar(200) NOT NULL, + line_no varchar(10) +) +; +COMMENT ON COLUMN tbl_prd_base_line_station.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_base_line_station.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_base_line_station.up IS '方向'; +COMMENT ON COLUMN tbl_prd_base_line_station.levels IS '站序'; +COMMENT ON COLUMN tbl_prd_base_line_station.level_name IS '站点名称'; +COMMENT ON COLUMN tbl_prd_base_line_station.line_no IS '五位线路编码'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_metric_day; +CREATE TABLE tbl_prd_line_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + line_status varchar(10) NOT NULL, + company_code varchar(100) NOT NULL, + company_name varchar(100) NOT NULL, + service_type varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_status IS '线路状态 0表示暂停营运、1表示启用、2表示撤销'; +COMMENT ON COLUMN tbl_prd_line_metric_day.company_code IS '公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司)'; +COMMENT ON COLUMN tbl_prd_line_metric_day.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_prd_line_metric_day.service_type IS '营运模式 1:高峰线、3:全日线、4:夜宵线'; +COMMENT ON COLUMN tbl_prd_line_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_metric_day IS '统计时间段内的线路客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_metric_hour +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_metric_hour; +CREATE TABLE tbl_prd_line_metric_hour ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + line_status varchar(10) NOT NULL, + company_code varchar(100) NOT NULL, + company_name varchar(100) NOT NULL, + service_type varchar(10) NOT NULL, + metric_hour int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_status IS '线路状态 0表示暂停营运、1表示启用、2表示撤销'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.company_code IS '公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司)'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.service_type IS '营运模式 1:高峰线、3:全日线、4:夜宵线'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.metric_hour IS '指标小时'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_no IS '五位线路编码'; +COMMENT ON TABLE tbl_prd_line_metric_hour IS '统计时间段内的线路客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_metric_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_metric_month; +CREATE TABLE tbl_prd_line_metric_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + line_status varchar(10) NOT NULL, + company_code varchar(100) NOT NULL, + company_name varchar(100) NOT NULL, + service_type varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_status IS '线路状态 0表示暂停营运、1表示启用、2表示撤销'; +COMMENT ON COLUMN tbl_prd_line_metric_month.company_code IS '公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司)'; +COMMENT ON COLUMN tbl_prd_line_metric_month.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_prd_line_metric_month.service_type IS '营运模式 1:高峰线、3:全日线、4:夜宵线'; +COMMENT ON COLUMN tbl_prd_line_metric_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_line_metric_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_metric_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_metric_month IS '统计时间段内的线路客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_metric_day; +CREATE TABLE tbl_prd_line_station_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + level_name varchar(100) NOT NULL, + levels int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_metric_day IS '统计时间段内的线路站点客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_metric_hour +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_metric_hour; +CREATE TABLE tbl_prd_line_station_metric_hour ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + level_name varchar(100) NOT NULL, + metric_hour int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.metric_hour IS '指标小时'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_metric_hour IS '统计时间段内的线路站点客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_metric_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_metric_month; +CREATE TABLE tbl_prd_line_station_metric_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + level_name varchar(100) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_metric_month IS '统计时间段内的线路站点客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_trans_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_trans_day; +CREATE TABLE tbl_prd_line_station_trans_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_trans_day IS '统计时间段内的站点换乘量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_trans_hour +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_trans_hour; +CREATE TABLE tbl_prd_line_station_trans_hour ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_hour int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.metric_hour IS '指标小时'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_trans_hour IS '统计时间段内的站点换乘量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_trans_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_trans_month; +CREATE TABLE tbl_prd_line_station_trans_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_trans_month IS '统计时间段内的站点换乘量'; + +-- ---------------------------- +-- Table structure for tbl_prd_route_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_route_metric_day; +CREATE TABLE tbl_prd_route_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + license_plate varchar(100) NOT NULL, + driver_code varchar(100) NOT NULL, + bus_code varchar(100) , + start_station varchar(100) NOT NULL, + start_time timestamp(6) NOT NULL, + end_station varchar(100) NOT NULL, + arrival_time timestamp(6) NOT NULL, + waybill_type varchar(100) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_route_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_route_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_route_metric_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_route_metric_day.license_plate IS '车辆牌照'; +COMMENT ON COLUMN tbl_prd_route_metric_day.driver_code IS '司机工号'; +COMMENT ON COLUMN tbl_prd_route_metric_day.bus_code IS '车辆自编码'; +COMMENT ON COLUMN tbl_prd_route_metric_day.start_station IS '起点'; +COMMENT ON COLUMN tbl_prd_route_metric_day.start_time IS '发车时间'; +COMMENT ON COLUMN tbl_prd_route_metric_day.end_station IS '终点'; +COMMENT ON COLUMN tbl_prd_route_metric_day.arrival_time IS '到达时间'; +COMMENT ON COLUMN tbl_prd_route_metric_day.waybill_type IS '路单类型'; +COMMENT ON COLUMN tbl_prd_route_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_route_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_route_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_route_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_route_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_route_metric_day IS '统计时间段内的班次客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_metric_day; +CREATE TABLE tbl_prd_station_freq_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + line_status varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_status IS '线路状态'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_metric_day IS '统计时间段内的站点常乘客刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_metric_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_metric_month; +CREATE TABLE tbl_prd_station_freq_metric_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + line_status varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_status IS '线路状态'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_metric_month IS '统计时间段内的站点常乘客刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_trans_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_trans_day; +CREATE TABLE tbl_prd_station_freq_trans_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_trans_day IS '统计时间段内的站点常乘客换乘刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_trans_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_trans_month; +CREATE TABLE tbl_prd_station_freq_trans_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_trans_month IS '统计时间段内的站点常乘客换乘刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_sync_record +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_sync_record; +CREATE TABLE tbl_prd_sync_record ( + id int8 NOT NULL AUTO_INCREMENT , + path varchar(100) NOT NULL, + table_name varchar(100) NOT NULL, + count int8 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + txn_date date NOT NULL, + data_status varchar(2) NOT NULL DEFAULT '00' +) +; +COMMENT ON COLUMN tbl_prd_sync_record.id IS '主键ID'; +COMMENT ON COLUMN tbl_prd_sync_record.path IS '相对路径-包含文件名'; +COMMENT ON COLUMN tbl_prd_sync_record.table_name IS 'hive表名'; +COMMENT ON COLUMN tbl_prd_sync_record.count IS '文件总记录数'; +COMMENT ON COLUMN tbl_prd_sync_record.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_sync_record.txn_date IS '文件日期'; +COMMENT ON COLUMN tbl_prd_sync_record.data_status IS '数据状态'; + +-- ---------------------------- +-- Table structure for tbl_public_files +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_files; +CREATE TABLE tbl_public_files ( + file_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + uuid varchar(32) NOT NULL, + file_name varchar(500) NOT NULL, + file_extension varchar(50) NOT NULL, + file_size varchar(10) , + file_category_path varchar(200) , + file_type varchar(50) NOT NULL, + file_source_type varchar(20) NOT NULL, + sys_type varchar(20) NOT NULL, + remarks varchar(1000) , + file_busi_id varchar(100) DEFAULT 0, + file_busi_id2 varchar(100) , + file_busi_id3 varchar(100) , + upload_size varchar(20) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_public_files.file_id IS '【文件主键id】'; +COMMENT ON COLUMN tbl_public_files.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_public_files.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_public_files.uuid IS '【UUID】'; +COMMENT ON COLUMN tbl_public_files.file_name IS '【文件名称】'; +COMMENT ON COLUMN tbl_public_files.file_extension IS '【文件后缀名】'; +COMMENT ON COLUMN tbl_public_files.file_size IS '【文件大小】'; +COMMENT ON COLUMN tbl_public_files.file_category_path IS '【文件分类路径】'; +COMMENT ON COLUMN tbl_public_files.file_type IS '【文件类型】'; +COMMENT ON COLUMN tbl_public_files.file_source_type IS '【文件来源】'; +COMMENT ON COLUMN tbl_public_files.sys_type IS '【系统类型】'; +COMMENT ON COLUMN tbl_public_files.remarks IS '【文件备注】'; +COMMENT ON COLUMN tbl_public_files.file_busi_id IS '【关联业务ID】'; +COMMENT ON COLUMN tbl_public_files.file_busi_id2 IS '【关联业务ID2】'; +COMMENT ON COLUMN tbl_public_files.file_busi_id3 IS '【关联业务ID3】'; +COMMENT ON COLUMN tbl_public_files.upload_size IS '【已上传大小】如果要续传的话,那么记录上次中断的位置'; +COMMENT ON COLUMN tbl_public_files.data_status IS '【数据状态】上传时可先处理成98临时,方便清理无用文件'; +COMMENT ON COLUMN tbl_public_files.create_by IS '【创建用户ID】'; +COMMENT ON COLUMN tbl_public_files.create_by_name IS '【创建用户】'; +COMMENT ON COLUMN tbl_public_files.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_files.update_by IS '【更新用户ID】'; +COMMENT ON COLUMN tbl_public_files.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_files.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_files IS '【系统文件表】'; + +-- ---------------------------- +-- Table structure for tbl_public_files_progress +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_files_progress; +CREATE TABLE tbl_public_files_progress ( + file_progress_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + file_id int8 NOT NULL, + uuid varchar(32) NOT NULL, + upload_size varchar(20) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_public_files_progress.file_progress_id IS '【进度主键id】'; +COMMENT ON COLUMN tbl_public_files_progress.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_public_files_progress.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_public_files_progress.file_id IS '【文件主键id】'; +COMMENT ON COLUMN tbl_public_files_progress.uuid IS '【UUID】'; +COMMENT ON COLUMN tbl_public_files_progress.upload_size IS '【已上传大小】如果要续传的话,那么记录上次中断的位置'; +COMMENT ON COLUMN tbl_public_files_progress.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_public_files_progress.create_by IS '【创建用户ID】'; +COMMENT ON COLUMN tbl_public_files_progress.create_by_name IS '【创建用户】'; +COMMENT ON COLUMN tbl_public_files_progress.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_files_progress.update_by IS '【更新用户ID】'; +COMMENT ON COLUMN tbl_public_files_progress.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_files_progress.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_files_progress IS '【文件传输进度表】'; + +-- ---------------------------- +-- Table structure for tbl_public_msg_template +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_msg_template; +CREATE TABLE tbl_public_msg_template ( + template_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + msg_desc varchar(200) , + template_code varchar(100) NOT NULL, + msg_title varchar(200) NOT NULL, + msg_text text NOT NULL, + msg_type varchar(2) NOT NULL, + show_type varchar(2) NOT NULL, + template_type varchar(20) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_public_msg_template.template_id IS '【模板主键id】'; +COMMENT ON COLUMN tbl_public_msg_template.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_public_msg_template.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_public_msg_template.template_code IS '【手机号码】'; +COMMENT ON COLUMN tbl_public_msg_template.msg_title IS '【消息标题】'; +COMMENT ON COLUMN tbl_public_msg_template.msg_text IS '【消息内容】'; +COMMENT ON COLUMN tbl_public_msg_template.msg_type IS '【消息场景】'; +COMMENT ON COLUMN tbl_public_msg_template.show_type IS '【内容形式】'; +COMMENT ON COLUMN tbl_public_msg_template.template_type IS '【模板类型】'; +COMMENT ON COLUMN tbl_public_msg_template.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_public_msg_template.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_public_msg_template.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_public_msg_template.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_msg_template.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_public_msg_template.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_msg_template.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_msg_template IS '【消息模板表】'; + +-- ---------------------------- +-- Table structure for tbl_public_phone_msg_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_phone_msg_log; +CREATE TABLE tbl_public_phone_msg_log ( + msg_id int8 NOT NULL AUTO_INCREMENT , + phone_number varchar(300) NOT NULL, + msg_title varchar(200) , + msg_text text NOT NULL, + msg_type varchar(2) NOT NULL, + send_status varchar(1) NOT NULL, + user_id varchar(64) , + nike_name varchar(100) , + result_error varchar(2500) , + sys_type varchar(20) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_id IS '【主键id】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.phone_number IS '【手机号码】某场景可能有多个,但限制20个'; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_title IS '【消息标题】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_text IS '【消息内容】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_type IS '【消息类型】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.send_status IS '【发送状态】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.user_id IS '【接收用户id】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.nike_name IS '【接收用户姓名】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.result_error IS '【错误描述】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.sys_type IS '【系统类型】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_phone_msg_log IS '【短信记录表】'; + +-- ---------------------------- +-- Table structure for tbl_qa_centime_delay +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_centime_delay; +CREATE TABLE tbl_qa_centime_delay ( + id int8 NOT NULL AUTO_INCREMENT , + time_range varchar(20) NOT NULL, + delay_count int4 NOT NULL, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_centime_delay.id IS '主键'; +COMMENT ON COLUMN tbl_qa_centime_delay.time_range IS '时间范围'; +COMMENT ON COLUMN tbl_qa_centime_delay.delay_count IS '延迟数量'; +COMMENT ON COLUMN tbl_qa_centime_delay.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_centime_delay.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_centime_delay IS '延迟上送比率'; + +-- ---------------------------- +-- Table structure for tbl_qa_pos_match_rate +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_pos_match_rate; +CREATE TABLE tbl_qa_pos_match_rate ( + id int8 NOT NULL AUTO_INCREMENT , + tran_num int4 NOT NULL, + match_num int4 NOT NULL, + match_rate float8, + txn_date date NOT NULL, + create_time timestamp(6) DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_pos_match_rate.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.tran_num IS '交易数量'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.match_num IS '匹配数量'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.match_rate IS '匹配率'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_pos_match_rate IS 'Pos匹配率'; + +-- ---------------------------- +-- Table structure for tbl_qa_route_daily_count +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_route_daily_count; +CREATE TABLE tbl_qa_route_daily_count ( + id int8 NOT NULL AUTO_INCREMENT , + company_name varchar(50) NOT NULL, + route_count int4 NOT NULL, + txn_date date NOT NULL, + company_code varchar(20) NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_route_daily_count.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_route_daily_count.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_qa_route_daily_count.route_count IS '线路数量'; +COMMENT ON COLUMN tbl_qa_route_daily_count.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_route_daily_count.company_code IS '运营公司编码'; +COMMENT ON COLUMN tbl_qa_route_daily_count.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_route_daily_count IS '日营运线路条数'; + +-- ---------------------------- +-- Table structure for tbl_qa_route_miss +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_route_miss; +CREATE TABLE tbl_qa_route_miss ( + id int8 NOT NULL AUTO_INCREMENT , + miss_rate float8, + txn_date date NOT NULL, + route_count int4 NOT NULL, + bus_stop_count int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_route_miss.id IS '主键Id'; +COMMENT ON COLUMN tbl_qa_route_miss.miss_rate IS '缺失率'; +COMMENT ON COLUMN tbl_qa_route_miss.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_route_miss.route_count IS '电子路单数量班次'; +COMMENT ON COLUMN tbl_qa_route_miss.bus_stop_count IS '调离站班次数量'; +COMMENT ON COLUMN tbl_qa_route_miss.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_route_miss IS '班次缺失率'; + +-- ---------------------------- +-- Table structure for tbl_qa_route_turnover_time +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_route_turnover_time; +CREATE TABLE tbl_qa_route_turnover_time ( + id int8 NOT NULL AUTO_INCREMENT , + line_code varchar(10) NOT NULL, + line_name varchar(20) NOT NULL, + turnover_time float8 NOT NULL, + hlow_peak_name varchar(20) NOT NULL, + way_bill_type varchar(20) NOT NULL, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_route_turnover_time.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.line_code IS '线路编码'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.turnover_time IS '平均周转时间'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.hlow_peak_name IS '早晚高峰名称'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.way_bill_type IS '路单类型'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_route_turnover_time IS '班次周转时间'; + +-- ---------------------------- +-- Table structure for tbl_qa_station_miss +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_station_miss; +CREATE TABLE tbl_qa_station_miss ( + id int8 NOT NULL AUTO_INCREMENT , + line_code varchar(10) NOT NULL, + line_name varchar(20) NOT NULL, + license_plate varchar(20) , + driver_code varchar(20) , + start_time timestamp(6) NOT NULL, + arrival_time timestamp(6) NOT NULL, + start_station varchar(50) , + end_station varchar(50) , + up varchar(20) NOT NULL, + way_bill_type varchar(20) NOT NULL, + start_station_levels int4, + end_station_levels int4, + level_num int4, + bus_stop_num int4, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + miss_rate float8 +) +; +COMMENT ON COLUMN tbl_qa_station_miss.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_station_miss.line_code IS '线路编码'; +COMMENT ON COLUMN tbl_qa_station_miss.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_qa_station_miss.license_plate IS '车辆牌照'; +COMMENT ON COLUMN tbl_qa_station_miss.driver_code IS '驾驶员工号'; +COMMENT ON COLUMN tbl_qa_station_miss.start_time IS '发车时间'; +COMMENT ON COLUMN tbl_qa_station_miss.arrival_time IS '到达时间'; +COMMENT ON COLUMN tbl_qa_station_miss.start_station IS '起点'; +COMMENT ON COLUMN tbl_qa_station_miss.end_station IS '终点'; +COMMENT ON COLUMN tbl_qa_station_miss.up IS '上下行'; +COMMENT ON COLUMN tbl_qa_station_miss.way_bill_type IS '路单类型'; +COMMENT ON COLUMN tbl_qa_station_miss.start_station_levels IS '起点站级'; +COMMENT ON COLUMN tbl_qa_station_miss.end_station_levels IS '终点站级'; +COMMENT ON COLUMN tbl_qa_station_miss.level_num IS '班次站点数'; +COMMENT ON COLUMN tbl_qa_station_miss.bus_stop_num IS '车辆到离站数'; +COMMENT ON COLUMN tbl_qa_station_miss.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_station_miss.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_qa_station_miss.miss_rate IS '缺失率'; +COMMENT ON TABLE tbl_qa_station_miss IS '站点缺失率'; + +-- ---------------------------- +-- Table structure for tbl_qa_vehicle_daily_count +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_vehicle_daily_count; +CREATE TABLE tbl_qa_vehicle_daily_count ( + id int8 NOT NULL AUTO_INCREMENT , + company_code varchar(10) NOT NULL, + company_name varchar(20) NOT NULL, + vehicle_count int4 NOT NULL, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.company_code IS '公司编码'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.company_name IS '公司名称'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.vehicle_count IS '车辆数'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_vehicle_daily_count IS '日营运车辆数'; + +-- ---------------------------- +-- Table structure for tbl_sftp_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sftp_user; +CREATE TABLE tbl_sftp_user ( + sftp_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + sftp_username varchar(100) NOT NULL, + sftp_password varchar(100) NOT NULL, + contact_name varchar(100) , + contact_info varchar(100) , + sftp_perms varchar(50) , + sftp_path varchar(150) , + remarks varchar(500) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL DEFAULT '00', + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(6) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(6), + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_sftp_user.sftp_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sftp_user.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sftp_user.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_username IS '【账户名】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_password IS '【密码】'; +COMMENT ON COLUMN tbl_sftp_user.contact_name IS '【联系人】'; +COMMENT ON COLUMN tbl_sftp_user.contact_info IS '【联系方式】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_perms IS '【权限字符】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_path IS '【分配目录】'; +COMMENT ON COLUMN tbl_sftp_user.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_sftp_user.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_sftp_user.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sftp_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_sftp_user.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sftp_user.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sftp_user.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_sftp_user.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sftp_user.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_sftp_user.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_sftp_user.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_sftp_user IS '【SFTP用户表】'; + +-- ---------------------------- +-- Table structure for tbl_sftp_user_file +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sftp_user_file; +CREATE TABLE tbl_sftp_user_file ( + sftp_file_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + sftp_id int8 NOT NULL, + file_name varchar(500) NOT NULL, + file_path varchar(200) , + file_size varchar(20) , + remarks varchar(500) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL DEFAULT '00', + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(6) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(6), + sftp_username varchar(100) +) +; +COMMENT ON COLUMN tbl_sftp_user_file.sftp_file_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sftp_user_file.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sftp_user_file.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sftp_user_file.sftp_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sftp_user_file.file_name IS '【文件名】'; +COMMENT ON COLUMN tbl_sftp_user_file.file_path IS '【文件路径】'; +COMMENT ON COLUMN tbl_sftp_user_file.file_size IS '【文件大小】'; +COMMENT ON COLUMN tbl_sftp_user_file.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_sftp_user_file.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_sftp_user_file.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sftp_user_file.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_sftp_user_file.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sftp_user_file.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sftp_user_file.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_sftp_user_file.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sftp_user_file.sftp_username IS '【账户名】'; +COMMENT ON TABLE tbl_sftp_user_file IS '【SFTP用户文件表】'; + +-- ---------------------------- +-- Table structure for tbl_source_data_quality +-- ---------------------------- +DROP TABLE IF EXISTS tbl_source_data_quality; +CREATE TABLE tbl_source_data_quality ( + source_data_table_name varchar(100) , + source_data_table_code varchar(100) , + source_data_quality_name varchar(500) , + source_data_quality_define varchar(500) , + source_data_quality_desc varchar(500) , + source_data_quality_value numeric(18,3), + source_data_quality_date date +) +; +COMMENT ON COLUMN tbl_source_data_quality.source_data_table_name IS '元数据表名'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_table_code IS '元数据表code'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_name IS '指标名称'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_define IS '指标定义'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_desc IS '指标说明'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_value IS '指标数值'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_date IS '数据日期'; + +-- ---------------------------- +-- Table structure for tbl_sys_config +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_config; +CREATE TABLE tbl_sys_config ( + config_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + config_name varchar(100) , + config_key varchar(100) , + config_value varchar(500) , + config_type char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_config.config_id IS '【参数主键】'; +COMMENT ON COLUMN tbl_sys_config.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_config.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_config.config_name IS '【参数名称】'; +COMMENT ON COLUMN tbl_sys_config.config_key IS '【参数键名】'; +COMMENT ON COLUMN tbl_sys_config.config_value IS '【参数键值】'; +COMMENT ON COLUMN tbl_sys_config.config_type IS '【系统内置】Y是 N否'; +COMMENT ON COLUMN tbl_sys_config.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_config.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_config.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_config.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_config.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_config IS '【参数配置表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_dept +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_dept; +CREATE TABLE tbl_sys_dept ( + dept_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + parent_id int8, + ancestors varchar(50) , + dept_name varchar(30) NOT NULL, + order_num int4, + leader varchar(20) , + phone varchar(11) , + email varchar(50) , + status char(1) , + del_flag char(1) DEFAULT '0', + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_sys_dept.dept_id IS '【部门id】'; +COMMENT ON COLUMN tbl_sys_dept.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_dept.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_dept.parent_id IS '【父部门id】'; +COMMENT ON COLUMN tbl_sys_dept.ancestors IS '【祖级列表】'; +COMMENT ON COLUMN tbl_sys_dept.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_sys_dept.order_num IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_dept.leader IS '【负责人】'; +COMMENT ON COLUMN tbl_sys_dept.phone IS '【联系电话】'; +COMMENT ON COLUMN tbl_sys_dept.email IS '【邮箱】'; +COMMENT ON COLUMN tbl_sys_dept.status IS '【部门状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_dept.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_sys_dept.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_dept.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_dept.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_dept.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_sys_dept IS '【部门表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_dict_data +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_dict_data; +CREATE TABLE tbl_sys_dict_data ( + dict_code int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dict_sort int4, + dict_label varchar(100) , + dict_value varchar(100) , + dict_type varchar(100) NOT NULL, + css_class varchar(100) , + list_class varchar(100) , + is_default char(1) , + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_dict_data.dict_code IS '【字典编码】'; +COMMENT ON COLUMN tbl_sys_dict_data.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_dict_data.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_sort IS '【字典排序】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_label IS '【字典标签】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_value IS '【字典键值】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_type IS '【字典类型】'; +COMMENT ON COLUMN tbl_sys_dict_data.css_class IS '【样式属性】其他样式扩展'; +COMMENT ON COLUMN tbl_sys_dict_data.list_class IS '【表格回显样式】'; +COMMENT ON COLUMN tbl_sys_dict_data.is_default IS '【是否默认】Y是 N否'; +COMMENT ON COLUMN tbl_sys_dict_data.status IS '【状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_dict_data.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_dict_data.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_dict_data.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_dict_data.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_dict_data.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_dict_data IS '【字典数据表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_dict_type +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_dict_type; +CREATE TABLE tbl_sys_dict_type ( + dict_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dict_name varchar(100) , + dict_type varchar(100) NOT NULL, + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_dict_type.dict_id IS '【字典主键】'; +COMMENT ON COLUMN tbl_sys_dict_type.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_dict_type.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_dict_type.dict_name IS '【字典名称】'; +COMMENT ON COLUMN tbl_sys_dict_type.dict_type IS '【字典类型】'; +COMMENT ON COLUMN tbl_sys_dict_type.status IS '【状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_dict_type.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_dict_type.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_dict_type.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_dict_type.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_dict_type.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_dict_type IS '【字典类型表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_job +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_job; +CREATE TABLE tbl_sys_job ( + job_id int8 NOT NULL AUTO_INCREMENT , + job_name varchar(64) NOT NULL, + job_group varchar(64) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL, + invoke_target varchar(500) NOT NULL, + cron_expression varchar(255) , + misfire_policy varchar(20) , + concurrent char(1) , + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) , + parent_id int8, + level varchar(200) +) +; +COMMENT ON COLUMN tbl_sys_job.job_id IS '【任务ID】'; +COMMENT ON COLUMN tbl_sys_job.job_name IS '【任务名称】'; +COMMENT ON COLUMN tbl_sys_job.job_group IS '【任务组名】'; +COMMENT ON COLUMN tbl_sys_job.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_job.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_job.invoke_target IS '【调用目标字符串】'; +COMMENT ON COLUMN tbl_sys_job.cron_expression IS '【cron执行表达式】'; +COMMENT ON COLUMN tbl_sys_job.misfire_policy IS '【计划执行错误策略】1立即执行 2执行一次 3放弃执行'; +COMMENT ON COLUMN tbl_sys_job.concurrent IS '【是否并发执行】0允许 1禁止'; +COMMENT ON COLUMN tbl_sys_job.status IS '【状态】0正常 1暂停'; +COMMENT ON COLUMN tbl_sys_job.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_job.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_job.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_job.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_job.remark IS '【备注信息】'; +COMMENT ON COLUMN tbl_sys_job.parent_id IS '【父ID】'; +COMMENT ON COLUMN tbl_sys_job.level IS '【层级】'; +COMMENT ON TABLE tbl_sys_job IS '【定时任务调度表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_job_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_job_log; +CREATE TABLE tbl_sys_job_log ( + job_log_id int8 NOT NULL AUTO_INCREMENT , + job_name varchar(64) NOT NULL, + job_group varchar(64) NOT NULL, + invoke_target varchar(500) NOT NULL, + job_message varchar(500) , + status char(1) , + exception_info varchar(2000) , + create_time timestamp(6) +) +; +COMMENT ON COLUMN tbl_sys_job_log.job_log_id IS '【任务日志ID】'; +COMMENT ON COLUMN tbl_sys_job_log.job_name IS '【任务名称】'; +COMMENT ON COLUMN tbl_sys_job_log.job_group IS '【任务组名】'; +COMMENT ON COLUMN tbl_sys_job_log.invoke_target IS '【调用目标字符串】'; +COMMENT ON COLUMN tbl_sys_job_log.job_message IS '【日志信息】'; +COMMENT ON COLUMN tbl_sys_job_log.status IS '【执行状态】0正常 1失败'; +COMMENT ON COLUMN tbl_sys_job_log.exception_info IS '【异常信息】'; +COMMENT ON COLUMN tbl_sys_job_log.create_time IS '【创建时间】'; +COMMENT ON TABLE tbl_sys_job_log IS '【定时任务调度日志表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2024; +CREATE TABLE tbl_sys_logininfor_2024 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2025; +CREATE TABLE tbl_sys_logininfor_2025 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2026; +CREATE TABLE tbl_sys_logininfor_2026 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2027; +CREATE TABLE tbl_sys_logininfor_2027 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2028; +CREATE TABLE tbl_sys_logininfor_2028 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2029; +CREATE TABLE tbl_sys_logininfor_2029 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_default +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_default; +CREATE TABLE tbl_sys_logininfor_default ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_menu +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_menu; +CREATE TABLE tbl_sys_menu ( + menu_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + menu_name varchar(50) NOT NULL, + parent_id int8 DEFAULT 0, + order_num int4, + path varchar(200) , + component varchar(255) , + query_params varchar(255) , + is_frame char(1) , + is_cache char(1) , + url_path varchar(255) , + url_method varchar(20) , + url_opr_type varchar(20) , + url_check_flag char(1) , + menu_type char(1) , + visible char(1) , + status char(1) , + perms varchar(100) , + icon varchar(100) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_menu.menu_id IS '【菜单ID】'; +COMMENT ON COLUMN tbl_sys_menu.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_menu.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_menu.menu_name IS '【菜单名称】'; +COMMENT ON COLUMN tbl_sys_menu.parent_id IS '【父菜单ID】'; +COMMENT ON COLUMN tbl_sys_menu.order_num IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_menu.path IS '【路由地址】'; +COMMENT ON COLUMN tbl_sys_menu.component IS '【组件路径】'; +COMMENT ON COLUMN tbl_sys_menu.query_params IS '【路由参数】'; +COMMENT ON COLUMN tbl_sys_menu.is_frame IS '【是否为外链】0是 1否'; +COMMENT ON COLUMN tbl_sys_menu.is_cache IS '【是否缓存】0缓存 1不缓存'; +COMMENT ON COLUMN tbl_sys_menu.url_path IS '【url路径】'; +COMMENT ON COLUMN tbl_sys_menu.url_method IS '【URL请求方式】由于restful风格同名,因此需要GET,POST等'; +COMMENT ON COLUMN tbl_sys_menu.url_opr_type IS '【url操作类型】为了更便捷分配同类型资源,query:查询 ,add:新增,edit:编辑。。。'; +COMMENT ON COLUMN tbl_sys_menu.url_check_flag IS '【url网关校验标志】为空或0则不校验;1校验;'; +COMMENT ON COLUMN tbl_sys_menu.menu_type IS '【菜单类型】M目录 C菜单 F按钮'; +COMMENT ON COLUMN tbl_sys_menu.visible IS '【菜单显示状态】0显示 1隐藏'; +COMMENT ON COLUMN tbl_sys_menu.status IS '【菜单状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_menu.perms IS '【权限标识】'; +COMMENT ON COLUMN tbl_sys_menu.icon IS '【菜单图标】'; +COMMENT ON COLUMN tbl_sys_menu.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_menu.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_menu.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_menu.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_menu.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_menu IS '【菜单权限表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_notice +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_notice; +CREATE TABLE tbl_sys_notice ( + notice_id int4 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + notice_title varchar(50) NOT NULL, + notice_type char(1) NOT NULL, + notice_content text , + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(255) +) +; +COMMENT ON COLUMN tbl_sys_notice.notice_id IS '【公告ID】'; +COMMENT ON COLUMN tbl_sys_notice.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_notice.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_notice.notice_title IS '【公告标题】'; +COMMENT ON COLUMN tbl_sys_notice.notice_type IS '【公告类型】1通知 2公告'; +COMMENT ON COLUMN tbl_sys_notice.notice_content IS '【公告内容】'; +COMMENT ON COLUMN tbl_sys_notice.status IS '【公告状态】0正常 1关闭'; +COMMENT ON COLUMN tbl_sys_notice.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_notice.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_notice.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_notice.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_notice.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_notice IS '【通知公告表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2024; +CREATE TABLE tbl_sys_oper_log_2024 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2025; +CREATE TABLE tbl_sys_oper_log_2025 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2026; +CREATE TABLE tbl_sys_oper_log_2026 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2027; +CREATE TABLE tbl_sys_oper_log_2027 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2028; +CREATE TABLE tbl_sys_oper_log_2028 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2029; +CREATE TABLE tbl_sys_oper_log_2029 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_default +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_default; +CREATE TABLE tbl_sys_oper_log_default ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_post +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_post; +CREATE TABLE tbl_sys_post ( + post_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + post_code varchar(64) NOT NULL, + post_name varchar(50) NOT NULL, + post_sort int4 NOT NULL, + status char(1) NOT NULL, + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_post.post_id IS '【岗位ID】'; +COMMENT ON COLUMN tbl_sys_post.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_post.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_post.post_code IS '【岗位编码】'; +COMMENT ON COLUMN tbl_sys_post.post_name IS '【岗位名称】'; +COMMENT ON COLUMN tbl_sys_post.post_sort IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_post.status IS '【状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_post.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_post.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_post.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_post.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_post.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_post IS '【岗位信息表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_role +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_role; +CREATE TABLE tbl_sys_role ( + role_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + role_name varchar(30) NOT NULL, + role_key varchar(100) NOT NULL, + role_sort int4 NOT NULL DEFAULT 0, + data_scope varchar(1) , + menu_check_strictly varchar(1) , + dept_check_strictly varchar(1) , + status varchar(1) NOT NULL, + del_flag varchar(1) DEFAULT '0', + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_role.role_id IS '【角色ID】'; +COMMENT ON COLUMN tbl_sys_role.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_role.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_role.role_name IS '【角色名称】'; +COMMENT ON COLUMN tbl_sys_role.role_key IS '【角色权限字符串】'; +COMMENT ON COLUMN tbl_sys_role.role_sort IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_role.data_scope IS '【数据范围】1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限'; +COMMENT ON COLUMN tbl_sys_role.menu_check_strictly IS '【菜单树选择项是否关联显示】'; +COMMENT ON COLUMN tbl_sys_role.dept_check_strictly IS '【部门树选择项是否关联显示】'; +COMMENT ON COLUMN tbl_sys_role.status IS '【角色状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_role.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_sys_role.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_role.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_role.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_role.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_role.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_role IS '【角色信息表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_role_dept +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_role_dept; +CREATE TABLE tbl_sys_role_dept ( + role_id int8 NOT NULL, + dept_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_role_dept.role_id IS '【角色ID】'; +COMMENT ON COLUMN tbl_sys_role_dept.dept_id IS '【部门ID】'; +COMMENT ON TABLE tbl_sys_role_dept IS '【角色和部门关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_role_menu +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_role_menu; +CREATE TABLE tbl_sys_role_menu ( + role_id int8 NOT NULL, + menu_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_role_menu.role_id IS '【角色ID】'; +COMMENT ON COLUMN tbl_sys_role_menu.menu_id IS '【菜单ID】'; +COMMENT ON TABLE tbl_sys_role_menu IS '【角色和菜单关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user; +CREATE TABLE tbl_sys_user ( + user_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dept_id int8, + user_name varchar(30) NOT NULL, + nick_name varchar(30) NOT NULL, + user_type varchar(2) DEFAULT '00', + email varchar(50) , + phonenumber varchar(11) , + sex char(1) , + avatar varchar(100) , + password varchar(100) , + status char(1) , + del_flag char(1) DEFAULT '0', + login_ip varchar(128) , + login_date timestamp(6), + is_locked char(1) , + login_error_count int4, + last_login_error_time timestamp(6), + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_user.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sys_user.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_user.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_user.dept_id IS '【部门ID】'; +COMMENT ON COLUMN tbl_sys_user.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_sys_user.nick_name IS '【用户昵称】'; +COMMENT ON COLUMN tbl_sys_user.user_type IS '【用户类型】00系统用户'; +COMMENT ON COLUMN tbl_sys_user.email IS '【用户邮箱】'; +COMMENT ON COLUMN tbl_sys_user.phonenumber IS '【手机号码】'; +COMMENT ON COLUMN tbl_sys_user.sex IS '【用户性别】0男 1女 2未知'; +COMMENT ON COLUMN tbl_sys_user.avatar IS '【头像地址】'; +COMMENT ON COLUMN tbl_sys_user.password IS '【密码】'; +COMMENT ON COLUMN tbl_sys_user.status IS '【帐号状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_user.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_sys_user.login_ip IS '【最后登录IP】'; +COMMENT ON COLUMN tbl_sys_user.login_date IS '【最后登录时间】'; +COMMENT ON COLUMN tbl_sys_user.is_locked IS '【锁定状态】'; +COMMENT ON COLUMN tbl_sys_user.login_error_count IS '【登陆错误次数】'; +COMMENT ON COLUMN tbl_sys_user.last_login_error_time IS '【登陆错误时间】'; +COMMENT ON COLUMN tbl_sys_user.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_user.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_user.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_user.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_user.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_user IS '【用户信息表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user_post +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user_post; +CREATE TABLE tbl_sys_user_post ( + user_id int8 NOT NULL, + post_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_user_post.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sys_user_post.post_id IS '【岗位ID】'; +COMMENT ON TABLE tbl_sys_user_post IS '【用户与岗位关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user_role +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user_role; +CREATE TABLE tbl_sys_user_role ( + user_id int8 NOT NULL, + role_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_user_role.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sys_user_role.role_id IS '【角色ID】'; +COMMENT ON TABLE tbl_sys_user_role IS '【用户和角色关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user_zltest +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user_zltest; +CREATE TABLE tbl_sys_user_zltest ( + user_id int8, + version_num int4, + rec_token varchar(10) , + dept_id int8, + user_name varchar(30) , + nick_name varchar(30) , + user_type varchar(2) , + email varchar(50) , + phonenumber varchar(11) , + sex char(1) , + avatar varchar(100) , + password varchar(100) , + status char(1) , + del_flag char(1) , + login_ip varchar(128) , + login_date timestamp(6), + is_locked char(1) , + login_error_count int4, + last_login_error_time timestamp(6), + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_warning_contact +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_warning_contact; +CREATE TABLE tbl_sys_warning_contact ( + id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + warning_type varchar(32) NOT NULL, + contact_type varchar(32) NOT NULL, + contact varchar(32) NOT NULL, + status varchar(32) NOT NULL DEFAULT '00', + create_by varchar(32) , + create_time timestamp(0), + update_by varchar(32) , + update_time timestamp(0), + del_flag char(1) DEFAULT '0' +) +; +COMMENT ON COLUMN tbl_sys_warning_contact.id IS '【主键id】'; +COMMENT ON COLUMN tbl_sys_warning_contact.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_warning_contact.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_warning_contact.warning_type IS '【告警场景】'; +COMMENT ON COLUMN tbl_sys_warning_contact.contact_type IS '【类型】手机号:01 邮箱:02'; +COMMENT ON COLUMN tbl_sys_warning_contact.contact IS '【联系方式】'; +COMMENT ON COLUMN tbl_sys_warning_contact.status IS '【状态】正常:00 停用:01 删除:03'; +COMMENT ON COLUMN tbl_sys_warning_contact.create_by IS '【创建人】'; +COMMENT ON COLUMN tbl_sys_warning_contact.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_warning_contact.update_by IS '【更新人】'; +COMMENT ON COLUMN tbl_sys_warning_contact.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_warning_contact.del_flag IS '【删除标志】'; +COMMENT ON TABLE tbl_sys_warning_contact IS '【告警联系方式表】'; + +-- ---------------------------- +-- Table structure for tbl_zltest +-- ---------------------------- +DROP TABLE IF EXISTS tbl_zltest; +CREATE TABLE tbl_zltest ( + test_id varchar +) +; + +-- ---------------------------- +-- Table structure for test_89 +-- ---------------------------- +DROP TABLE IF EXISTS test_89; +CREATE TABLE test_89 ( + api_id int8, + status char(1) , + create_by varchar(50) , + create_time timestamp(0), + create_dept varchar(50) , + update_by varchar(50) , + update_time timestamp(0), + remark varchar(1000) , + api_name varchar(255) , + api_version varchar(60) , + api_url varchar(255) , + req_method varchar(10) , + res_type varchar(10) , + deny varchar(2000) , + limit_json text , + config_json text , + req_json text , + res_json text , + version_num int4, + rec_token varchar(100) , + del_flag char(1) , + api_code varchar(50) , + api_type char(1) , + source_id int8 +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor; +CREATE TABLE tbl_portal_logininfor ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +); +COMMENT ON COLUMN tbl_portal_logininfor.info_id IS '【访问ID】'; +COMMENT ON COLUMN tbl_portal_logininfor.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_portal_logininfor.ipaddr IS '【登录IP地址】'; +COMMENT ON COLUMN tbl_portal_logininfor.login_location IS '【登录地点】'; +COMMENT ON COLUMN tbl_portal_logininfor.browser IS '【浏览器类型】'; +COMMENT ON COLUMN tbl_portal_logininfor.os IS '【操作系统】'; +COMMENT ON COLUMN tbl_portal_logininfor.status IS '【登录状态】0成功 1失败'; +COMMENT ON COLUMN tbl_portal_logininfor.msg IS '【提示消息】'; +COMMENT ON COLUMN tbl_portal_logininfor.login_time IS '【访问时间】'; +COMMENT ON TABLE tbl_portal_logininfor IS '【门户登录日志】'; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log; +CREATE TABLE tbl_portal_oper_log ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_oper_log.oper_id IS '【日志主键】'; +COMMENT ON COLUMN tbl_portal_oper_log.title IS '【模块标题】'; +COMMENT ON COLUMN tbl_portal_oper_log.business_type IS '【业务类型】0其它 1新增 2修改 3删除'; +COMMENT ON COLUMN tbl_portal_oper_log.method IS '【方法名称】'; +COMMENT ON COLUMN tbl_portal_oper_log.request_method IS '【请求方式】'; +COMMENT ON COLUMN tbl_portal_oper_log.operator_type IS '【操作类别】0其它 1后台用户 2手机端用户'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_name IS '【操作人员】'; +COMMENT ON COLUMN tbl_portal_oper_log.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_url IS '【请求URL】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_ip IS '【主机地址】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_location IS '【操作地点】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_param IS '【请求参数】'; +COMMENT ON COLUMN tbl_portal_oper_log.json_result IS '【返回参数】'; +COMMENT ON COLUMN tbl_portal_oper_log.status IS '【操作状态】0正常 1异常'; +COMMENT ON COLUMN tbl_portal_oper_log.error_msg IS '【错误消息】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_time IS '【操作时间】'; +COMMENT ON TABLE tbl_portal_oper_log IS '【门户操作日志】'; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor; +CREATE TABLE tbl_sys_logininfor ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +); +COMMENT ON COLUMN tbl_sys_logininfor.info_id IS '【访问ID】'; +COMMENT ON COLUMN tbl_sys_logininfor.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_sys_logininfor.ipaddr IS '【登录IP地址】'; +COMMENT ON COLUMN tbl_sys_logininfor.login_location IS '【登录地点】'; +COMMENT ON COLUMN tbl_sys_logininfor.browser IS '【浏览器类型】'; +COMMENT ON COLUMN tbl_sys_logininfor.os IS '【操作系统】'; +COMMENT ON COLUMN tbl_sys_logininfor.status IS '【登录状态】0成功 1失败'; +COMMENT ON COLUMN tbl_sys_logininfor.msg IS '【提示消息】'; +COMMENT ON COLUMN tbl_sys_logininfor.login_time IS '【访问时间】'; +COMMENT ON TABLE tbl_sys_logininfor IS '【系统访问记录】'; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log; +CREATE TABLE tbl_sys_oper_log ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +); +COMMENT ON COLUMN tbl_sys_oper_log.oper_id IS '【日志主键】'; +COMMENT ON COLUMN tbl_sys_oper_log.title IS '【模块标题】'; +COMMENT ON COLUMN tbl_sys_oper_log.business_type IS '【业务类型】0其它 1新增 2修改 3删除'; +COMMENT ON COLUMN tbl_sys_oper_log.method IS '【方法名称】'; +COMMENT ON COLUMN tbl_sys_oper_log.request_method IS '【请求方式】'; +COMMENT ON COLUMN tbl_sys_oper_log.operator_type IS '【操作类别】0其它 1后台用户 2手机端用户'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_name IS '【操作人员】'; +COMMENT ON COLUMN tbl_sys_oper_log.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_url IS '【请求URL】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_ip IS '【主机地址】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_location IS '【操作地点】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_param IS '【请求参数】'; +COMMENT ON COLUMN tbl_sys_oper_log.json_result IS '【返回参数】'; +COMMENT ON COLUMN tbl_sys_oper_log.status IS '【操作状态】0正常 1异常'; +COMMENT ON COLUMN tbl_sys_oper_log.error_msg IS '【错误消息】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_time IS '【操作时间】'; +COMMENT ON TABLE tbl_sys_oper_log IS '【操作日志记录】'; + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- + +-- SELECT setval('demorange_int_seq', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('prd_line_station_trans_month', 9, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_asset_column', 33144, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_asset_table', 4304, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_asset_table_column', 55346, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_config', 1, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_institute', 4, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_institute_api_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_institute_auth', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_market_api', 149, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_market_api_log', 480, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_market_api_mask', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_authorize', 300, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_change_record', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_column', 269265, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_source', 58, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_source_conn', 21, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_table', 10289, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_quality_report', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_sql_console_export', 101, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_sql_log', 14700, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_info', 43, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_lib', 99, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_review', 31, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_review_dtl', 16, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_config_hardware', 31, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_download_apply', 31, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_images', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_vpn', 5, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_with_user_account', 56, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_gen_table', 34, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_gen_table_column', 414, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_lab_config_hardware', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_api_auth', 171, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_config', 164, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_gateway_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_statistics', 46, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_content', 55, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_logininfor', 352, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_oper_log', 99, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_user', 18, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_user_msg', 61, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_metric_day', 135492453, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_metric_hour', 1747381, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_metric_month', 33049, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_metric_day', 145553, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_metric_hour', 9, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_metric_month', 127360, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_trans_day', 337065, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_trans_hour', 2572505, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_trans_month', 294933, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_route_metric_day', 1494935, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_metric_day', 156294, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_metric_month', 299393, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_trans_day', 756913, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_trans_month', 478054, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_files', 386, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_files_progress', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_msg_template', 39, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_phone_msg_log', 151, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_centime_delay', 39, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_pos_match_rate', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_route_daily_count', 15, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_route_miss', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_route_turnover_time', 6456, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_station_miss', 260288, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_vehicle_daily_count', 10, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sftp_user', 32, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sftp_user_file', 40, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sql_console_file', 115, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sql_data_apply', 223, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_config', 6, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_dept', 12, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_dict_data', 330, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_dict_type', 86, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_job', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_job_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_logininfor', 3797, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_menu', 3292, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_notice', 10, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_oper_log', 3828, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_post', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_role', 20, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_user', 100026, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_warning_contact', 18, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_warning_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_test_t_t', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- ALTER SEQUENCE tbl_prd_sync_record_id_seq +-- OWNED BY tbl_prd_sync_record.id; +-- SELECT setval('tbl_prd_sync_record_id_seq', 286, true); + +-- ---------------------------- +-- Primary Key structure for table gen_table +-- ---------------------------- +ALTER TABLE gen_table ADD CONSTRAINT gen_table_pkey PRIMARY KEY (table_id); + +-- ---------------------------- +-- Primary Key structure for table gen_table_column +-- ---------------------------- +ALTER TABLE gen_table_column ADD CONSTRAINT gen_table_column_pkey PRIMARY KEY (column_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_batch_table_mapping +-- ---------------------------- +ALTER TABLE tbl_batch_table_mapping ADD CONSTRAINT pk_tbl_batch_table_mapping PRIMARY KEY (task_no); + +-- ---------------------------- +-- Primary Key structure for table tbl_batch_task +-- ---------------------------- +ALTER TABLE tbl_batch_task ADD CONSTRAINT pk_tbl_batch_task PRIMARY KEY (task_no); + +-- ---------------------------- +-- Indexes structure for table tbl_data_api +-- ---------------------------- +CREATE INDEX index_dataApi_apiType ON tbl_data_api ( + api_type +); +CREATE UNIQUE INDEX index_dataApi_apicode ON tbl_data_api ( + api_code +); +CREATE INDEX index_dataApi_sourceId ON tbl_data_api ( + source_id +); +CREATE INDEX index_dataApi_status ON tbl_data_api ( + status +); +CREATE INDEX index_dataApi_url ON tbl_data_api ( + api_url +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_api +-- ---------------------------- +ALTER TABLE tbl_data_api ADD CONSTRAINT market_api_pkey PRIMARY KEY (api_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_api_log +-- ---------------------------- +CREATE INDEX idx_tbl_data_api_log_1 ON tbl_data_api_log ( + api_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_api_log +-- ---------------------------- +ALTER TABLE tbl_data_api_log ADD CONSTRAINT market_api_log_pkey PRIMARY KEY (api_log_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_asset_column +-- ---------------------------- +CREATE INDEX idx_tbl_data_asset_column_1 ON tbl_data_asset_column ( + column_name +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_asset_column +-- ---------------------------- +ALTER TABLE tbl_data_asset_column ADD CONSTRAINT tbl_data_asset_column_pkey PRIMARY KEY (asset_column_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_asset_table +-- ---------------------------- +CREATE INDEX idx_tbl_data_asset_table_1 ON tbl_data_asset_table ( + source_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_asset_table +-- ---------------------------- +ALTER TABLE tbl_data_asset_table ADD CONSTRAINT tbl_data_asset_table_pkey PRIMARY KEY (asset_table_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_asset_table_column +-- ---------------------------- +CREATE INDEX idx_tbl_data_asset_table_column_1 ON tbl_data_asset_table_column ( + asset_table_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_asset_table_column +-- ---------------------------- +ALTER TABLE tbl_data_asset_table_column ADD CONSTRAINT tbl_data_asset_table_column_pkey PRIMARY KEY (asset_table_column_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_column +-- ---------------------------- +ALTER TABLE tbl_data_metadata_column ADD CONSTRAINT metadata_column_pkey PRIMARY KEY (column_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_metadata_source +-- ---------------------------- +CREATE INDEX idx_tbl_data_metadata_source_1 ON tbl_data_metadata_source ( + conn_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_source +-- ---------------------------- +ALTER TABLE tbl_data_metadata_source ADD CONSTRAINT metadata_source_pkey PRIMARY KEY (source_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_source_conn +-- ---------------------------- +ALTER TABLE tbl_data_metadata_source_conn ADD CONSTRAINT tbl_data_metadata_source_link_pkey PRIMARY KEY (conn_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_metadata_table +-- ---------------------------- +CREATE INDEX idx_tbl_data_metadata_table_1 ON tbl_data_metadata_table ( + source_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_table +-- ---------------------------- +ALTER TABLE tbl_data_metadata_table ADD CONSTRAINT metadata_table_pkey PRIMARY KEY (table_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_console_export +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_console_export_1 ON tbl_data_sql_console_export ( + user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_console_export +-- ---------------------------- +ALTER TABLE tbl_data_sql_console_export ADD CONSTRAINT tbl_data_sql_console_export_pkey PRIMARY KEY (export_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_console_file +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_console_file_1 ON tbl_data_sql_console_file ( + source_id +); +CREATE INDEX idx_tbl_data_sql_console_file_2 ON tbl_data_sql_console_file ( + user_id +); +CREATE INDEX idx_tbl_data_sql_console_file_3 ON tbl_data_sql_console_file ( + pid +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_console_file +-- ---------------------------- +ALTER TABLE tbl_data_sql_console_file ADD CONSTRAINT tbl_sql_console_file_pkey PRIMARY KEY (file_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_data_apply +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_data_apply_1 ON tbl_data_sql_data_apply ( + apply_no +); +CREATE INDEX idx_tbl_data_sql_data_apply_2 ON tbl_data_sql_data_apply ( + user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_data_apply +-- ---------------------------- +ALTER TABLE tbl_data_sql_data_apply ADD CONSTRAINT tbl_sql_data_apply_pkey PRIMARY KEY (apply_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_data_auth +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_data_auth_1 ON tbl_data_sql_data_auth ( + user_id +); +CREATE INDEX idx_tbl_data_sql_data_auth_2 ON tbl_data_sql_data_auth ( + user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_data_auth +-- ---------------------------- +ALTER TABLE tbl_data_sql_data_auth ADD CONSTRAINT metadata_authorize_pkey PRIMARY KEY (object_id, user_id, apply_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_log +-- ---------------------------- +ALTER TABLE tbl_data_sql_log ADD CONSTRAINT tbl_data_sql_log_pkey PRIMARY KEY (sql_log_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_info +-- ---------------------------- +CREATE INDEX idx_docker_apply_info_1 ON tbl_docker_apply_info ( + apply_user_id , + service_type +); +CREATE INDEX idx_docker_apply_info_3 ON tbl_docker_apply_info ( + bus_status +); +CREATE INDEX idx_docker_apply_info_4 ON tbl_docker_apply_info ( + create_by +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_info +-- ---------------------------- +ALTER TABLE tbl_docker_apply_info ADD CONSTRAINT pk_tbl_docker_apply_info PRIMARY KEY (apply_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_lib +-- ---------------------------- +CREATE INDEX idx_docker_apply_lib_1 ON tbl_docker_apply_lib ( + apply_id +); +CREATE INDEX idx_docker_apply_lib_2 ON tbl_docker_apply_lib ( + file_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_lib +-- ---------------------------- +ALTER TABLE tbl_docker_apply_lib ADD CONSTRAINT pk_tbl_docker_apply_lib PRIMARY KEY (apply_lib_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_review +-- ---------------------------- +CREATE INDEX index_docker_apply_review_1 ON tbl_docker_apply_review ( + apply_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_review +-- ---------------------------- +ALTER TABLE tbl_docker_apply_review ADD CONSTRAINT pk_tbl_docker_apply_review PRIMARY KEY (review_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_review_dtl +-- ---------------------------- +CREATE INDEX index_docker_apply_review_dtl_1 ON tbl_docker_apply_review_dtl ( + review_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_review_dtl +-- ---------------------------- +ALTER TABLE tbl_docker_apply_review_dtl ADD CONSTRAINT pk_tbl_docker_apply_review_dtl PRIMARY KEY (review_dtl_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_client_info +-- ---------------------------- +ALTER TABLE tbl_docker_client_info ADD CONSTRAINT pk_tbl_docker_client_info PRIMARY KEY (docker_server_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_config_hardware +-- ---------------------------- +ALTER TABLE tbl_docker_config_hardware ADD CONSTRAINT pk_tbl_docker_config_hardware PRIMARY KEY (config_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_download_apply +-- ---------------------------- +CREATE INDEX idx_docker_download_apply_1 ON tbl_docker_download_apply ( + apply_id +); +CREATE INDEX idx_docker_download_apply_2 ON tbl_docker_download_apply ( + apply_user_id +); +CREATE INDEX index__docker_download_apply_1 ON tbl_docker_download_apply ( + apply_user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_download_apply +-- ---------------------------- +ALTER TABLE tbl_docker_download_apply ADD CONSTRAINT pk_tbl_docker_download_apply PRIMARY KEY (download_apply_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_images +-- ---------------------------- +ALTER TABLE tbl_docker_images ADD CONSTRAINT pk_tbl_docker_images PRIMARY KEY (docker_image_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_port_list +-- ---------------------------- +ALTER TABLE tbl_docker_port_list ADD CONSTRAINT pk_tbl_docker_port_list PRIMARY KEY (docker_port_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_portainer_user +-- ---------------------------- +ALTER TABLE tbl_docker_portainer_user ADD CONSTRAINT pk_tbl_docker_portainer_user PRIMARY KEY (docker_account_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_vpn +-- ---------------------------- +ALTER TABLE tbl_docker_vpn ADD CONSTRAINT pk_tbl_docker_vpn PRIMARY KEY (vpn_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_with_user +-- ---------------------------- +CREATE INDEX idx_docker_with_user_1 ON tbl_docker_with_user ( + apply_user_id +); +CREATE INDEX idx_docker_with_user_2 ON tbl_docker_with_user ( + bus_status +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_with_user +-- ---------------------------- +ALTER TABLE tbl_docker_with_user ADD CONSTRAINT pk_tbl_docker_with_user PRIMARY KEY (apply_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_with_user_account +-- ---------------------------- +CREATE INDEX idx_docker_with_user_account_1 ON tbl_docker_with_user_account ( + apply_id +); +CREATE INDEX idx_docker_with_user_account_2 ON tbl_docker_with_user_account ( + bus_status +); +CREATE INDEX index__docker_with_user_account_1 ON tbl_docker_with_user_account ( + apply_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_with_user_account +-- ---------------------------- +ALTER TABLE tbl_docker_with_user_account ADD CONSTRAINT pk_tbl_docker_with_user_account PRIMARY KEY (account_id); + +-- ---------------------------- +-- Indexes structure for table tbl_org_api_auth +-- ---------------------------- +CREATE INDEX idx_tbl_org_api_auth_1 ON tbl_org_api_auth ( + org_no +); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_api_auth +-- ---------------------------- +ALTER TABLE tbl_org_api_auth ADD CONSTRAINT tbl_instit_api_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Indexes structure for table tbl_org_config +-- ---------------------------- +CREATE INDEX idx_tbl_org_config_1 ON tbl_org_config ( + org_no +); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_config +-- ---------------------------- +ALTER TABLE tbl_org_config ADD CONSTRAINT tbl_org_config_pkey PRIMARY KEY (config_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_info +-- ---------------------------- +ALTER TABLE tbl_org_info ADD CONSTRAINT pk_org_info PRIMARY KEY (org_no); + +-- ---------------------------- +-- Indexes structure for table tbl_org_statistics +-- ---------------------------- +CREATE INDEX idx_tbl_org_statistics_1 ON tbl_org_statistics ( + org_no , + api_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_statistics +-- ---------------------------- +ALTER TABLE tbl_org_statistics ADD CONSTRAINT pk_tbl_org_statistics PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_content +-- ---------------------------- +ALTER TABLE tbl_portal_content ADD CONSTRAINT pk_tbl_portal_content PRIMARY KEY (content_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_logininfor_copy1 +-- ---------------------------- +ALTER TABLE tbl_portal_logininfor_copy1 ADD CONSTRAINT tbl_portal_logininfor_copy1_pkey PRIMARY KEY (info_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_oper_log_copy1 +-- ---------------------------- +ALTER TABLE tbl_portal_oper_log_copy1 ADD CONSTRAINT tbl_portal_oper_log_copy1_pkey PRIMARY KEY (oper_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_user +-- ---------------------------- +ALTER TABLE tbl_portal_user ADD CONSTRAINT pk_tbl_portal_user PRIMARY KEY (user_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_user_msg +-- ---------------------------- +ALTER TABLE tbl_portal_user_msg ADD CONSTRAINT pk_tbl_portal_user_msg PRIMARY KEY (msg_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_base_line +-- ---------------------------- +ALTER TABLE tbl_prd_base_line ADD CONSTRAINT tbl_prd_line_info_pkey PRIMARY KEY (line_name, line_code); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_base_line_station +-- ---------------------------- +ALTER TABLE tbl_prd_base_line_station ADD CONSTRAINT tbl_prd_line_station_info_pkey PRIMARY KEY (line_code, levels); + +-- ---------------------------- +-- Indexes structure for table tbl_prd_line_metric_day +-- ---------------------------- +CREATE INDEX metric_day_index ON tbl_prd_line_metric_day ( + metric_date +); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_line_metric_day ADD CONSTRAINT tbl_prd_line_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_metric_hour +-- ---------------------------- +ALTER TABLE tbl_prd_line_metric_hour ADD CONSTRAINT tbl_prd_line_metric_hour_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_metric_month +-- ---------------------------- +ALTER TABLE tbl_prd_line_metric_month ADD CONSTRAINT tbl_prd_line_metric_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_metric_day ADD CONSTRAINT tbl_prd_line_station_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_metric_hour +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_metric_hour ADD CONSTRAINT tbl_prd_line_station_metric_hour_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_metric_month +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_metric_month ADD CONSTRAINT tbl_prd_line_station_metric_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_trans_day +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_trans_day ADD CONSTRAINT tbl_prd_line_station_trans_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_trans_hour +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_trans_hour ADD CONSTRAINT tbl_prd_line_station_trans_hour_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_trans_month +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_trans_month ADD CONSTRAINT tbl_prd_line_station_trans_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_route_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_route_metric_day ADD CONSTRAINT tbl_prd_route_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_metric_day ADD CONSTRAINT tbl_prd_station_freq_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_metric_month +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_metric_month ADD CONSTRAINT tbl_prd_station_freq_metric_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_trans_day +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_trans_day ADD CONSTRAINT tbl_prd_station_freq_trans_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_trans_month +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_trans_month ADD CONSTRAINT tbl_prd_station_freq_trans_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_sync_record +-- ---------------------------- +ALTER TABLE tbl_prd_sync_record ADD CONSTRAINT tbl_prd_sync_record_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Indexes structure for table tbl_public_files +-- ---------------------------- +CREATE INDEX idx_public_files_1 ON tbl_public_files ( + uuid +); +CREATE INDEX idx_public_files_2 ON tbl_public_files ( + create_by , + file_source_type +); +CREATE INDEX idx_public_files_3 ON tbl_public_files ( + file_busi_id , + file_source_type +); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_files +-- ---------------------------- +ALTER TABLE tbl_public_files ADD CONSTRAINT pk_tbl_public_files PRIMARY KEY (file_id); + +-- ---------------------------- +-- Indexes structure for table tbl_public_files_progress +-- ---------------------------- +CREATE INDEX idx_sys_files_progress_1 ON tbl_public_files_progress ( + file_id , + uuid +); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_files_progress +-- ---------------------------- +ALTER TABLE tbl_public_files_progress ADD CONSTRAINT pk_tbl_public_files_progress PRIMARY KEY (file_progress_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_msg_template +-- ---------------------------- +ALTER TABLE tbl_public_msg_template ADD CONSTRAINT pk_tbl_public_msg_template PRIMARY KEY (template_id); + +-- ---------------------------- +-- Indexes structure for table tbl_public_phone_msg_log +-- ---------------------------- +CREATE INDEX idx_public_phone_msg_log_1 ON tbl_public_phone_msg_log ( + phone_number +); +CREATE INDEX idx_public_phone_msg_log_2 ON tbl_public_phone_msg_log ( + msg_type +); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_phone_msg_log +-- ---------------------------- +ALTER TABLE tbl_public_phone_msg_log ADD CONSTRAINT pk_tbl_public_phone_msg_log PRIMARY KEY (msg_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_centime_delay +-- ---------------------------- +ALTER TABLE tbl_qa_centime_delay ADD CONSTRAINT tbl_qa_centime_delay_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_pos_match_rate +-- ---------------------------- +ALTER TABLE tbl_qa_pos_match_rate ADD CONSTRAINT tbl_qa_pos_match_rate_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_route_daily_count +-- ---------------------------- +ALTER TABLE tbl_qa_route_daily_count ADD CONSTRAINT tbl_qa_route_daily_count_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_route_miss +-- ---------------------------- +ALTER TABLE tbl_qa_route_miss ADD CONSTRAINT tbl_qa_route_miss_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_route_turnover_time +-- ---------------------------- +ALTER TABLE tbl_qa_route_turnover_time ADD CONSTRAINT tbl_qa_route_turnover_time_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_station_miss +-- ---------------------------- +ALTER TABLE tbl_qa_station_miss ADD CONSTRAINT tbl_qa_station_miss_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_vehicle_daily_count +-- ---------------------------- +ALTER TABLE tbl_qa_vehicle_daily_count ADD CONSTRAINT tbl_qa_vehicle_daily_count_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sftp_user +-- ---------------------------- +ALTER TABLE tbl_sftp_user ADD CONSTRAINT pk_tbl_sftp_user PRIMARY KEY (sftp_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sftp_user_file +-- ---------------------------- +ALTER TABLE tbl_sftp_user_file ADD CONSTRAINT pk_tbl_sftp_user_file PRIMARY KEY (sftp_file_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_config +-- ---------------------------- +ALTER TABLE tbl_sys_config ADD CONSTRAINT pk_tbl_sys_config PRIMARY KEY (config_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_dept +-- ---------------------------- +ALTER TABLE tbl_sys_dept ADD CONSTRAINT pk_tbl_sys_dept PRIMARY KEY (dept_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_dict_data +-- ---------------------------- +CREATE INDEX idx_sys_dict_data_1 ON tbl_sys_dict_data ( + dict_type +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_dict_data +-- ---------------------------- +ALTER TABLE tbl_sys_dict_data ADD CONSTRAINT pk_tbl_sys_dict_data PRIMARY KEY (dict_code); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_dict_type +-- ---------------------------- +ALTER TABLE tbl_sys_dict_type ADD CONSTRAINT pk_tbl_sys_dict_type PRIMARY KEY (dict_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_job +-- ---------------------------- +ALTER TABLE tbl_sys_job ADD CONSTRAINT pk_tbl_sys_job PRIMARY KEY (job_id, job_name, job_group); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_job_log +-- ---------------------------- +ALTER TABLE tbl_sys_job_log ADD CONSTRAINT pk_tbl_sys_job_log PRIMARY KEY (job_log_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_logininfor_2024 +-- ---------------------------- +-- ---------------------------- +-- Indexes structure for table tbl_sys_logininfor_default +-- ---------------------------- +CREATE UNIQUE INDEX tbl_sys_logininfor_default_pkey ON tbl_sys_logininfor_default ( + info_id , + login_time +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_logininfor_default +-- ---------------------------- +ALTER TABLE tbl_sys_logininfor_default ADD CONSTRAINT tbl_sys_logininfor_default_pkey PRIMARY KEY (info_id, login_time); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_menu +-- ---------------------------- +ALTER TABLE tbl_sys_menu ADD CONSTRAINT pk_tbl_sys_menu PRIMARY KEY (menu_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_notice +-- ---------------------------- +ALTER TABLE tbl_sys_notice ADD CONSTRAINT pk_tbl_sys_notice PRIMARY KEY (notice_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_oper_log_2024 +-- ---------------------------- +-- ---------------------------- +-- Indexes structure for table tbl_sys_oper_log_default +-- ---------------------------- +CREATE UNIQUE INDEX tbl_sys_oper_log_default_pkey ON tbl_sys_oper_log_default ( + oper_id , + oper_time +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_oper_log_default +-- ---------------------------- +ALTER TABLE tbl_sys_oper_log_default ADD CONSTRAINT tbl_sys_oper_log_default_pkey PRIMARY KEY (oper_id, oper_time); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_post +-- ---------------------------- +ALTER TABLE tbl_sys_post ADD CONSTRAINT pk_tbl_sys_post PRIMARY KEY (post_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_role +-- ---------------------------- +ALTER TABLE tbl_sys_role ADD CONSTRAINT pk_tbl_sys_role PRIMARY KEY (role_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_role_dept +-- ---------------------------- +ALTER TABLE tbl_sys_role_dept ADD CONSTRAINT pk_tbl_sys_role_dept PRIMARY KEY (role_id, dept_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_role_menu +-- ---------------------------- +ALTER TABLE tbl_sys_role_menu ADD CONSTRAINT pk_tbl_sys_role_menu PRIMARY KEY (role_id, menu_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_user +-- ---------------------------- +CREATE INDEX idx_sys_user_1 ON tbl_sys_user ( + dept_id +); +CREATE INDEX idx_sys_user_2 ON tbl_sys_user ( + phonenumber +); +CREATE INDEX idx_tbl_sys_user_1 ON tbl_sys_user ( + dept_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_user +-- ---------------------------- +ALTER TABLE tbl_sys_user ADD CONSTRAINT pk_tbl_sys_user PRIMARY KEY (user_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_user_post +-- ---------------------------- +CREATE INDEX idx_tbl_sys_user_post_1 ON tbl_sys_user_post ( + post_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_user_post +-- ---------------------------- +ALTER TABLE tbl_sys_user_post ADD CONSTRAINT pk_tbl_sys_user_post PRIMARY KEY (user_id, post_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_user_role +-- ---------------------------- +ALTER TABLE tbl_sys_user_role ADD CONSTRAINT pk_tbl_sys_user_role PRIMARY KEY (user_id, role_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_warning_contact +-- ---------------------------- +ALTER TABLE tbl_sys_warning_contact ADD CONSTRAINT pk_tbl_sys_warning_contact PRIMARY KEY (id); diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/pom.xml new file mode 100644 index 00000000..bb29323a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16/pom.xml @@ -0,0 +1,163 @@ + + + 4.0.0 + pom + + + org.springframework.boot + spring-boot-starter-parent + 2.6.7 + + + com.jiuyv.sptcc.agile + agile-data + 0.2.16 + agile-data + agile-data + + + UTF-8 + UTF-8 + 1.8 + 1.8 + 1.8 + 3.1.1 + 3.1.0 + 3.1.0 + 2021.0.2 + 3.3 + 6.2.3.Final + 3.1.0 + 1.3.0 + 0.2.16 + 0.1.13 + 0.1.6 + 1.4.6 + 2.8.5 + 0.1.55 + 20.3 + 3.14.9 + 6.3 + 1.2.11 + -Xdoclint:none + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + ${mybatis.version} + + + + com.jiuyv.sptcc.agile + agile-data-api + ${agile.service.api} + + + + com.jiuyv.sptcc.agile + agile-common + ${agile-common} + + + + com.jiuyv.sptcc.agile + agile-mobile-message-api + ${message-api.version} + + + + + + + + + agile-data-api + agile-data-service + + + + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16 + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.16 + + + + + nexus-releases + Internal Releases + http://172.16.12.11:8082/repository/maven-releases/ + + + + nexus-snapshots + Internal Snapshots + http://172.16.12.11:8082/repository/maven-snapshots/ + + + + + + + jiuyv + jiuyv + http://172.16.12.11:8082/repository/maven-public/ + + true + always + + + + + aliyun-releases + Internal Releases + http://maven.aliyun.com/nexus/content/groups/public + + + + spring-milestone-releases + Internal Releases + https://repo.spring.io/milestone + + + + + jiuyv + jiuyu Plugin Repository + http://172.16.12.11:8082/repository/maven-public/ + + true + always + + + + aliyun-releases + Internal Releases + http://maven.aliyun.com/nexus/content/groups/public + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + none + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/pom.xml new file mode 100644 index 00000000..593a3384 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/pom.xml @@ -0,0 +1,73 @@ + + + + agile-data + com.jiuyv.sptcc.agile + 0.2.17 + + 4.0.0 + jar + + agile-data-api + + + 8 + 8 + + true + + + + + + com.fasterxml.jackson.core + jackson-annotations + + + org.hibernate.validator + hibernate-validator + compile + + + + org.springframework + spring-web + + + + org.springframework + spring-context + + + + com.jiuyv.sptcc.agile + agile-common + + + + io.github.openfeign + feign-core + + + + org.apache.tomcat.embed + tomcat-embed-core + + + org.junit.jupiter + junit-jupiter-api + test + + + org.springframework + spring-test + test + + + org.springframework.boot + spring-boot-test + test + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/OrgAuthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/OrgAuthApi.java new file mode 100644 index 00000000..6fd7e300 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/OrgAuthApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * @ClassName : OrgAuthApi + * @Description : 获取机构权限列表 + * @Author : sky + * @Date: 2023-07-13 11:45 + */ +public interface OrgAuthApi { + + String PREFIX_PATH = "/public/agile-data/auth"; + + @PostMapping(PREFIX_PATH + "/info") + R getOrgAuth(OrgAuthReq req); + /** + * 接口权限验证 + * @param request 入参 + */ + @PostMapping(PREFIX_PATH + "/auth") + R check(OrgAuthRequest request); + + /** + * 获取密钥 + * @param orgCode + * @return + */ + @GetMapping(PREFIX_PATH+"/getKey") + R getKey(@RequestParam("orgCode") String orgCode); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java new file mode 100644 index 00000000..2e43162b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.dataservice.api.batch; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.batch.DateVo; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +public interface BatchApi { + + String PREFIX_PATH = "/public/agile-data"; + + /** + * 机构到期提醒 + * + * @param date + * @return + */ + @PostMapping(PREFIX_PATH + "/orgInfo/expire") + R expire(@RequestParam(value = "date",required = false) String date); + + /** + * 机构到期下架 + * + * @param date + * @return + */ + @PostMapping(PREFIX_PATH + "/orgInfo/down") + R down(@RequestParam(value = "date",required = false) String date); + + + /** + * pos匹配率异常告警 + * @param dateVo + * @return + */ + @PostMapping(PREFIX_PATH + "/pos/posRate") + R posCheck(DateVo dateVo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/ApiLogApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/ApiLogApi.java new file mode 100644 index 00000000..0799737f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/ApiLogApi.java @@ -0,0 +1,28 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiLogRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiLogResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @ClassName : ApiLogApi + * @Description : 日志接口 + * @Author : sky + * @Date: 2023-09-22 10:25 + */ +public interface ApiLogApi { + + + String PREFIX_PATH = "/public/agile-data/apilog"; + + + @PostMapping(PREFIX_PATH + "/page") + R> list(ApiLogRequest request); + + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("id") Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/DataApiFeign.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/DataApiFeign.java new file mode 100644 index 00000000..6ec1b3c6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/DataApiFeign.java @@ -0,0 +1,145 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import feign.Response; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 敏捷API + * + * @author yulei + */ +public interface DataApiFeign { + + String PREFIX_PATH = "/public/agile-data/agileApi"; + + + @GetMapping(PREFIX_PATH + "/getPrefixPath") + R getApiPrefixPath(); + + /** + * 获取详情 + * + * @param id + * @return + */ + @PostMapping(PREFIX_PATH + "/getDate") + R getDataApiById(@RequestParam("id") Long id); + + /** + * 获取数据源的API列表 + * + * @param sourceId + * @return + */ + @GetMapping(PREFIX_PATH + "/sourceList") + R> getDataApiList(@RequestParam("sourceId") Long sourceId); + + /** + * 获取分页列表 + * + * @param apiQuery + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> getDataApiPage(ApiPageRequest apiQuery); + + /** + * 新增API + * + * @param dataApi + * @return + */ + @PostMapping(PREFIX_PATH + "/add") + R saveDataApi(ApiAddRequest dataApi); + + /** + * 修改API + * + * @param dataApi + * @return + */ + @PostMapping(PREFIX_PATH + "/update") + R updateDataApi(ApiUpdateRequest dataApi); + + /** + * 删除API + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/delete") + R deleteDataApiById(@RequestBody @Validated ApiDelRequest request); + + /** + * 复制API + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/copy") + R copyDataApi(ApiCopyRequest request); + + /** + * 注册API + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/register") + R registerDataApi(ApiStatusRequest request); + + /** + * 发布API + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/release") + R releaseDataApi(ApiStatusRequest dto); + + /** + * 注销API + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/cancel") + R cancelDataApi(ApiStatusRequest dto); + + /** + * 下架API + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/down") + R downDataApi(ApiStatusRequest dto); + + /** + * 获取api树状结构数据 + * + * @return + */ + @PostMapping(PREFIX_PATH + "/tree") + R> apiTree(); + + /** + * 生成接口文档 + * + * @param id + * @return + */ + @GetMapping(PREFIX_PATH + "/word/down") + Response wordDataApi(@RequestParam("id") Long id) throws Exception; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgCfgConsoleApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgCfgConsoleApi.java new file mode 100644 index 00000000..5dde2c4a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgCfgConsoleApi.java @@ -0,0 +1,75 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 机构配置接口 + * + * @ClassName : OrgConfigApi + * @Description : + * @Author : sky + * @Date: 2023-09-07 15:44 + */ +public interface OrgCfgConsoleApi { + + String PREFIX_PATH = "/public/agile-data/orgConfig"; + + /** + * 分页查询列表 + * + * @param query + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(OrgConfigQueryRequest query); + + /** + * 查询详细 + * + * @param configId + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R queryDetail(@RequestParam("configId") Long configId); + + /** + * 新增 + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/add") + R add(OrgConfigAddRequest dto); + + /** + * 修改 + * + * @param dto + * @return + */ + @PostMapping(PREFIX_PATH + "/edit") + R edit(OrgConfigEditRequest dto); + + /** + * 删除 + * + * @param configId + * @return + */ + @PostMapping(PREFIX_PATH + "/delete") + R delete(@RequestParam("configId") Long configId); + + + @GetMapping(PREFIX_PATH + "/getOrgCfg") + R> getConfig(@RequestParam("orgCode") String orgCode); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgInfoConsoleApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgInfoConsoleApi.java new file mode 100644 index 00000000..c17163cc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgInfoConsoleApi.java @@ -0,0 +1,108 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 机构管控台服务接口 + * + * @ClassName : OrgInfoApi + * @Description : + * @Author : sky + * @Date: 2023-09-07 15:51 + */ +public interface OrgInfoConsoleApi { + + String PREFIX_PATH = "/public/agile-data/orgInfo"; + + /** + * 分页查询 + * + * @param query + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(OrgInfoQueryReq query); + + /** + * 详情 + * + * @param orgNo + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R getInfo(@RequestParam("orgNo") String orgNo); + + /** + * 新增接口 + * + * @param addReq + * @return + */ + @PostMapping(PREFIX_PATH + "/add") + R add(OrgInfoAddReq addReq); + + /** + * 编辑接口 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/edit") + R edit(OrgInfoEditReq request); + + /** + * 删除接口 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/remove") + R remove(OrgDelReq request); + + /** + * 启用机构 + */ + @PostMapping(PREFIX_PATH + "/run") + R run(OrgInfoStatusReq request); + + /** + * 停用机构 + */ + @PostMapping(PREFIX_PATH + "/stop") + R stop(OrgInfoStatusReq request); + + /** + * 获取密钥 + * + * @return + */ + @GetMapping(PREFIX_PATH + "/key") + R getGenerateKeyHex(); + + /** + * 授权 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/auth") + R orgApiAuth(OrgApiAuthRequest request); + + /** + * 获取权限信息 + * + * @param orgNo + * @return + */ + @GetMapping(PREFIX_PATH + "/auth/list") + R orgApiAuthInfo(@RequestParam("orgNo") String orgNo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgStcsConsoleApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgStcsConsoleApi.java new file mode 100644 index 00000000..50985f92 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/console/OrgStcsConsoleApi.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.api.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiStatisticsResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 机构接口调用次数统计 + * + * @ClassName : OrgStcsConsoleApi + * @Author : sky + * @Date: 2023-09-07 16:02 + */ +public interface OrgStcsConsoleApi { + + String PREFIX_PATH = "/public/agile-data/orgStcs"; + + @PostMapping(PREFIX_PATH + "/list") + R> queryByPage(OrgStatisticsQueryReq request); + + /** + * 查询用户接口调用统计列表 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/userApiStatistics") + R> getUserApiStatistics(ApiUserRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/DataApiFeignApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/DataApiFeignApi.java new file mode 100644 index 00000000..91144fbb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/DataApiFeignApi.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.api.portal; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +public interface DataApiFeignApi { + + String PREFIX_PATH = "/public/agile-data/agileApi"; + + /** + * 查询用户接口列表 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/userApiList") + R> getUserApiList(ApiUserRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/SdkDownload.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/SdkDownload.java new file mode 100644 index 00000000..f56a2997 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/portal/SdkDownload.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.api.portal; + +import org.springframework.http.ResponseEntity; +import org.springframework.web.bind.annotation.GetMapping; + +/** + * @ClassName : SdkDownload + * @Description : + * @Author : sky + * @Date: 2023-09-21 10:42 + */ +public interface SdkDownload { + + String PREFIX_PATH = "/public/agile-data/port"; + + /** + * sdk 文件下载 + * + * @return + */ + @GetMapping(PREFIX_PATH + "/download/sdk") + ResponseEntity download(); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/DownloadApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/DownloadApi.java new file mode 100644 index 00000000..c3433710 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/DownloadApi.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import feign.Response; +import org.springframework.web.bind.annotation.PostMapping; + +import java.io.IOException; + + +/** + * sftp文件下载 + * + * @ClassName : DownloadApi + * @Description : + * @Author : sky + * @Date: 2023-09-13 13:21 + */ +public interface DownloadApi { + + String PREFIX_PATH = "/public/agile-data/product"; + + @PostMapping(PREFIX_PATH + "/download") + Response download(DownLoadRequest request) throws IOException; + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineInfoApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineInfoApi.java new file mode 100644 index 00000000..313112d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineInfoApi.java @@ -0,0 +1,68 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineInfoReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineStationInfoReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineInfoRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineStationInfoRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * 线路站点基础信息表 + * + * @ClassName : LineInfoApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 18:51 + */ +public interface LineInfoApi { + + String PREFIX_PATH = "/public/agile-data/lineInfo"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineInfoReq request); + + + /** + * 根据线路名称获取线路编码 + * + * @param lineName + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("lineName") String lineName); + + + /** + * 获取站点列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/stationList") + R> stationList(LineStationInfoReq request); + + + /** + * 根据站点名称获取站点信息 + * + * @param lineName + * @return + */ + @GetMapping(PREFIX_PATH + "/stationDetail") + R stationDetail(@RequestParam("lineName") String lineName); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricDayApi.java new file mode 100644 index 00000000..1a2c3791 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricDayApi.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : LineMetricDay + * @Description : + * @Author : sky + * @Date: 2023-09-18 15:17 + */ +public interface LineMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/lineDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineDayPageReq request); + + + /** + * 机构获取线路日客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(LineDayReqRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricHourApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricHourApi.java new file mode 100644 index 00000000..4d6e86e2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricHourApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : LineMetricDay + * @Description : + * @Author : sky + * @Date: 2023-09-18 15:17 + */ +public interface LineMetricHourApi { + + String PREFIX_PATH = "/public/agile-data/linHour"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineHourPageReq request); + + + + /** + * 机构获取线路小时客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(LineHourRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricMonthApi.java new file mode 100644 index 00000000..a7e7dac8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/LineMetricMonthApi.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : LineMetricDay + * @Description : + * @Author : sky + * @Date: 2023-09-18 15:17 + */ +public interface LineMetricMonthApi { + + String PREFIX_PATH = "/public/agile-data/linMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(LineMetricMonthReq request); + + + /** + * 机构获取线路月客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(LineMonthRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/RouteMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/RouteMetricDayApi.java new file mode 100644 index 00000000..fc92e38f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/RouteMetricDayApi.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.RouteMetricDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @ClassName : RouteMetricDayApi + * @Description : 班线 + * @Author : sky + * @Date: 2023-09-19 13:56 + */ +public interface RouteMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/routeMetricDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteMetricDayReq request); + + /** + * 查看详情 + * + * @param id + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("id") Long id); + + + + /** + * 机构获取班次日客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(RouteDayRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricDayApi.java new file mode 100644 index 00000000..8576595e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricDayApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * 常乘客站点换乘客流量 + * + * @ClassName : StationFreqMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 14:03 + */ +public interface StationFreqMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/stationFreqMetricDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationFreqMetricDayReq request); + + + /** + * 机构获站点常乘客日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqDayRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricMonthApi.java new file mode 100644 index 00000000..0c8861d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqMetricMonthApi.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * 常乘客站点客流量月统计 + * + * @ClassName : StationFreqMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 14:03 + */ +public interface StationFreqMetricMonthApi { + + String PREFIX_PATH = "/public/agile-data/stationFreqMetricMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list( StationFreqMetricMonthReq request); + + + /** + * 机构获站点常乘客月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqMonthRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransDayApi.java new file mode 100644 index 00000000..b704b641 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransDayApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @ClassName : StationFreqTransDay + * @Description : 常乘客换乘客流量日统计 + * @Author : sky + * @Date: 2023-09-19 14:14 + */ +public interface StationFreqTransDayApi { + + + String PREFIX_PATH = "/public/agile-data/stationFreqTransDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationFreqTransDayReq request); + + + /** + * 机构获取站点换乘日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqTransDayRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransMonthApi.java new file mode 100644 index 00000000..0db5dfa7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationFreqTransMonthApi.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * @ClassName : StationFreqTransDay + * @Description : 常乘客换乘客流量月统计 + * @Author : sky + * @Date: 2023-09-19 14:14 + */ +public interface StationFreqTransMonthApi { + + + String PREFIX_PATH = "/public/agile-data/stationFreqTransMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationFreqTransMonthReq request); + + + /** + * 机构获取站点换乘月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationFreqTransMonthRequest request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricDayApi.java new file mode 100644 index 00000000..4bca773f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricDayApi.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 13:33 + */ +public interface StationMetricDayApi { + + String PREFIX_PATH = "/public/agile-data/StationMetricDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricDayReq request); + + /** + * 机构获取站点日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationDayRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricHourApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricHourApi.java new file mode 100644 index 00000000..1de15825 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricHourApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 13:33 + */ +public interface StationMetricHourApi { + + String PREFIX_PATH = "/public/agile-data/StationMetricHour"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricHourReq request); + + + /** + * 机构获取站点小时路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationHourRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricMonthApi.java new file mode 100644 index 00000000..a1626d6d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationMetricMonthApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationMetricDayApi + * @Description : + * @Author : sky + * @Date: 2023-09-19 13:33 + */ +public interface StationMetricMonthApi { + + String PREFIX_PATH = "/public/agile-data/StationMetricMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricMonthReq request); + + + /** + * 机构获取站点月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationMonthRequest request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransDayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransDayApi.java new file mode 100644 index 00000000..9fdc8566 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransDayApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationTransDayApi + * @Description : 换乘 + * @Author : sky + * @Date: 2023-09-19 13:45 + */ +public interface StationTransDayApi { + + + String PREFIX_PATH = "/public/agile-data/StationTransDay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationTransDayReq request); + + + /** + * 机构获取站点换乘日路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationTransDayRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransHourApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransHourApi.java new file mode 100644 index 00000000..70fd2d24 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransHourApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationTransDayApi + * @Description : 换乘 + * @Author : sky + * @Date: 2023-09-19 13:45 + */ +public interface StationTransHourApi { + + + String PREFIX_PATH = "/public/agile-data/StationTransHour"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMetricHourReq request); + + + /** + * 机构获取站点换乘小时路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationTransHourRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransMonthApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransMonthApi.java new file mode 100644 index 00000000..4eaf6132 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/product/StationTransMonthApi.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.api.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransMonthRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : StationTransDayApi + * @Description : 换乘 + * @Author : sky + * @Date: 2023-09-19 13:45 + */ +public interface StationTransMonthApi { + + String PREFIX_PATH = "/public/agile-data/StationTransMonth"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationTransMonthReq request); + + + /** + * 机构获取站点换乘月路客流量 + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/page") + R> page(StationTransMonthRequest request); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/CentimeDelayApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/CentimeDelayApi.java new file mode 100644 index 00000000..81dc92af --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/CentimeDelayApi.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.CentimeDelayRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 延迟上送 + * + * @Author : sky + * @Date: 2023-09-20 17:35 + */ +public interface CentimeDelayApi { + + String PREFIX_PATH = "/public/agile-data/quality/centimeDelay"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(CentimeDelayReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/PosMatchRateApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/PosMatchRateApi.java new file mode 100644 index 00000000..7fa22436 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/PosMatchRateApi.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.PosMatchRateRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * Pos匹配率 + * + * @ClassName : PosMatchRateApi + * @Description : + * @Author : sky + * @Date: 2023-09-20 17:25 + */ +public interface PosMatchRateApi { + + + String PREFIX_PATH = "/public/agile-data/quality/posMatchRate"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(PosMatchRateReq request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteDailyCountApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteDailyCountApi.java new file mode 100644 index 00000000..af82e804 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteDailyCountApi.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteDailyRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 日运营线路数 + * + * @ClassName : RouteDailyCountApi + * @Description : 日运营线路数 + * @Author : sky + * @Date: 2023-09-20 17:19 + */ +public interface RouteDailyCountApi { + + String PREFIX_PATH = "/public/agile-data/quality/routeDailyCount"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteDailyReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteMissApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteMissApi.java new file mode 100644 index 00000000..705e158b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteMissApi.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteMissRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 班次缺失率 + * + * @Author : sky + * @Date: 2023-09-20 16:58 + */ +public interface RouteMissApi { + + String PREFIX_PATH = "/public/agile-data/quality/routeMiss"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteMissReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteTurnoverTimeApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteTurnoverTimeApi.java new file mode 100644 index 00000000..5f23deb8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/RouteTurnoverTimeApi.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteTurnoverRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * 班次周转时间 + * + * @ClassName : RouteTurnoverTimeApi + * @Description : 班次周转时间 + * @Author : sky + * @Date: 2023-09-20 16:44 + */ +public interface RouteTurnoverTimeApi { + + String PREFIX_PATH = "/public/agile-data/quality/routeTurnover"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(RouteTurnoverReq request); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/StationMissApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/StationMissApi.java new file mode 100644 index 00000000..3965e2d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/StationMissApi.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.StationMissRes; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * 站点缺失率 + * + * @ClassName : StationMissApi + * @Description : + * @Author : sky + * @Date: 2023-09-20 16:33 + */ +public interface StationMissApi { + + + String PREFIX_PATH = "/public/agile-data/quality/stationMiss"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R> list(StationMissReq request); + + + /** + * 获取列表信息 + * + * @param id + * @return + */ + @GetMapping(PREFIX_PATH + "/detail") + R detail(@RequestParam("id") Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/VehicleDailyApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/VehicleDailyApi.java new file mode 100644 index 00000000..0e831b5b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/quality/VehicleDailyApi.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.api.quality; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDailyRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDayResponse; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : VehicleDailyApi + * @Description : 运营车辆数 + * @Author : sky + * @Date: 2023-09-20 15:05 + */ +public interface VehicleDailyApi { + + String PREFIX_PATH = "/public/agile-data/quality/vehicleDaily"; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @PostMapping(PREFIX_PATH + "/list") + R list(VehicleDailyReq request); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java new file mode 100644 index 00000000..31a760d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum AlgorithmCrypto implements IDictEnum { + + BASE64("1", "BASE64加密"), + MD5("2", "MD5加密"), + SHA_1("3", "SHA_1加密"), + SHA_256("4", "SHA_256加密"), + AES("5", "AES加密"); + // DES("6", "DES加密"); + + private final String key; + + private final String val; + + AlgorithmCrypto(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + public String getVal() { + return val; + } + + public static AlgorithmCrypto getAlgorithmCrypto(String algorithmCrypt) { + for (AlgorithmCrypto type : AlgorithmCrypto.values()) { + if (type.key.equals(algorithmCrypt)) { + return type; + } + } + return BASE64; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApiCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApiCrypto.java new file mode 100644 index 00000000..bf51fe5e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApiCrypto.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public class ApiCrypto { + + public enum ApiState implements IDictEnum{ + WAIT("1","待注册"), + REGISTER("2","已注册"), + RELEASE("3","已发布"); + + ApiState(String code, String msg) { + this.code = code; + this.msg = msg; + } + private final String code; + private final String msg; + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApicodeEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApicodeEnum.java new file mode 100644 index 00000000..50b429ab --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ApicodeEnum.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + + +public enum ApicodeEnum implements IDictEnum { + + LINE_HOUR("lineHour", "线路小时客流指标"), + LINE_DAY("lineDay", "线路每日客流指标"), + LINE_MONTH("lineMonth", "线路每月客流指标"), + STATION_HOUR("stationHour", "站点小时客流指标"), + STATION_DAY("stationDay", "站点每日客流指标"), + STATION_MONTH("stationMonth", "站点每月客流指标"), + STATION_TRANS_HOUR("stationTransHour", "站点换乘小时指标"), + STATION_TRANS_DAY("stationTransDay", "站点换乘日指标"), + STATION_TRNAS_MONTH("stationTransMonth", "站点换乘月指标"), + STATION_FREQ_DAY("stationFreqDay", "站点常乘客日指标"), + STATION_FREQ_MONTH("stationFreqMonth", "站点常乘客月指标"), + STATION_FREQ_TRANS_DAY("stationFreqTransDay", "站点常乘客换乘日指标"), + STATION_FREQ_TRANS_MONTH("stationFreqTransMonth", "站点常乘客换乘月指标"), + ROUTE_DAY("routeDay", "班次客流量"), + DWONLOAD("download", "下载接口"); + + private final String code; + + private final String msg; + + + ApicodeEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ConfigCrypot.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ConfigCrypot.java new file mode 100644 index 00000000..4ef814c8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/ConfigCrypot.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public class ConfigCrypot { + + public enum ConfigStatus implements IDictEnum{ + + STOP("1","停用"), + NORMAL("0","正常"); + + ConfigStatus(String code, String msg) { + this.code = code; + this.msg = msg; + } + + private String code; + + private String msg; + + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 机构配置参数 + * + * @ClassName : OrgCfnKeyEnum + * @Description : + * @Author : sky + * @Date: 2023-09-22 17:44 + */ + public enum OrgCfnKeyEnum implements IDictEnum { + + DATA_BEGIN("data_begin", "数据起始时间"), + DATA_END("data_end", "数据结束时间"), + DOWN_RIGHT("downLoadRigth","文件下载权限") + ; + + private final String code; + + private final String msg; + + OrgCfnKeyEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataApiEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataApiEnum.java new file mode 100644 index 00000000..b326abad --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataApiEnum.java @@ -0,0 +1,486 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +import java.math.BigDecimal; +import java.text.ParseException; +import java.text.SimpleDateFormat; + +/** + * @ClassName : DataApiEnum + * @Description : + * @Author : sky + * @Date: 2023-09-04 17:44 + */ +public class DataApiEnum { + + /** + * API状态 + */ + public enum API_STATUS implements IDictEnum { + WAIT("1", "待注册"), + REGISTER("2", "已注册"), + RELEASE("3", "已发布"), + DOWN("4", "下架"); + private final String code; + private final String msg; + + API_STATUS(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * API类型 + */ + public enum API_TYPE implements IDictEnum { + AGILE("1", "敏捷API"), + SYSTEM("2", "系统API"); + private final String code; + private final String msg; + + API_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + public enum ResType implements IDictEnum{ + + JSON("JSON", "json类型"); + + private final String code; + + private final String msg; + + ResType(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 脱敏类型 + */ + public enum CIPHER_TYPE implements IDictEnum { + + REGEX("1", "正则替换"), + ALGORITHM("2", "加密算法"); + + private final String code; + + private final String msg; + + CIPHER_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static CIPHER_TYPE getCipherType(String cipherType) { + for (CIPHER_TYPE type : CIPHER_TYPE.values()) { + if (type.code.equals(cipherType)) { + return type; + } + } + return REGEX; + } + + public String getKey() { + return code; + } + + public String getVal() { + return msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 加密规则类型 + */ + public enum ALGORITHM_CRYPTO implements IDictEnum { + + BASE64("1", "BASE64加密"), + MD5("2", "MD5加密"), + SHA_1("3", "SHA_1加密"), + SHA_256("4", "SHA_256加密"), + AES("5", "AES加密"); + + private final String code; + + private final String msg; + + ALGORITHM_CRYPTO(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static ALGORITHM_CRYPTO getAlgorithmCrypto(String algorithmCrypt) { + for (ALGORITHM_CRYPTO type : ALGORITHM_CRYPTO.values()) { + if (type.code.equals(algorithmCrypt)) { + return type; + } + } + return BASE64; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 正则规则类型 + */ + public enum REGEX_CRYPTO implements IDictEnum { + + CHINESE_NAME("1", "中文姓名"), + ID_CARD("2", "身份证号"), + FIXED_PHONE("3", "固定电话"), + MOBILE_PHONE("4", "手机号码"), + ADDRESS("5", "地址"), + EMAIL("6", "电子邮箱"), + BANK_CARD("7", "银行卡号"), + CNAPS_CODE("8", "公司开户银行联号"); + + private final String code; + + private final String msg; + + REGEX_CRYPTO(String code, String msg) { + this.code = code; + this.msg = msg; + } + + + public static REGEX_CRYPTO getRegexCrypto(String regexCrypt) { + for (REGEX_CRYPTO type : REGEX_CRYPTO.values()) { + if (type.code.equals(regexCrypt)) { + return type; + } + } + return CHINESE_NAME; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 配置方式 + */ + public enum CONFIG_TYPE implements IDictEnum { + + FORM("1", "表引导模式"), + SCRIPT("2", "脚本模式"); + + private final String code; + + private final String msg; + + CONFIG_TYPE(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * 参数类型 + */ + public enum ParamType implements IDictEnum { + + STRING("String", "字符串"), + INTEGER("Integer", "整型"), + DECIMAL("Number", "浮点型"), + DATE("Date", "时间"), + LIST("List", "集合"), + LONG("Long","长整型"); + + private final String code; + + private final String msg; + + ParamType(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public static Object parse(ParamType paramType, Object obj) throws ParseException { + if (obj == null) { + return null; + } + switch (paramType) { + case STRING: + return obj.toString(); + + case DECIMAL: + return new BigDecimal(obj.toString()).doubleValue(); + + case INTEGER: + return java.lang.Integer.parseInt(obj.toString()); + + case LIST: + return (java.util.List) obj; + + case LONG: + return Long.valueOf(obj.toString()); + + case DATE: + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + return sdf.parse(obj.toString()); + } + return null; + } + + public static ParamType getParamType(String paramType) { + for (ParamType type : ParamType.values()) { + if (type.code.equals(paramType)) { + return type; + } + } + return STRING; + } + + public static String parse(String paramType){ + //Integer + //Long + //number + //Date + //List + //string + return null; + } + + @Override + public java.lang.String getCode() { + return code; + } + + @Override + public java.lang.String getMsg() { + return msg; + } + } + + /** + * 请求方式 + */ + public enum REQ_METHOD implements IDictEnum { + + GET("GET", "get請求"), + POST("POST", "post請求"); + + private final String code; + + private final String msg; + + REQ_METHOD(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * SQL操作符 + */ + public enum WHERE_TYPE implements IDictEnum{ + + EQUALS("=", "=", "等于"), + NOT_EQUALS("!=", "!=", "不等于"), + LIKE("LIKE", "LIKE", "全模糊查询"), + LIKE_LEFT("LIKE%", "LIKE", "左模糊查询"), + LIKE_RIGHT("%LIKE", "LIKE", "右模糊查询"), + GREATER_THAN(">", ">", "大于"), + GREATER_THAN_EQUALS(">=", ">=", "大于等于"), + LESS_THAN("<", "<", "小于"), + LESS_THAN_EQUALS("<=", "<=", "小于等于"), + NULL("isNull", "IS NULL", "是否为空"), + NOT_NULL("isNotNull", "IS NOT NULL", "是否不为空"), + IN("in", "IN", "IN"); + + private final String type; + + private final String key; + + private final String desc; + + WHERE_TYPE(String type, String key, String desc) { + this.type = type; + this.key = key; + this.desc = desc; + } + + public static WHERE_TYPE getWhereType(String whereType) { + for (WHERE_TYPE type : WHERE_TYPE.values()) { + if (type.type.equals(whereType)) { + return type; + } + } + return EQUALS; + } + + public String getType() { + return type; + } + + public String getKey() { + return key; + } + + public String getDesc() { + return desc; + } + + @Override + public String getCode() { + return type; + } + + @Override + public String getMsg() { + return desc; + } + } + + /** + * 请求方式 + */ + public enum PARAM_NULL implements IDictEnum { + + NULL("1", "可以为空"), + NOT_NULL("0", "不能为空"); + + private final String code; + + private final String msg; + + PARAM_NULL(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + public enum CipherType implements IDictEnum { + + REGEX("1", "正则替换"), + ALGORITHM("2", "加密算法"); + + private final String key; + + private final String val; + + CipherType(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + public String getVal() { + return val; + } + + public static CipherType getCipherType(String cipherType) { + for (CipherType type : CipherType.values()) { + if (type.key.equals(cipherType)) { + return type; + } + } + return REGEX; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataStatusEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataStatusEnum.java new file mode 100644 index 00000000..991fda2e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/DataStatusEnum.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum DataStatusEnum implements IDictEnum{ + SUCCESS("00", "成功"), + + FAILED("01", "失败"), + OTHER("99", "其他"), + ; + private final String code; + private final String msg; + + DataStatusEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/EnableState.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/EnableState.java new file mode 100644 index 00000000..884566a0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/EnableState.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum EnableState implements IDictEnum { + + DISABLE("1", "失败"), + ENABLE("0", "成功"); + + private final String code; + private final String msg; + EnableState(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/FileTypeEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/FileTypeEnum.java new file mode 100644 index 00000000..215c3fba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/FileTypeEnum.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +/** + * 文件类型枚举 + * @ClassName : FileType + * @Author : sky + * @Date: 2023-09-13 13:25 + */ +public enum FileTypeEnum implements IDictEnum { + /** + * 文件类型,文件名称 + */ + LINE_HOUR("lineHour", "获取线路小时客流指标"), + LINE_DAY("lineDay", "获取线路每日客流指标"), + LINE_MONTH("lineMonth", "获取线路每月客流指标"), + STATION_HOUR("stationHour","获取线路站点小时客流指标"), + STATION_DAY("stationDay", "获取线路站点每日客流指标"), + STATION_MONTH("stationMonth", "获取线路站点每月客流指标"), + STATION_TRANS_HOUR("stationTransHour","获取线路站点小时换乘指标"), + STATION_TRANS_DAY("stationTransDay", "获取线路站点每日换乘指标"), + STATION_TRNAS_MONTH("stationTrnasMonth", "站点换乘月指标"), + STATION_FREQ_DAY("stationFreqDay", "站点常乘客日指标"), + STATION_FREQ_MONTH("stationFreqMonth","站点常乘客日指标"), + STATION_FREQ_TRANS_DAY("stationFreqTransDay","站点常乘客换乘月日指标"), + STATION_FREQ_TRANS_MONTH("stationFreqTransMonth", "站点常乘客换乘月指标"), + ROUTE("routeMetricDay","班次客流量"), + ; + + FileTypeEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + private String code; + + private String msg; + + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + + public static FileTypeEnum getEnum(String fileType) { + if (fileType == null) { + return null; + } + FileTypeEnum[] values = FileTypeEnum.values(); + for (FileTypeEnum value : values) { + if (value.getCode().equals(fileType)) { + return value; + } + } + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/IDictEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/IDictEnum.java new file mode 100644 index 00000000..38399448 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/IDictEnum.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +/** + * 字段代码通用枚举接口 + * 便于统一方式处理 + * + * @author zhouliang + */ +public interface IDictEnum { + + public String getCode(); + + public String getMsg(); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/OrgCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/OrgCrypto.java new file mode 100644 index 00000000..faf64efd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/OrgCrypto.java @@ -0,0 +1,124 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public class OrgCrypto { + /** + * @ClassName : OrgInfoStatus + * @Description : + * @Author : sky + * @Date: 2023-07-13 17:02 + */ + public enum OrgInfoStatusCrypto implements IDictEnum { + DOWN("1", "停用"), + UP("0", "正常"), + DUE("2", "到期"); + + private final String key; + + private final String val; + + OrgInfoStatusCrypto(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } + } + + /** + * @ClassName : OrgStatus + * @Description : 机构状态枚举类 + * @Author : sky + * @Date: 2023-09-07 11:31 + */ + public enum OrgStatus implements IDictEnum { + + NORMAL("0", "正常"), + STOP("1", "停用"), + END("2", "到期"); + + private final String code; + + private final String msg; + + OrgStatus(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } + + /** + * @ClassName : OrgType + * @Description : + * @Author : sky + * @Date: 2023-09-07 20:51 + */ + public enum OrgType implements IDictEnum { + + /** + * 01.国家机关; + * 02.全额事业单位; + * 03.差额事业单位; + * 04.自收自支事业单位; + * 05.有限责任公司; + * 06.股份有限公司; + * 07.合伙企业; + * 08.办事处(代表处、联络处); + * 09.社会团体; + * 10.独资企业; + * 11.民办非企业单位; + * 12.其他 + */ + GJJG("01", "国家机关"), + SYDW("02", "事业单位"), + YXGS("05", "有限责任公司"), + GFGS("06", "股份有限公司"), + HHQY("07", "合伙企业"), + BSC("08", "办事处(代表处、联络处)"), + SHTT("09", "社会团体"), + DZQY("10", "独资企业"), + MBFQYDW("11", "民办非企业单位"), + OTHER("12", "其他"), + ; + + private final String code; + + private final String msg; + + OrgType(String code, String msg) { + this.code = code; + this.msg = msg; + } + + @Override + public String getCode() { + return code; + } + + @Override + public String getMsg() { + return msg; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/RegexCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/RegexCrypto.java new file mode 100644 index 00000000..b132b435 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/RegexCrypto.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.enums; + +public enum RegexCrypto implements IDictEnum { + + CHINESE_NAME("1", "中文姓名"), + ID_CARD("2", "身份证号"), + FIXED_PHONE("3", "固定电话"), + MOBILE_PHONE("4", "手机号码"), + ADDRESS("5", "地址"), + EMAIL("6", "电子邮箱"), + BANK_CARD("7", "银行卡号"), + CNAPS_CODE("8", "公司开户银行联号"); + + private final String key; + + private final String val; + + RegexCrypto(String key, String val) { + this.key = key; + this.val = val; + } + + public String getKey() { + return key; + } + + public String getVal() { + return val; + } + + public static RegexCrypto getRegexCrypto(String regexCrypt) { + for (RegexCrypto type : RegexCrypto.values()) { + if (type.key.equals(regexCrypt)) { + return type; + } + } + return CHINESE_NAME; + } + + @Override + public String getCode() { + return key; + } + + @Override + public String getMsg() { + return val; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/WhereType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/WhereType.java new file mode 100644 index 00000000..6f2a0d70 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/WhereType.java @@ -0,0 +1,60 @@ +// package com.jiuyv.sptcc.agile.dataservice.dto.enums; +// +// public enum WhereType implements IDictEnum { +// +// EQUALS("1", "=", "等于"), +// NOT_EQUALS("2", "!=", "不等于"), +// LIKE("3", "LIKE", "全模糊查询"), +// LIKE_LEFT("4", "LIKE", "左模糊查询"), +// LIKE_RIGHT("5", "LIKE", "右模糊查询"), +// GREATER_THAN("6", ">", "大于"), +// GREATER_THAN_EQUALS("7", ">=", "大于等于"), +// LESS_THAN("8", "<", "小于"), +// LESS_THAN_EQUALS("9", "<=", "小于等于"), +// NULL("10", "IS NULL", "是否为空"), +// NOT_NULL("11", "IS NOT NULL", "是否不为空"), +// IN("12", "IN", "IN"); +// +// private final String type; +// +// private final String key; +// +// private final String desc; +// +// WhereType(String type, String key, String desc) { +// this.type = type; +// this.key = key; +// this.desc = desc; +// } +// +// public String getType() { +// return type; +// } +// +// public String getKey() { +// return key; +// } +// +// public String getDesc() { +// return desc; +// } +// +// public static WhereType getWhereType(String whereType) { +// for (WhereType type : WhereType.values()) { +// if (type.type.equals(whereType)) { +// return type; +// } +// } +// return EQUALS; +// } +// +// @Override +// public String getCode() { +// return key; +// } +// +// @Override +// public String getMsg() { +// return desc; +// } +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/DbSchema.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/DbSchema.java new file mode 100644 index 00000000..d334f04b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/DbSchema.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 数据源连接信息Model + */ +public class DbSchema implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主机 + */ + @NotBlank(message = "主机不能为空") + private String host; + + /** + * 端口 + */ + @NotNull(message = "端口不能为空") + private Integer port; + + /** + * 用户名 + */ + @NotBlank(message = "用户名不能为空") + private String username; + + /** + * 密码 + */ + @NotBlank(message = "密码不能为空") + private String password; + + /** + * 数据库 + */ + private String dbName; + + /** + * 服务名 + */ + private String sid; + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public Integer getPort() { + return port; + } + + public void setPort(Integer port) { + this.port = port; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getDbName() { + return dbName; + } + + public void setDbName(String dbName) { + this.dbName = dbName; + } + + public String getSid() { + return sid; + } + + public void setSid(String sid) { + this.sid = sid; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ExecuteConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ExecuteConfig.java new file mode 100644 index 00000000..929b34b9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ExecuteConfig.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.List; + +/** + * 执行配置信息Model + */ +public class ExecuteConfig implements Serializable { + + private static final long serialVersionUID = 1L; + + + /** + * 数据源 + */ + @NotNull(message = "数据源不能为空") + private Long sourceId; + + /** + * 配置方式 + */ + @NotBlank(message = "配置方式不能为空") + @EnumCheckValue(value = DataApiEnum.CONFIG_TYPE.class) + private String configType; + + /** + * 数据库表主键 + */ + private Long tableId; + + /** + * 数据库表 + */ + private String tableName; + + /** + * 表字段列表 + */ + @Valid + private List fieldParams; + + /** + * 解析SQL + */ + private String sqlText; + + public Long getSourceId() { + return sourceId; + } + + public void setSourceId(Long sourceId) { + this.sourceId = sourceId; + } + + public String getConfigType() { + return configType; + } + + public void setConfigType(String configType) { + this.configType = configType; + } + + public Long getTableId() { + return tableId; + } + + public void setTableId(Long tableId) { + this.tableId = tableId; + } + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public List getFieldParams() { + return fieldParams; + } + + public void setFieldParams(List fieldParams) { + this.fieldParams = fieldParams; + } + + public String getSqlText() { + return sqlText; + } + + public void setSqlText(String sqlText) { + this.sqlText = sqlText; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldParam.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldParam.java new file mode 100644 index 00000000..804d4c84 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldParam.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import java.io.Serializable; + +/** + * 字段信息Model + */ +public class FieldParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 列名 + */ + private String columnName; + + /** + * 数据类型 + */ + private String dataType; + + /** + * 数据长度 + */ + private Integer dataLength; + + /** + * 数据精度 + */ + private Integer dataPrecision; + + /** + * 数据小数位 + */ + private Integer dataScale; + + /** + * 是否主键 + */ + private String columnKey; + + /** + * 是否允许为空 + */ + private String columnNullable; + + /** + * 列的序号 + */ + private Integer columnPosition; + + /** + * 列默认值 + */ + private String dataDefault; + + /** + * 列注释 + */ + private String columnComment; + + /** + * 作为请求参数 + */ + private String reqable; + + /** + * 作为返回参数 + */ + private String resable; + + public String getColumnName() { + return columnName; + } + + public void setColumnName(String columnName) { + this.columnName = columnName; + } + + public String getDataType() { + return dataType; + } + + public void setDataType(String dataType) { + this.dataType = dataType; + } + + public Integer getDataLength() { + return dataLength; + } + + public void setDataLength(Integer dataLength) { + this.dataLength = dataLength; + } + + public Integer getDataPrecision() { + return dataPrecision; + } + + public void setDataPrecision(Integer dataPrecision) { + this.dataPrecision = dataPrecision; + } + + public Integer getDataScale() { + return dataScale; + } + + public void setDataScale(Integer dataScale) { + this.dataScale = dataScale; + } + + public String getColumnKey() { + return columnKey; + } + + public void setColumnKey(String columnKey) { + this.columnKey = columnKey; + } + + public String getColumnNullable() { + return columnNullable; + } + + public void setColumnNullable(String columnNullable) { + this.columnNullable = columnNullable; + } + + public Integer getColumnPosition() { + return columnPosition; + } + + public void setColumnPosition(Integer columnPosition) { + this.columnPosition = columnPosition; + } + + public String getDataDefault() { + return dataDefault; + } + + public void setDataDefault(String dataDefault) { + this.dataDefault = dataDefault; + } + + public String getColumnComment() { + return columnComment; + } + + public void setColumnComment(String columnComment) { + this.columnComment = columnComment; + } + + public String getReqable() { + return reqable; + } + + public void setReqable(String reqable) { + this.reqable = reqable; + } + + public String getResable() { + return resable; + } + + public void setResable(String resable) { + this.resable = resable; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldRule.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldRule.java new file mode 100644 index 00000000..69e4d33a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/FieldRule.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 字段信息Model + */ +public class FieldRule implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 字段名称 + */ + @NotBlank(message = "字段名称不能为空") + private String fieldName; + /** + * 脱敏类型 + */ + @NotNull(message = "脱敏类型不能为空") + private String cipherType; + /** + * 规则类型 + */ + @NotNull(message = "规则类型不能为空") + private String cryptType; + + public String getFieldName() { + return fieldName; + } + + public void setFieldName(String fieldName) { + this.fieldName = fieldName; + } + + public String getCipherType() { + return cipherType; + } + + public void setCipherType(String cipherType) { + this.cipherType = cipherType; + } + + public String getCryptType() { + return cryptType; + } + + public void setCryptType(String cryptType) { + this.cryptType = cryptType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/RateLimit.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/RateLimit.java new file mode 100644 index 00000000..41938541 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/RateLimit.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 限流信息Model + */ +public class RateLimit implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 是否限流:0:否,1:是 + */ + @NotNull(message = "是否限流不能为空") + private String enable; + + /** + * 请求次数默认5次 + */ + private Integer times = 5; + + /** + * 请求时间范围默认60秒 + */ + private Integer seconds = 60; + + public String getEnable() { + return enable; + } + + public void setEnable(String enable) { + this.enable = enable; + } + + public Integer getTimes() { + return times; + } + + public void setTimes(Integer times) { + this.times = times; + } + + public Integer getSeconds() { + return seconds; + } + + public void setSeconds(Integer seconds) { + this.seconds = seconds; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqParam.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqParam.java new file mode 100644 index 00000000..428a2125 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqParam.java @@ -0,0 +1,116 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 请求参数信息Model + */ +public class ReqParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 参数名称 + */ + @NotBlank(message = "参数名称不能为空") + private String paramName; + + /** + * 是否为空 + */ + @NotNull(message = "是否为空不能为空") + private String nullable; + + /** + * 描述 + */ + @NotBlank(message = "描述不能为空") + private String paramComment; + + /** + * 操作符 + */ + @NotNull(message = "操作符不能为空") + @EnumCheckValue(value = DataApiEnum.WHERE_TYPE.class,isNullable = true) + private String whereType; + + /** + * 参数类型 + */ + @NotNull(message = "参数类型不能为空") + @EnumCheckValue(DataApiEnum.ParamType.class) + private String paramType; + + /** + * 示例值 + */ + @NotBlank(message = "示例值不能为空") + private String exampleValue; + + /** + * 默认值 + */ + @NotBlank(message = "默认值不能为空") + private String defaultValue; + + public String getParamName() { + return paramName; + } + + public void setParamName(String paramName) { + this.paramName = paramName; + } + + public String getNullable() { + return nullable; + } + + public void setNullable(String nullable) { + this.nullable = nullable; + } + + public String getParamComment() { + return paramComment; + } + + public void setParamComment(String paramComment) { + this.paramComment = paramComment; + } + + public String getWhereType() { + return whereType; + } + + public void setWhereType(String whereType) { + this.whereType = whereType; + } + + public String getParamType() { + return paramType; + } + + public void setParamType(String paramType) { + this.paramType = paramType; + } + + public String getExampleValue() { + return exampleValue; + } + + public void setExampleValue(String exampleValue) { + this.exampleValue = exampleValue; + } + + public String getDefaultValue() { + return defaultValue; + } + + public void setDefaultValue(String defaultValue) { + this.defaultValue = defaultValue; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqVo.java new file mode 100644 index 00000000..c633bbf7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/ReqVo.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request; + +import java.io.Serializable; + +/** + * API请求参数 + * + * @author yulei + */ +public class ReqVo implements Serializable { + + + /** + * 报文内容 + */ + private String body; + + /** + * 签名 + */ + private String sign; + + public String getBody() { + return body; + } + + public void setBody(String body) { + this.body = body; + } + + public String getSign() { + return sign; + } + + public void setSign(String sign) { + this.sign = sign; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiAddRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiAddRequest.java new file mode 100644 index 00000000..ea31c1cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiAddRequest.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; + +import java.io.Serializable; + +/** + *

+ * 数据API信息表 实体DTO + *

+ */ +public class ApiAddRequest extends ApiDtoBase implements Serializable { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiCopyRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiCopyRequest.java new file mode 100644 index 00000000..9c38a1ea --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiCopyRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @ClassName : ApiCopyRequest + * @Description : + * @Author : sky + * @Date: 2023-09-04 19:05 + */ +public class ApiCopyRequest extends User implements Serializable { + + @NotNull(message = "apiId不能为空") + private Long apiId; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiDelRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiDelRequest.java new file mode 100644 index 00000000..01d21583 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiDelRequest.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @ClassName : ApiCopyRequest + * @Description : + * @Author : sky + * @Date: 2023-09-04 19:05 + */ +public class ApiDelRequest extends User implements Serializable { + + @NotNull(message = "apiId不能为空") + private Long apiId; + + @NotBlank(message = "recToken不能为空") + private String recToken; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiLogRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiLogRequest.java new file mode 100644 index 00000000..ded50001 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiLogRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.io.Serializable; + +/** + *

+ * api调用日志信息表 查询实体 + *

+ */ +public class ApiLogRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + + private String apiName; + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiPageRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiPageRequest.java new file mode 100644 index 00000000..4ccc1689 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiPageRequest.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.io.Serializable; + +/** + *

+ * 数据API信息表 查询实体 + *

+ */ +public class ApiPageRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + + private String apiName; + + @EnumCheckValue(value = ApiCrypto.ApiState.class,isNullable = true) + private String status; + + private String sourceId; + + @EnumCheckValue(value = DataApiEnum.API_TYPE.class,isNullable = true) + private String apiType = DataApiEnum.API_TYPE.AGILE.getCode(); + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getSourceId() { + return sourceId; + } + + public void setSourceId(String sourceId) { + this.sourceId = sourceId; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiStatusRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiStatusRequest.java new file mode 100644 index 00000000..ca3cda00 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiStatusRequest.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * API更改状态参数DTO + * + * @author yulei + **/ +public class ApiStatusRequest extends User implements Serializable { + + /** + * 主键ID + */ + @NotNull(message = "主键ID不能为空") + private Long apiId; + + /** + * 验证token + */ + @NotBlank(message = "recToken不能为空") + private String recToken; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUpdateRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUpdateRequest.java new file mode 100644 index 00000000..926a3430 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUpdateRequest.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + *

+ * 数据API信息表 实体DTO + *

+ */ +public class ApiUpdateRequest extends ApiDtoBase implements Serializable { + + private static final long serialVersionUID = 1L; + + @NotNull(message = "appId不能为空") + private Long apiId; + /** + * 验证token + */ + @NotBlank(message = "recToken不能为空") + private String recToken; + + @NotNull(message = "版本号不能为空") + private Long versionNum; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUserRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUserRequest.java new file mode 100644 index 00000000..232e5a8f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/api/ApiUserRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.api; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotNull; + +/** + * @ClassName : ApiUserRequest + * @Description : + * @Author : sky + * @Date: 2023-09-12 11:42 + */ +public class ApiUserRequest extends PageSize { + + @NotNull(message = "会员Id不能为空") + private String memberId; + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/Range.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/Range.java new file mode 100644 index 00000000..b032766c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/Range.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.base; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 范围查询 + * + * @ClassName : Range + * @Description : + * @Author : sky + * @Date: 2023-09-19 16:29 + */ +public class Range extends PageSize { + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date beginDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endDate; + + public Date getBeginDate() { + return beginDate; + } + + public void setBeginDate(Date beginDate) { + this.beginDate = beginDate; + } + + public Date getEndDate() { + return endDate; + } + + public void setEndDate(Date endDate) { + this.endDate = endDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/User.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/User.java new file mode 100644 index 00000000..66d9a2de --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/base/User.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.base; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +/** + * @ClassName : User + * @Description : + * @Author : sky + * @Date: 2023-09-04 18:27 + */ +public class User { + + @NotBlank(message = "用户名不能为空") + private String userName; + + @NotNull(message = "用户Id不能为空") + private Long userId; + + private String deptId; + + private String nickName; + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } + + public String getDeptId() { + return deptId; + } + + public void setDeptId(String deptId) { + this.deptId = deptId; + } + + public String getNickName() { + return nickName; + } + + public void setNickName(String nickName) { + this.nickName = nickName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/batch/DateVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/batch/DateVo.java new file mode 100644 index 00000000..c3ea6141 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/batch/DateVo.java @@ -0,0 +1,17 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.batch; + +public class DateVo { + + /** + * 请求日期 + */ + private String date; + + public String getDate() { + return date; + } + + public void setDate(String date) { + this.date = date; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/console/OrgApiAuthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/console/OrgApiAuthRequest.java new file mode 100644 index 00000000..e4569266 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/console/OrgApiAuthRequest.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.console; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 组织接口权限DTO + * + * @author yulei + **/ +public class OrgApiAuthRequest extends User implements Serializable { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * APIID + */ + @NotNull(message = "APIDS不能为空") + private Long[] apiIds; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Long[] getApiIds() { + return apiIds; + } + + public void setApiIds(Long[] apiIds) { + this.apiIds = apiIds; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/ApiDtoBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/ApiDtoBase.java new file mode 100644 index 00000000..be1baba8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/ApiDtoBase.java @@ -0,0 +1,228 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.extend; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import org.hibernate.validator.constraints.Length; + +import javax.validation.Valid; +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.Size; +import java.io.Serializable; +import java.util.List; + +/** + * @ClassName : ApiDtoBase + * @Description : + * @Author : sky + * @Date: 2023-09-04 18:41 + */ +public class ApiDtoBase extends User implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * API名称 + */ + @NotBlank(message = "API名称不能为空") + @Length(max = 100) + private String apiName; + + /** + * API版本 + */ + @NotBlank(message = "API版本不能为空") + @Length(max = 60) + private String apiVersion; + + /** + * API路径 + */ + @NotBlank(message = "API路径不能为空") + @Length(max = 100) + private String apiUrl; + + /** + * 请求方式 + */ + @EnumCheckValue(value = DataApiEnum.REQ_METHOD.class) + private String reqMethod; + + /** + * 返回格式 + */ + @NotBlank(message = "返回格式不能为空") + @EnumCheckValue(value = DataApiEnum.ResType.class) + private String resType; + + /** + * IP黑名单多个用英文,隔开 + */ + private String deny; + + /** + * 限流配置 + */ + @Valid + private RateLimit rateLimit; + + /** + * 执行配置 + */ + @Valid + private ExecuteConfig executeConfig; + + /** + * 请求参数 + */ + @Valid + @NotEmpty(message = "请求参数不能为空") + @Size(min = 1, message = "请求参数长度不能少于{min}位") + private List reqParams; + + /** + * 返回参数 + */ + @Valid + @NotEmpty(message = "返回字段不能为空") + @Size(min = 1, message = "返回字段长度不能少于{min}位") + private List resParams; + + /** + * 状态 + */ + @EnumCheckValue(value = DataApiEnum.API_STATUS.class,isNullable = true) + private String status = DataApiEnum.API_STATUS.WAIT.getCode(); + + /** + * 备注 + */ + @Length(max = 500) + private String remark; + + /** + * apiCode + */ + @NotBlank(message = "apiCode不能为空") + @Length(max = 20) + private String apiCode; + + private String apiType = DataApiEnum.API_TYPE.AGILE.getCode(); + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public String getDeny() { + return deny; + } + + public void setDeny(String deny) { + this.deny = deny; + } + + public RateLimit getRateLimit() { + return rateLimit; + } + + public void setRateLimit(RateLimit rateLimit) { + this.rateLimit = rateLimit; + } + + public ExecuteConfig getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(ExecuteConfig executeConfig) { + this.executeConfig = executeConfig; + } + + public List getReqParams() { + return reqParams; + } + + public void setReqParams(List reqParams) { + this.reqParams = reqParams; + } + + public List getResParams() { + return resParams; + } + + public void setResParams(List resParams) { + this.resParams = resParams; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgConfigBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgConfigBase.java new file mode 100644 index 00000000..ff93894d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgConfigBase.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.extend; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; + +/** + * 机构配置基础信息 + * + * @ClassName : OrgConfigBase + * @Author : sky + * @Date: 2023-09-06 16:23 + */ +public class OrgConfigBase extends User { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + @Length(max = 32) + private String orgNo; + + /** + * data:config:start:time + * data:config:end:time + * 配置项 + */ + @NotBlank(message = "配置key不能为空") + @Length(max = 40) + @EnumCheckValue(value = ConfigCrypot.OrgCfnKeyEnum.class) + private String configKey; + + /** + * 配置说明 + */ + @NotBlank(message = "配置说明不能为空") + @Length(max = 100) + private String configDesc; + + /** + * 配置值 + */ + @NotBlank(message = "配置值不能为空") + @Length(max = 40) + private String configValue; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 状态 + */ + @EnumCheckValue(value = ConfigCrypot.ConfigStatus.class, isNullable = true) + private String status; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigDesc() { + return configDesc; + } + + public void setConfigDesc(String configDesc) { + this.configDesc = configDesc; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgInfoBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgInfoBase.java new file mode 100644 index 00000000..12602634 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/extend/OrgInfoBase.java @@ -0,0 +1,192 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.extend; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 机构信息VO + * + * @author yulei + **/ +public class OrgInfoBase extends User implements Serializable { + + /** + * 会员号 + */ + private String memberId; + + /** + * 【机构名称】 + */ + @NotBlank(message = "机构名称不能为空") + @Length(max = 100) + private String orgName; + + /** + * 【机构类型】 + */ + @NotBlank(message = "机构类型不能为空") + @EnumCheckValue(OrgCrypto.OrgType.class) + private String orgType; + + /** + * 【机构描述】 + */ + @Length(max = 150) + private String orgDesc; + + /** + * 【加盐】 + */ + @NotBlank(message = "加盐不能为空") + @Length(max = 200) + private String salt; + + /** + * 【加密】 + */ + @NotBlank(message = "加密不能为空") + @Length(max = 1000) + private String encrypt; + + /** + * 【生效时间】 + */ + @NotNull(message = "生效时间不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @NotNull(message = "到期时间不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + /** + * 【ip白名单】 + */ + @Length(max = 32) + private String ip; + + /** + * 【联系人电话】 + */ + @NotBlank(message = "联系人电话不能为空") + @Length(max = 20) + private String contractTel; + + @EnumCheckValue(value = OrgCrypto.OrgStatus.class,isNullable = true) + private String status; + + /** + * 备注 + */ + @Length(max = 200) + private String remark; + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthReq.java new file mode 100644 index 00000000..ee1f72cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthReq.java @@ -0,0 +1,78 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +/** + * @ClassName : AuthReq + * @Description : 权限接口请求类 + * @Author : sky + * @Date: 2023-07-13 13:28 + */ +public class OrgAuthReq implements Serializable { + + /** + * 秘钥版本号 + */ + private String keyVersion; + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + @Length(max = 64) + private String orgCode; + + private String subOrgCode; + + @NotBlank(message = "交易码不能为空") + private String apiCode; + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") + private Date requsetTime; + + public String getKeyVersion() { + return keyVersion; + } + + public void setKeyVersion(String keyVersion) { + this.keyVersion = keyVersion; + } + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public Date getRequsetTime() { + return requsetTime; + } + + public void setRequsetTime(Date requsetTime) { + this.requsetTime = requsetTime; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthRequest.java new file mode 100644 index 00000000..955df034 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgAuthRequest.java @@ -0,0 +1,72 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +public class OrgAuthRequest implements Serializable { + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + @Length(max = 64) + private String orgCode; + + @NotBlank(message = "交易码不能为空") + private String apiCode; + + @NotBlank(message = "机构ip不能为空") + private String ip; + + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS, timezone = "GMT+8") + private Date requsetTime; + /** + * 数据时间 + */ + private Date dataDate; + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public Date getRequsetTime() { + return requsetTime; + } + + public void setRequsetTime(Date requsetTime) { + this.requsetTime = requsetTime; + } + + public Date getDataDate() { + return dataDate; + } + + public void setDataDate(Date dataDate) { + this.dataDate = dataDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigAddRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigAddRequest.java new file mode 100644 index 00000000..b8655502 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigAddRequest.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgConfigBase; + +import java.io.Serializable; + +/** + * 机构信息DTO + * + * @author yulei + **/ +public class OrgConfigAddRequest extends OrgConfigBase implements Serializable { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigEditRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigEditRequest.java new file mode 100644 index 00000000..ab21d0c4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigEditRequest.java @@ -0,0 +1,58 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgConfigBase; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 机构信息DTO + * + * @author yulei + **/ +public class OrgConfigEditRequest extends OrgConfigBase implements Serializable { + + /** + * 主键ID + */ + @NotNull(message = "配置ID不能为空") + private Long configId; + + /** + * 随机码 + */ + @NotBlank(message = "随机码不能为空") + private String recToken; + + @EnumCheckValue(value = OrgCrypto.OrgStatus.class) + private String status = OrgCrypto.OrgStatus.STOP.getCode(); + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + @Override + public String getStatus() { + return status; + } + + @Override + public void setStatus(String status) { + this.status = status; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigQueryRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigQueryRequest.java new file mode 100644 index 00000000..e1abb404 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgConfigQueryRequest.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.io.Serializable; + +/** + * 机构配置信息查询 + * + * @author yulei + **/ +public class OrgConfigQueryRequest extends PageSize implements Serializable { + + /** + * 机构号 + */ + private String orgNo; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgDelReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgDelReq.java new file mode 100644 index 00000000..3181ca1d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgDelReq.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; + +/** + * 删除请求 + * + * @ClassName : OrgDelReq + * @Description : + * @Author : sky + * @Date: 2023-09-07 14:05 + */ +public class OrgDelReq extends User { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 随机码 + */ + @NotBlank(message = "随机码不能为空") + private String recToken; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoAddReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoAddReq.java new file mode 100644 index 00000000..79119818 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoAddReq.java @@ -0,0 +1,13 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase; + +/** + * 机构管理信息DTO + * + * @author shu_k + **/ +public class OrgInfoAddReq extends OrgInfoBase { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoEditReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoEditReq.java new file mode 100644 index 00000000..4a96cd00 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoEditReq.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase; + +import javax.validation.constraints.NotBlank; + +/** + * 机构管理信息DTO + * + * @author shu_k + **/ +public class OrgInfoEditReq extends OrgInfoBase { + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 随机码 + */ + @NotBlank(message = "随机码不能为空") + private String recToken; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoQueryReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoQueryReq.java new file mode 100644 index 00000000..51943881 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoQueryReq.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +/** + * 机构管理信息查询条件 + * + * @author shu_k + **/ +public class OrgInfoQueryReq extends PageSize { + + /** + * 【机构号】 + */ + private String orgNo; + + /** + * 【机构名称】 + */ + private String orgName; + + /** + * 【机构类型】 + */ + private String orgType; + + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + + /** + * 会员号 + */ + private String mermberId; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getMermberId() { + return mermberId; + } + + public void setMermberId(String mermberId) { + this.mermberId = mermberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoStatusReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoStatusReq.java new file mode 100644 index 00000000..0cafb3c0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgInfoStatusReq.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.User; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 机构更改状态DTO + * + * @author shu_k + **/ +public class OrgInfoStatusReq extends User implements Serializable { + + @NotBlank(message = "orgNo不能为空") + private String orgNo; + + /** + * 验证token + */ + @NotBlank(message = "recToken不能为空") + private String recToken; + + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgStatisticsQueryReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgStatisticsQueryReq.java new file mode 100644 index 00000000..8a80c9f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/org/OrgStatisticsQueryReq.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.org; + + +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +/** + * 接口调用次数统计查询条件 + * + * @author shu_k + **/ +public class OrgStatisticsQueryReq extends PageSize { + + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名 + */ + private String orgName; + + /** + * 接口名称 + */ + private String apiName; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/DownLoadRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/DownLoadRequest.java new file mode 100644 index 00000000..0db95388 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/DownLoadRequest.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.FileTypeEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.util.Date; + +/** + * @ClassName : downLoadRequest + * @Description : 下载文件请求报文 + * @Author : sky + * @Date: 2023-09-13 13:24 + */ +public class DownLoadRequest { + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + @NotNull + private Date date; + + @EnumCheckValue(value = FileTypeEnum.class) + private String fileType; + @NotBlank + private String orgNo; + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + + public String getFileType() { + return fileType; + } + + public void setFileType(String fileType) { + this.fileType = fileType; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineDayPageReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineDayPageReq.java new file mode 100644 index 00000000..a0b31ed2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineDayPageReq.java @@ -0,0 +1,97 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 线路分页查询请求类 + * + * @ClassName : LineDayPageReq + * @Description : 分页查询 + * @Author : sky + * @Date: 2023-09-18 15:19 + */ +public class LineDayPageReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineHourPageReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineHourPageReq.java new file mode 100644 index 00000000..69331bc4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineHourPageReq.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 线路分页查询请求类 + * + * @ClassName : LineDayPageReq + * @Description : 分页查询 + * @Author : sky + * @Date: 2023-09-18 15:19 + */ +public class LineHourPageReq extends Range { + + + /** + * 线路名称 + */ + private String lineName; + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + + private Long hour; + + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getHour() { + return hour; + } + + public void setHour(Long hour) { + this.hour = hour; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineInfoReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineInfoReq.java new file mode 100644 index 00000000..44fd25a6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineInfoReq.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + + +/** + * 线路基础信息列表请求对象 + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineInfoReq { + /** + * 线路名称 + */ + private String lineName; + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineMetricMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineMetricMonthReq.java new file mode 100644 index 00000000..08f6fcca --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineMetricMonthReq.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricMonthReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineStationInfoReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineStationInfoReq.java new file mode 100644 index 00000000..cfd98316 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/LineStationInfoReq.java @@ -0,0 +1,46 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +/** + * 站点基础信息对象 tbl_prd_base_line_station + * + * @author ruoyi + * @date 2023-09-19 + */ +public class LineStationInfoReq { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 方向 + */ + private String up; + /** + * 站序 + */ + private Long levels; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/RouteMetricDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/RouteMetricDayReq.java new file mode 100644 index 00000000..d2a83006 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/RouteMetricDayReq.java @@ -0,0 +1,135 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteMetricDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 起点 + */ + private String startStation; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 终点 + */ + private String endStation; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 路单类型 + */ + private String waybillType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getWaybillType() { + return waybillType; + } + + public void setWaybillType(String waybillType) { + this.waybillType = waybillType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricDayReq.java new file mode 100644 index 00000000..997376f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricDayReq.java @@ -0,0 +1,93 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricMonthReq.java new file mode 100644 index 00000000..3df9e634 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqMetricMonthReq.java @@ -0,0 +1,89 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_station_freq_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricMonthReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + + @Override + public String toString() { + return "StationFreqMetricMonthReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", metricMonth='" + metricMonth + '\'' + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransDayReq.java new file mode 100644 index 00000000..9068861c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransDayReq.java @@ -0,0 +1,102 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + @Override + public String toString() { + return "StationFreqTransDayReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", metricDate=" + metricDate + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransMonthReq.java new file mode 100644 index 00000000..39b6df5c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationFreqTransMonthReq.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonthReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricDayReq.java new file mode 100644 index 00000000..2fb8f4ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricDayReq.java @@ -0,0 +1,79 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricDayReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricHourReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricHourReq.java new file mode 100644 index 00000000..445a7c96 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricHourReq.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricHourReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 时间 + */ + private Integer hour; + + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Integer getHour() { + return hour; + } + + public void setHour(Integer hour) { + this.hour = hour; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricMonthReq.java new file mode 100644 index 00000000..b0fbb261 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationMetricMonthReq.java @@ -0,0 +1,90 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricMonthReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + + @Override + public String toString() { + return "StationMetricMonthReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", metricMonth='" + metricMonth + '\'' + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransDayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransDayReq.java new file mode 100644 index 00000000..04b55aa8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransDayReq.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransDayReq extends PageSize { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + @Override + public String toString() { + return "StationTransDayReq{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransHourReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransHourReq.java new file mode 100644 index 00000000..aae32954 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransHourReq.java @@ -0,0 +1,119 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransHourReq extends PageSize { + + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 时间 + */ + private Integer hour; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Integer getHour() { + return hour; + } + + public void setHour(Integer hour) { + this.hour = hour; + } + + @Override + public String toString() { + return "StationTransHourReq{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", hour=" + hour + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransMonthReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransMonthReq.java new file mode 100644 index 00000000..8170a0cd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/StationTransMonthReq.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransMonthReq extends PageSize { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标月份 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + + @Override + public String toString() { + return "StationTransMonthReq{" + + "lineCode='" + lineCode + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth=" + metricMonth + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineDayReqRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineDayReqRequest.java new file mode 100644 index 00000000..fece24e0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineDayReqRequest.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +public class LineDayReqRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineHourRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineHourRequest.java new file mode 100644 index 00000000..7fa20838 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineHourRequest.java @@ -0,0 +1,50 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 线路分页查询请求类 + * + * @ClassName : LineDayPageReq + * @Description : 分页查询 + * @Author : sky + * @Date: 2023-09-18 15:19 + */ +public class LineHourRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineMonthRequest.java new file mode 100644 index 00000000..d75dcc77 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/LineMonthRequest.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMonthRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + + /** + * 指标月份 + */ + @NotNull(message = "月份不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/RouteDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/RouteDayRequest.java new file mode 100644 index 00000000..767cda5d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/RouteDayRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationDayRequest.java new file mode 100644 index 00000000..16c5f0cf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationDayRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqDayRequest.java new file mode 100644 index 00000000..f1453961 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqDayRequest.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqMonthRequest.java new file mode 100644 index 00000000..36f8ddd2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqMonthRequest.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMonthRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransDayRequest.java new file mode 100644 index 00000000..569db922 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransDayRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDayRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransMonthRequest.java new file mode 100644 index 00000000..e376c30d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationFreqTransMonthRequest.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonthRequest extends PageSize implements Serializable { + + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationHourRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationHourRequest.java new file mode 100644 index 00000000..6b051f3a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationHourRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationHourRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationMonthRequest.java new file mode 100644 index 00000000..5d23069f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationMonthRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMonthRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransDayRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransDayRequest.java new file mode 100644 index 00000000..eb2702f6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransDayRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransDayRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransHourRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransHourRequest.java new file mode 100644 index 00000000..a21b360c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransHourRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransHourRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "日期不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date metricDate; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransMonthRequest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransMonthRequest.java new file mode 100644 index 00000000..18686e44 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/product/gateway/StationTransMonthRequest.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransMonthRequest extends PageSize implements Serializable { + private static final long serialVersionUID = 1L; + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgNo; + /** + * 指标日期 + */ + @NotNull(message = "月份不能为空") + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM, timezone = "GMT+8") + private Date metricMonth; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Date getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(Date metricMonth) { + this.metricMonth = metricMonth; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/CentimeDelayReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/CentimeDelayReq.java new file mode 100644 index 00000000..d3133471 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/CentimeDelayReq.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 延迟上送比率对象 tbl_qa_centime_delay + * + * @author shu_k + * @date 2023-09-20 + */ +public class CentimeDelayReq extends Range { + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/PosMatchRateReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/PosMatchRateReq.java new file mode 100644 index 00000000..9aedeff1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/PosMatchRateReq.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * Pos匹配率对象 tbl_qa_pos_match_rate + * + * @author shu_k + * @date 2023-09-20 + */ +public class PosMatchRateReq extends Range { + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteDailyReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteDailyReq.java new file mode 100644 index 00000000..a4eba18b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteDailyReq.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运线路条数对象 tbl_qa_route_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteDailyReq extends Range { + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 运营公司编码 + */ + private String companyCode; + + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteMissReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteMissReq.java new file mode 100644 index 00000000..04a9448a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteMissReq.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次缺失率对象 tbl_qa_route_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteMissReq extends Range { + + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteTurnoverReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteTurnoverReq.java new file mode 100644 index 00000000..ed7f817a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/RouteTurnoverReq.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次周转时间对象 tbl_qa_route_turnover_time + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteTurnoverReq extends Range { + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 早晚高峰名称 + */ + private String hlowPeakName; + + /** + * 路单类型 + */ + private String wayBillType; + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getHlowPeakName() { + return hlowPeakName; + } + + public void setHlowPeakName(String hlowPeakName) { + this.hlowPeakName = hlowPeakName; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/StationMissReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/StationMissReq.java new file mode 100644 index 00000000..a2db38a9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/StationMissReq.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点缺失率对象 tbl_qa_station_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class StationMissReq extends Range { + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 上下行 + */ + private String up; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/VehicleDailyReq.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/VehicleDailyReq.java new file mode 100644 index 00000000..438233e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/request/quailty/VehicleDailyReq.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.request.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运车辆数对象 tbl_qa_vehicle_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class VehicleDailyReq extends Range { + + /** + * 公司编码 + */ + private String companyCode; + + /** + * 公司名称 + */ + private String companyName; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/ResParam.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/ResParam.java new file mode 100644 index 00000000..da217215 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/ResParam.java @@ -0,0 +1,111 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * 返回参数信息Model + */ +public class ResParam implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 字段名称 + */ + @NotBlank(message = "字段名称不能为空") + private String fieldName; + + /** + * 描述 + */ + @NotBlank(message = "描述不能为空") + private String fieldComment; + + /** + * 数据类型 + */ + @NotNull(message = "数据类型不能为空") + private String dataType; + + /** + * 示例值 + */ + @NotBlank(message = "示例值不能为空") + private String exampleValue; + + /** + * 字段别名 + */ + private String fieldAliasName; + + /** + * 脱敏类型 + */ + @EnumCheckValue(value = DataApiEnum.CIPHER_TYPE.class,isNullable = true) + private String cipherType; + /** + * 规则类型 + */ + private String cryptType; + + public String getFieldName() { + return fieldName; + } + + public void setFieldName(String fieldName) { + this.fieldName = fieldName; + } + + public String getFieldComment() { + return fieldComment; + } + + public void setFieldComment(String fieldComment) { + this.fieldComment = fieldComment; + } + + public String getDataType() { + return dataType; + } + + public void setDataType(String dataType) { + this.dataType = dataType; + } + + public String getExampleValue() { + return exampleValue; + } + + public void setExampleValue(String exampleValue) { + this.exampleValue = exampleValue; + } + + public String getFieldAliasName() { + return fieldAliasName; + } + + public void setFieldAliasName(String fieldAliasName) { + this.fieldAliasName = fieldAliasName; + } + + public String getCipherType() { + return cipherType; + } + + public void setCipherType(String cipherType) { + this.cipherType = cipherType; + } + + public String getCryptType() { + return cryptType; + } + + public void setCryptType(String cryptType) { + this.cryptType = cryptType; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/RespVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/RespVo.java new file mode 100644 index 00000000..4ab0454a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/RespVo.java @@ -0,0 +1,55 @@ +// package com.jiuyv.sptcc.agile.dataservice.dto.response; +// +// import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +// +// import java.io.Serializable; +// +///** +// * API返回参数 +// * +// * @author yulei +// */ +// public class RespVo implements Serializable { +// +// /** 返回码*/ +// private Integer respCode; +// +// /** 返回说明 */ +// private String respDesc; +// +// public RespVo() { +// } +// +// public RespVo(Integer code, String message) { +// this.respCode = code; +// this.respDesc = message; +// } +// +// public static RespVo ok(){ +// return new RespVo(ResultCode.SUCCESS.getCode(),ResultCode.SUCCESS.getMessage()); +// } +// +// public Integer getRespCode() { +// return respCode; +// } +// +// public void setRespCode(Integer respCode) { +// this.respCode = respCode; +// } +// +// public String getRespDesc() { +// return respDesc; +// } +// +// public void setRespDesc(String respDesc) { +// this.respDesc = respDesc; +// } +// +// @Override +// public String toString() { +// return "RespVo{" + +// "respCode='" + respCode + '\'' + +// ", respDesc='" + respDesc + '\'' + +// '}'; +// } +//} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/TreeSelect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/TreeSelect.java new file mode 100644 index 00000000..12568280 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/TreeSelect.java @@ -0,0 +1,59 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response; + +import com.fasterxml.jackson.annotation.JsonInclude; + +import java.io.Serializable; +import java.util.List; + +/** + * Treeselect树结构实体类 + * + * @author shy_k + */ +public class TreeSelect implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 节点ID + */ + private Long id; + + /** + * 节点名称 + */ + private String label; + + /** + * 子节点 + */ + @JsonInclude(JsonInclude.Include.NON_EMPTY) + private List children; + + public TreeSelect() { + + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLabel() { + return label; + } + + public void setLabel(String label) { + this.label = label; + } + + public List getChildren() { + return children; + } + + public void setChildren(List children) { + this.children = children; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiLogResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiLogResponse.java new file mode 100644 index 00000000..2d9fda1e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiLogResponse.java @@ -0,0 +1,127 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * api调用日志信息响应 + * + * @author yulei + */ +public class ApiLogResponse implements Serializable { + + private static final long serialVersionUID = 1L; + + private Long apiLogId; + private Long apiId; + private String apiName; + private String callerId; + private String callerIp; + private String callerUrl; + private Integer callerSize; + private String callerParams; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date callerDate; + private Long time; + private String msg; + private String status; + + public Long getApiLogId() { + return apiLogId; + } + + public void setApiLogId(Long apiLogId) { + this.apiLogId = apiLogId; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getCallerId() { + return callerId; + } + + public void setCallerId(String callerId) { + this.callerId = callerId; + } + + public String getCallerIp() { + return callerIp; + } + + public void setCallerIp(String callerIp) { + this.callerIp = callerIp; + } + + public String getCallerUrl() { + return callerUrl; + } + + public void setCallerUrl(String callerUrl) { + this.callerUrl = callerUrl; + } + + public Integer getCallerSize() { + return callerSize; + } + + public void setCallerSize(Integer callerSize) { + this.callerSize = callerSize; + } + + public String getCallerParams() { + return callerParams; + } + + public void setCallerParams(String callerParams) { + this.callerParams = callerParams; + } + + public Date getCallerDate() { + return callerDate; + } + + public void setCallerDate(Date callerDate) { + this.callerDate = callerDate; + } + + public Long getTime() { + return time; + } + + public void setTime(Long time) { + this.time = time; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiResponse.java new file mode 100644 index 00000000..5151e4d1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/ApiResponse.java @@ -0,0 +1,225 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + *

+ * 数据API信息表 实体VO + *

+ */ +public class ApiResponse implements Serializable { + + private static final long serialVersionUID = 1L; + + private Long apiId; + private String status; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** 创建者id(或账户) */ + private String createBy; + /** 更新者姓名 */ + + /** 更新者id(或账户) */ + private String updateBy; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + private String remark; + private String apiName; + private String apiVersion; + private String apiUrl; + private String reqMethod; + private String deny; + private String resType; + private RateLimit rateLimit; + private ExecuteConfig executeConfig; + private List reqParams; + private List resParams; + /** + * 随机码 + */ + private String recToken; + + private String apiType; + + private String apiCode; + + private Long versionNum; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getDeny() { + return deny; + } + + public void setDeny(String deny) { + this.deny = deny; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public RateLimit getRateLimit() { + return rateLimit; + } + + public void setRateLimit(RateLimit rateLimit) { + this.rateLimit = rateLimit; + } + + public ExecuteConfig getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(ExecuteConfig executeConfig) { + this.executeConfig = executeConfig; + } + + public List getReqParams() { + return reqParams; + } + + public void setReqParams(List reqParams) { + this.reqParams = reqParams; + } + + public List getResParams() { + return resParams; + } + + public void setResParams(List resParams) { + this.resParams = resParams; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiResponse.java new file mode 100644 index 00000000..4a6c9cbd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiResponse.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +public class DataApiResponse implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名称 + */ + private String orgName; + + /** + * 接口id + */ + private Long apiId; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 接口描述 + */ + private String remark; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** + * 【生效时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResp.java new file mode 100644 index 00000000..d01dcdd7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResp.java @@ -0,0 +1,111 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import java.io.Serializable; +import java.util.Date; + +public class DataApiStatisticsResp implements Serializable { + private static final long serialVersionUID = 1L; + /** + * + */ + private Object id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名称 + */ + private String orgName; + + /** + * API ID + */ + private Object apiId; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 成功次数 + */ + private Object successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 更新时间 + */ + private Date updateTime; + + public Object getId() { + return id; + } + + public void setId(Object id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Object getApiId() { + return apiId; + } + + public void setApiId(Object apiId) { + this.apiId = apiId; + } + + public Object getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Object successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResponse.java new file mode 100644 index 00000000..1078dca4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/api/DataApiStatisticsResponse.java @@ -0,0 +1,111 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.api; + +import java.io.Serializable; +import java.util.Date; + +public class DataApiStatisticsResponse implements Serializable { + private static final long serialVersionUID = 1L; + /** + * + */ + private Object id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名称 + */ + private String orgName; + + /** + * API ID + */ + private Object apiId; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 成功次数 + */ + private Object successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 更新时间 + */ + private Date updateTime; + + public Object getId() { + return id; + } + + public void setId(Object id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Object getApiId() { + return apiId; + } + + public void setApiId(Object apiId) { + this.apiId = apiId; + } + + public Object getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Object successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgApiAuthVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgApiAuthVo.java new file mode 100644 index 00000000..10b1306a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgApiAuthVo.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.console; + + +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; + +import java.io.Serializable; +import java.util.List; + +/** + * @author yulei + **/ +public class OrgApiAuthVo implements Serializable { + + + private Long[] checkedKeys; + + private List treeSelectList; + + public Long[] getCheckedKeys() { + return checkedKeys; + } + + public void setCheckedKeys(Long[] checkedKeys) { + this.checkedKeys = checkedKeys; + } + + public List getTreeSelectList() { + return treeSelectList; + } + + public void setTreeSelectList(List treeSelectList) { + this.treeSelectList = treeSelectList; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgStatisticsVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgStatisticsVo.java new file mode 100644 index 00000000..c68cfc4c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/console/OrgStatisticsVo.java @@ -0,0 +1,141 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.console; + +import java.io.Serializable; + +/** + * 接口调用次数统计VO + * + * @author yulei + **/ +public class OrgStatisticsVo implements Serializable { + + /** + * id + */ + private String id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名 + */ + private String orgName; + + /** + * 接口id + */ + private String apiId; + + /** + * 成功次数 + */ + private Integer successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 版本号 + */ + private String versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 是否删除【0否,1是】 + */ + private String delFlag; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getApiId() { + return apiId; + } + + public void setApiId(String apiId) { + this.apiId = apiId; + } + + public Integer getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Integer successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgAuthResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgAuthResp.java new file mode 100644 index 00000000..1dcfdc66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgAuthResp.java @@ -0,0 +1,318 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +/** + * @ClassName : OrgAuthResp + * @Description : 机构权限返回类 + * @Author : sky + * @Date: 2023-07-13 13:31 + */ +public class OrgAuthResp implements Serializable { + + /** + * orgCode : 机构代码. ORG_CODE: VARCHAR(32) + */ + private String orgCode; + + /** + * subOrgCode 接入二级机构号 SUB_ORG_CODE: VARCHAR(32) + */ + private String subOrgCode; + + /** + * 【机构名称】 + */ + private String orgName; + /** + * 【机构类型】 + */ + private String orgType; + /** + * 【加盐】 + */ + private String salt; + /** + * 【加密】 + */ + private String encrypt; + /** + * 【ip白名单】 + */ + private String ip; + /** + * 数据起始时间 + */ + private Date dataBegin; + /** + * 数据结束时间 + */ + private Date dataEnd; + + private List apiList; + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public Date getDataBegin() { + return dataBegin; + } + + public void setDataBegin(Date dataBegin) { + this.dataBegin = dataBegin; + } + + public Date getDataEnd() { + return dataEnd; + } + + public void setDataEnd(Date dataEnd) { + this.dataEnd = dataEnd; + } + + public List getApiList() { + return apiList; + } + + public void setApiList(List apiList) { + this.apiList = apiList; + } + + public static class Api { + + /** + * 主键 + */ + private Long apiId; + + /** + * 状态(0不启用,1启用) + */ + private String status; + + /** + * 备注 + */ + private String remark; + + /** + * API名称 + */ + private String apiName; + + /** + * API版本 + */ + private String apiVersion; + + /** + * API路径 + */ + private String apiUrl; + + /** + * 请求类型 + */ + private String reqMethod; + + /** + * 返回格式 + */ + private String resType; + + /** + * 执行配置 + */ + private String executeConfig; + + /** + * 请求参数 + */ + private String reqParams; + + /** + * 返回字段 + */ + private String resParams; + + /** + * 接口交易码 + */ + private String apiCode; + /** + * 类型:1敏捷API 2系统API + */ + private String apiType; + /** + * 数据源id + */ + private String sourceId; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public String getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(String executeConfig) { + this.executeConfig = executeConfig; + } + + public String getReqParams() { + return reqParams; + } + + public void setReqParams(String reqParams) { + this.reqParams = reqParams; + } + + public String getResParams() { + return resParams; + } + + public void setResParams(String resParams) { + this.resParams = resParams; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } + + public String getSourceId() { + return sourceId; + } + + public void setSourceId(String sourceId) { + this.sourceId = sourceId; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgConfigResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgConfigResponse.java new file mode 100644 index 00000000..cb312f4b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgConfigResponse.java @@ -0,0 +1,141 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +import java.io.Serializable; + +/** + * 机构配置信息Vo + * + * @author yulei + **/ +public class OrgConfigResponse implements Serializable { + + /** + * 主键ID + */ + private Long configId; + + /** + * 机构号 + */ + private String orgNo; + + /** + * data:config:start:time + * data:config:end:time + * 配置项 + */ + private String configKey; + + /** + * 配置说明 + */ + private String configDesc; + + /** + * 配置值 + */ + private String configValue; + + /** + * 版本号 + */ + private Long versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 状态 + */ + private String status; + + + private String orgName; + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigDesc() { + return configDesc; + } + + public void setConfigDesc(String configDesc) { + this.configDesc = configDesc; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgInfoResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgInfoResp.java new file mode 100644 index 00000000..149932a4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgInfoResp.java @@ -0,0 +1,285 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 机构信息VO + * + * @author yulei + **/ +public class OrgInfoResp implements Serializable { + + /** + * 【机构号】 + */ + private String orgNo; + + /** + * 【机构名称】 + */ + private String orgName; + + /** + * 【机构类型】 + */ + private String orgType; + + /** + * 【机构描述】 + */ + private String orgDesc; + + /** + * 【加盐】 + */ + private String salt; + + /** + * 【加密】 + */ + private String encrypt; + + /** + * 【生效时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + + /** + * 【版本号】 + */ + private String versionNum; + + /** + * 【随机码】 + */ + private String recToken; + + /** + * 【删除标志】0代表存在 2代表删除 + */ + private String delFlag; + + + /** + * 【ip白名单】 + */ + private String ip; + + /** + * 【联系人电话】 + */ + private String contractTel; + + /** + * 【门户用户号】 + */ + private String memberId; + /** + * 接口id集合 + */ + private Long[] apiIds; + + /** + * 创建者id(或账户) + */ + private String createBy; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** 创建者姓名 */ + private String createByName; + + /** 更新者姓名 */ + private String updateByName; + + private Date createTime; + + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } + + public Long[] getApiIds() { + return apiIds; + } + + public void setApiIds(Long[] apiIds) { + this.apiIds = apiIds; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgKeyResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgKeyResponse.java new file mode 100644 index 00000000..6948ca19 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/org/OrgKeyResponse.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.org; + +public class OrgKeyResponse { + + private String salt; + private String encrypt; + + private OrgAuthResp.Api api; + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public OrgAuthResp.Api getApi() { + return api; + } + + public void setApi(OrgAuthResp.Api api) { + this.api = api; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineDayPageRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineDayPageRes.java new file mode 100644 index 00000000..2b49b6ab --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineDayPageRes.java @@ -0,0 +1,163 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * @ClassName : LineDayPageRes + * @Description : 线路日客流返回列表报文 + * @Author : sky + * @Date: 2023-09-18 15:22 + */ +public class LineDayPageRes { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "LineDayPageRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", lineStatus='" + lineStatus + '\'' + + ", companyCode='" + companyCode + '\'' + + ", companyName='" + companyName + '\'' + + ", serviceType='" + serviceType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineInfoRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineInfoRes.java new file mode 100644 index 00000000..a75bfbf0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineInfoRes.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + + +import java.util.List; + +/** + * 线路基础信息对象 tbl_prd_base_line + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineInfoRes { + + private List list; + + public List getList() { + return list; + } + + public void setList(List list) { + this.list = list; + } + + public static class Line { + /** + * 线路名称 + */ + private String lineName; + + /** + * 6位线路编码 + */ + private String lineCode; + + /** + * 五位线路编码 + */ + private String lineNo; + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLineNo() { + return lineNo; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricHourRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricHourRes.java new file mode 100644 index 00000000..1bf986ef --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricHourRes.java @@ -0,0 +1,190 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 线路小时客流量统计对象 tbl_prd_line_metric_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricHourRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标小时 + */ + private Long metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * $column.columnComment + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Long getMetricHour() { + return metricHour; + } + + public void setMetricHour(Long metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "LineMetricHourRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", lineStatus='" + lineStatus + '\'' + + ", companyCode='" + companyCode + '\'' + + ", companyName='" + companyName + '\'' + + ", serviceType='" + serviceType + '\'' + + ", metricHour=" + metricHour + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricMonthRes.java new file mode 100644 index 00000000..5b08bcc4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineMetricMonthRes.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricMonthRes { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "LineMetricMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", lineStatus='" + lineStatus + '\'' + + ", companyCode='" + companyCode + '\'' + + ", companyName='" + companyName + '\'' + + ", serviceType='" + serviceType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineStationInfoRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineStationInfoRes.java new file mode 100644 index 00000000..f85f4527 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/LineStationInfoRes.java @@ -0,0 +1,88 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +/** + * 站点基础信息对象 tbl_prd_base_line_station + * + * @author ruoyi + * @date 2023-09-19 + */ +public class LineStationInfoRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 方向 + */ + private String up; + + /** + * 站序 + */ + private Long levels; + + /** + * 站点名称 + */ + private String levelName; + + /** + * 五位线路编码 + */ + private String lineNo; + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + public void setUp(String up) { + this.up = up; + } + + public String getUp() { + return up; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Long getLevels() { + return levels; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public String getLevelName() { + return levelName; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLineNo() { + return lineNo; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/RouteMetricDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/RouteMetricDayRes.java new file mode 100644 index 00000000..dfcdbcca --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/RouteMetricDayRes.java @@ -0,0 +1,234 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteMetricDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 司机工号 + */ + private String driverCode; + + /** + * 起点 + */ + private String startStation; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date startTime; + + /** + * 终点 + */ + private String endStation; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 路单类型 + */ + private String waybillType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getWaybillType() { + return waybillType; + } + + public void setWaybillType(String waybillType) { + this.waybillType = waybillType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "RouteMetricDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", licensePlate='" + licensePlate + '\'' + + ", driverCode='" + driverCode + '\'' + + ", startStation='" + startStation + '\'' + + ", startTime=" + startTime + + ", endStation='" + endStation + '\'' + + ", arrivalTime=" + arrivalTime + + ", waybillType='" + waybillType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricDayRes.java new file mode 100644 index 00000000..1ee7b6bf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricDayRes.java @@ -0,0 +1,175 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqMetricDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", lineStatus='" + lineStatus + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricMonthRes.java new file mode 100644 index 00000000..87eba0ce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqMetricMonthRes.java @@ -0,0 +1,175 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_station_freq_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricMonthRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqMetricMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", lineStatus='" + lineStatus + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransDayRes.java new file mode 100644 index 00000000..5d09220b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransDayRes.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqTransDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransMonthRes.java new file mode 100644 index 00000000..cb28dc87 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationFreqTransMonthRes.java @@ -0,0 +1,178 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonthRes implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationFreqTransMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricDayRes.java new file mode 100644 index 00000000..154c0c41 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricDayRes.java @@ -0,0 +1,161 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationMetricDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levelName='" + levelName + '\'' + + ", levels=" + levels + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricHourRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricHourRes.java new file mode 100644 index 00000000..c2354430 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricHourRes.java @@ -0,0 +1,187 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricHourRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 换乘方式 + */ + private String exchangeType; + /** + * 指标小时 + */ + private Integer metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationMetricHourRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", levelName='" + levelName + '\'' + + ", metricHour=" + metricHour + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricMonthRes.java new file mode 100644 index 00000000..c6ada8ee --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationMetricMonthRes.java @@ -0,0 +1,160 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationMetricMonthRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationMetricMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", levelName='" + levelName + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransDayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransDayRes.java new file mode 100644 index 00000000..c43e2977 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransDayRes.java @@ -0,0 +1,176 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransDayRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationTransDayRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransHourRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransHourRes.java new file mode 100644 index 00000000..6d1f0981 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransHourRes.java @@ -0,0 +1,172 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransHourRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘方式 + */ + private String exchangeType; + + /** + * 指标小时 + */ + private Long metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getMetricHour() { + return metricHour; + } + + public void setMetricHour(Long metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransMonthRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransMonthRes.java new file mode 100644 index 00000000..edb7d72b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/product/StationTransMonthRes.java @@ -0,0 +1,175 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.product; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationTransMonthRes { + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + @Override + public String toString() { + return "StationTransMonthRes{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + ", createTime=" + createTime + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/CentimeDelayRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/CentimeDelayRes.java new file mode 100644 index 00000000..fd619e33 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/CentimeDelayRes.java @@ -0,0 +1,80 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 延迟上送比率对象 tbl_qa_centime_delay + * + * @author shu_k + * @date 2023-09-20 + */ +public class CentimeDelayRes { + + /** + * 主键 + */ + private Long id; + + /** + * 时间范围 + */ + private String timeRange; + + /** + * 延迟数量 + */ + private Long delayCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getTimeRange() { + return timeRange; + } + + public void setTimeRange(String timeRange) { + this.timeRange = timeRange; + } + + public Long getDelayCount() { + return delayCount; + } + + public void setDelayCount(Long delayCount) { + this.delayCount = delayCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/PosMatchRateRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/PosMatchRateRes.java new file mode 100644 index 00000000..06ea31f2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/PosMatchRateRes.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * Pos匹配率对象 tbl_qa_pos_match_rate + * + * @author shu_k + * @date 2023-09-20 + */ +public class PosMatchRateRes { + + /** + * 主键ID + */ + private Long id; + + /** + * 交易数量 + */ + private Long tranNum; + + /** + * 匹配数量 + */ + private Long matchNum; + + /** + * 匹配率 + */ + private BigDecimal matchRate; + + /** + * 匹配率 + */ + private Long differNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getTranNum() { + return tranNum; + } + + public void setTranNum(Long tranNum) { + this.tranNum = tranNum; + } + + public Long getMatchNum() { + return matchNum; + } + + public void setMatchNum(Long matchNum) { + this.matchNum = matchNum; + } + + public BigDecimal getMatchRate() { + return matchRate; + } + + public Long getDifferNum() { + return differNum; + } + + public void setDifferNum(Long differNum) { + this.differNum = differNum; + } + + public void setMatchRate(BigDecimal matchRate) { + this.matchRate = matchRate; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteDailyRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteDailyRes.java new file mode 100644 index 00000000..12f0495e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteDailyRes.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运线路条数对象 tbl_qa_route_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteDailyRes { + + /** + * 主键ID + */ + private Long id; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 线路数量 + */ + private Long routeCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 运营公司编码 + */ + private String companyCode; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getRouteCount() { + return routeCount; + } + + public void setRouteCount(Long routeCount) { + this.routeCount = routeCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteMissRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteMissRes.java new file mode 100644 index 00000000..0e4c5b56 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteMissRes.java @@ -0,0 +1,104 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 班次缺失率对象 tbl_qa_route_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteMissRes { + + /** + * 主键Id + */ + private Long id; + + /** + * 缺失率 + */ + private BigDecimal missRate; + + private Long differNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 电子路单数量班次 + */ + private Long routeCount; + + /** + * 调离站班次数量 + */ + private Long busStopCount; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public void setId(Long id) { + this.id = id; + } + + public Long getId() { + return id; + } + + public void setMissRate(BigDecimal missRate) { + this.missRate = missRate; + } + + public BigDecimal getMissRate() { + return missRate; + } + + public Long getDifferNum() { + return differNum; + } + + public void setDifferNum(Long differNum) { + this.differNum = differNum; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setRouteCount(Long routeCount) { + this.routeCount = routeCount; + } + + public Long getRouteCount() { + return routeCount; + } + + public void setBusStopCount(Long busStopCount) { + this.busStopCount = busStopCount; + } + + public Long getBusStopCount() { + return busStopCount; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteTurnoverRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteTurnoverRes.java new file mode 100644 index 00000000..86df561a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/RouteTurnoverRes.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 班次周转时间对象 tbl_qa_route_turnover_time + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteTurnoverRes { + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 平均周转时间 + */ + private Long turnoverTime; + + /** + * 早晚高峰名称 + */ + private String hlowPeakName; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public Long getTurnoverTime() { + return turnoverTime; + } + + public void setTurnoverTime(Long turnoverTime) { + this.turnoverTime = turnoverTime; + } + + public String getHlowPeakName() { + return hlowPeakName; + } + + public void setHlowPeakName(String hlowPeakName) { + this.hlowPeakName = hlowPeakName; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/StationMissRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/StationMissRes.java new file mode 100644 index 00000000..bcbddf07 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/StationMissRes.java @@ -0,0 +1,259 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 站点缺失率对象 tbl_qa_station_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class StationMissRes { + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 驾驶员工号 + */ + private String driverCode; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date startTime; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 起点 + */ + private String startStation; + + /** + * 终点 + */ + private String endStation; + + /** + * 上下行 + */ + private String up; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 起点站级 + */ + private Long startStationLevels; + + /** + * 终点站级 + */ + private Long endStationLevels; + + /** + * 班次站点数 + */ + private Long levelNum; + + /** + * 车辆到离站数 + */ + private Long busStopNum; + + private Long differNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS) + private Date createTime; + /** + * 站点缺失率 + */ + private BigDecimal missRate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Long getStartStationLevels() { + return startStationLevels; + } + + public void setStartStationLevels(Long startStationLevels) { + this.startStationLevels = startStationLevels; + } + + public Long getEndStationLevels() { + return endStationLevels; + } + + public void setEndStationLevels(Long endStationLevels) { + this.endStationLevels = endStationLevels; + } + + public Long getLevelNum() { + return levelNum; + } + + public void setLevelNum(Long levelNum) { + this.levelNum = levelNum; + } + + public Long getBusStopNum() { + return busStopNum; + } + + public void setBusStopNum(Long busStopNum) { + this.busStopNum = busStopNum; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public BigDecimal getMissRate() { + return missRate; + } + + public void setMissRate(BigDecimal missRate) { + this.missRate = missRate; + } + + public Long getDifferNum() { + return differNum; + } + + public void setDifferNum(Long differNum) { + this.differNum = differNum; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDailyRes.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDailyRes.java new file mode 100644 index 00000000..1b5dbe5a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDailyRes.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 日营运车辆数对象 tbl_qa_vehicle_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class VehicleDailyRes { + + /** + * 主键ID + */ + private Long id; + + /** + * 公司编码 + */ + private String companyCode; + + /** + * 公司名称 + */ + private String companyName; + + /** + * 车辆数 + */ + private Long vehicleCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date createTime; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getVehicleCount() { + return vehicleCount; + } + + public void setVehicleCount(Long vehicleCount) { + this.vehicleCount = vehicleCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDayResponse.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDayResponse.java new file mode 100644 index 00000000..27d78046 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/response/quailty/VehicleDayResponse.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.dto.response.quailty; + +import com.jiuyv.sptccc.agile.common.core.page.PageResult; + +public class VehicleDayResponse { + + /** + * 获取总车辆数据 + */ + private Long totalBus; + + private PageResult page; + + public Long getTotalBus() { + return totalBus; + } + + public void setTotalBus(Long totalBus) { + this.totalBus = totalBus; + } + + public PageResult getPage() { + return page; + } + + public void setPage(PageResult page) { + this.page = page; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/BaseResp.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/BaseResp.java new file mode 100644 index 00000000..3e67d4aa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/BaseResp.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.web; + +import java.time.LocalDateTime; + +/** + * 返回基础类 + * + * @author yulei + **/ +public class BaseResp { + + private String code; + + private String msg; + + private Integer version; + + private String seqNo; + + public String getSeqNo() { + return seqNo; + } + + public void setSeqNo(String seqNo) { + this.seqNo = seqNo; + } + + public Integer getVersion() { + return version; + } + + public void setVersion(Integer version) { + this.version = version; + } + + public LocalDateTime getRequestTime() { + return requestTime; + } + + public void setRequestTime(LocalDateTime requestTime) { + this.requestTime = requestTime; + } + + private LocalDateTime requestTime; + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/ResultCode.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/ResultCode.java new file mode 100644 index 00000000..49bceb66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/ResultCode.java @@ -0,0 +1,281 @@ +package com.jiuyv.sptcc.agile.dataservice.web; + +import com.jiuyv.sptccc.agile.common.core.IErrorCode; + +/** + * 常用API返回对象 + * Created by macro on 2019/4/19. + */ +public enum ResultCode implements IErrorCode { + /** success : 成功. */ + SUCCESS("success", "操作成功"), + PROCESS("process", "订单处理中,请稍后查询"), + + FAILED("failed", "操作失败,请刷新重试"), + VALIDATE_FAILED("input_not_valid", "输入不合法"), + SYS_ERROR("sys_error","系统异常"), + /** date_not_exist : 数据不存在*/ + DATE_NOT_EXIST("date_not_exist","数据不存在"), + /** update_failed : 更新失败*/ + UPDATE_FAILED("update_failed","更新失败,版本过期"), + /** + * 接口权限相关 + */ + FORBIDDEN("forbidden","禁止访问"), + /**该机构不存在 */ + ORG_NOT_FOUND("org_not_found","该机构不存在"), + /** org_date_time_error: 启动时间不在有效时间范围内*/ + ORG_DATE_TIME_ERROR("org_date_time_error","启动时间不在有效时间范围内"), + + /** org_ip_while_list: 该ip不在允许的白名单范围*/ + ORG_IP_WHILE_LIST("org_ip_while_list","该ip不在允许的白名单范围"), + API_NOT_RIGHT("api_not_right","api接口没有权限"), + API_BECOME_DUE("api_become_due","api接口到期,请重新授权"), + + API_HAS_ORG("api_has_org","该api已绑定了机构"), + API_ERROR_STATUS("api_error_status","数据状态不对"), + API_NOT_RELEASE("api_not_release","api接口已注销"), + API_HAS_RELEASE("api_has_release","api接口已注册"), + API_DELETE_ERROR("api_delete_error","只能删除下架和待注册API"), + API_IS_DOWN("api_is_down","机构权限为上架"), + API_CODE_HAS_USED("api_code_has_used","交易码已被使用"), + /**api_path_has_used : 该注册地址已被使用*/ + API_PATH_HAS_USED("api_path_has_used","该注册地址已被使用"), + /**api_register_check_error :注册校验异常 */ + API_REGISTER_CHECK_ERROR("api_register_check_error","注册校验异常"), + + /**api_is_used :该API已经被机构使用,不能删除 */ + API_IS_USED("api_is_used","该API已经被机构使用,不能删除"), + + /**data_time_no_right :没有改范围的数据权限 */ + DATA_TIME_NO_RIGHT("data_time_no_right","没有该范围的数据权限"), + + REPEAT_SUBMIT("duplicate_req_id", "请勿重复提交"), + AUTHORIZATION_LIMIT("authorization limit", "权限限制"), + ILLEGALLY("illegally request", "不合法请求"), + /** input_not_valid : 输入不合法. */ + INPUT_NOT_VALID("input_not_valid", "输入不合法"), + /** duplicate_req_id : 重复请求. */ + DUPLICATE_REQ_ID("duplicate_req_id","重复请求"), + + BUSINESS_ERROR("business_error","调用返回非成功"), + + /** sql_lock_exception : 乐观锁异常*/ + SQL_EXCEPTION("sql_lock_exception","乐观锁异常"), + + /** batch_exception : 跑批数据异常 */ + BATCH_EXCEPTION("batch_exception","跑批数据异常"), + + /** PORTAL_USER_HAS_BINGED : 该会员已经绑定机构,不能重复绑定 */ + PORTAL_USER_HAS_BINGED("portal_user_has_binged","该会员已经绑定机构,不能重复绑定"), + + /** FILE_DOWN_FAIL : 文件下载失败 */ + FILE_DOWN_FAIL("file_down_fail","文件下载失败"), + /** file_down_no_right : 没有文件下载权限 */ + FILE_DOWN_NO_RIGHT("file_down_no_right","没有文件下载权限"), + + /** file_down_no_exist : 文件不存在 */ + FILE_DOWN_NO_EXIST("file_down_no_exist","文件不存在"), + + /** file_down_no_exist : 文件不存在 */ + FILE_DOWN_DATA_ERROR("file_down_data_error","只保留最近一个月的文件,T+4生成文件"), + ; + private String code; + private String message; + + private ResultCode(String code, String message) { + this.code = code; + this.message = message; + } + + @Override + public String getCode() { + return code; + } + @Override + public String getMessage() { + return message; + } + + public static boolean success(String code) { + return SUCCESS.getCode().equalsIgnoreCase(code); + } + +// /** success : 成功. */ +// String SUCCESS = "success"; +// +// /** duplicate_req_id : 重复请求. */ +// String DUPLICATE_REQ_ID = "duplicate_req_id"; +// +// /** input_not_valid : 输入不合法. */ +// String INPUT_NOT_VALID = "input_not_valid"; +// +// /** sign_check_failed : 请求验签失败. */ +// String SIGN_CHECK_FAILED = "sign_check_failed"; +// +// /** sc_not_valid : 非法销售渠道代码. */ +// String SC_NOT_VALID = "sc_not_valid"; +// +// /** duplicate_order : 订单重复. */ +// String DUPLICATE_ORDER = "duplicate_order"; +// +// /** token_not_valid : token不合法. */ +// String TOKEN_NOT_VALID = "token_not_valid"; +// +// /** rule_not_found : 未找到积分规则. */ +// String RULE_NOT_FOUND = "rule_not_found"; +// +// /** order_not_found : 订单未找到. */ +// String ORDER_NOT_FOUND = "order_not_found"; +// +// /** trans_sync_failed : 交易同步失败. */ +// String TRANS_SYNC_FALIED = "trans_sync_failed"; +// +// /** trans_processing : 交易正在承兑. */ +// String TRANS_PROCESSING = "trans_processing"; +// +// /** bussiness_error : 业务错误. */ +// String BUSSINESS_ERROR = "bussiness_error"; +// +// /** smfQry_processing : 查询处理中. */ +// String SMFQRY_PROCESSING = "smfQry_processing"; +// +// /** info_error : 信息完善失败. */ +// String INFO_ERROR = "info_error"; +// +// /** user_not_found : 用户查询失败. */ +// String USER_NOT_FOUND = "user_not_found"; +// +// /** pay_not_found : 支付方式查询失败. */ +// String PAY_NOT_FOUND = "pay_not_found"; +// +// /** sec_scene_not_valid : 非法验证码类型. */ +// String SEC_SCENE_NOT_VALID = "sec_scene_not_valid"; +// +// /** msg_code_not_valid : 验证码验证失败. */ +// String MSG_CODE_NOT_VALID = "msg_code_not_valid"; +// +// /** CUSTOMER_IS_FAIL : 关联常客失败 */ +// String CUSTOMER_IS_FAIL = "customer_is_fail"; +// +// /** bussiness_processing : 业务处理中. */ +// String BUSSINESS_PROCESSING = "bussiness_processing"; +// +// /** no_acc2_account : 用户尚未开户. */ +// String NO_ACC2_ACCOUNT = "no_acc2_account"; +// +// /** not_zero_bal : 账户资产不为零. */ +// String NOT_ZERO_BAL = "not_zero_bal"; +// +// /** post_faild : 通信失败. */ +// String POST_FAILED = "post_faild"; +// +// /** token_sys_error : 系统异常. */ +// String SYS_ERROR = "sys_error"; +// +// /** already_acct_upd : 用户已开二类户. */ +// String ALREADY_ACCT_UPD = "already_acct_upd"; +// +// /** quick_relUser_is_fail: 快捷支付用户中心同步失败. */ +// String QUICK_RELUSER_IS_FAIL = "quick_relUser_is_fail"; +// +// /** acc2_exist : 该用户已开过电子账户*/ +// String ACC2_EXIST = "acc2_exist"; +// +// /** uesr_status_error : 您的用户状态为{0},不支持进行此操作 */ +// String USER_STATUS_ERROR = "user_status_error"; +// +// /** bankInnerPathFailed : 入金通道签约失败. */ +// String BANK_INNER_PATH_FAILED = "bankInnerPathFailed"; +// +// /** search_error : 查询失败*/ +// String SEARCH_ERROR = "search error"; +// +// /** mufly_query_error : 获取偏好信息失败. */ +// String MUFLY_QUERY_ERROR = "mufly_query_error"; +// +// /** user_update_error : 用户信息更新失败. */ +// String USER_UPDATE_ERROR = "user_update_error"; +// +// /** mufly_notice_error : 系统通信失败. */ +// String MUFLY_NOTICE_ERROR = "mufly_notice_error"; +// +// /** mufly_update_9999 : 常客未知错误. */ +// String MUFLY_UPDATE_9999 = "mufly_update_9999"; +// +// /** user_regist_error : 用户注册失败. */ +// String USER_REGIST_ERROR = "user_regist_error"; +// +// /** mufly_error : 常客系统异常. */ +// String MIFLY_ERROR = "mufly_error"; +// +// /** soa_error : SOA系统异常. */ +// String SOA_ERROR = "soa_error"; +// +// /** msgbuss_error : 事找人系统异常. */ +// String MSGBUSS_ERROR = "msgbuss_error"; +// +// /**user_has_regist_code :用户证件号已经注册. */ +// String USER_HAS_REGIST_CODE= "user_has_regist"; +// +// /**user_has_connect_custom :用户常客号已关联. */ +// String USER_HAS_CONNECT_CUSTOM= "user_has_connect_custom"; +// +// /**callcenter_cancel_user_fail :客服中心注销钱包账户失败. */ +// String CALLCENTER_CANCEL_USER_FAIL= "callcenter_cancel_user_fail"; +// +// /**sign_info_fail :签约失败,请稍后再试. */ +// String SIGN_INFO_FAIL = "sign_info_fail"; +// +// /** user_cancel_failed : 钱包用户注销失败. */ +// String USER_CANCEL_FAILED = "user_cancel_failed"; +// +// /** real_cert_failed : 查询实名验证失败. */ +// String REAL_CERT_FAILED = "real_cert_failed"; +// +// /** real_cert_expired : 实名验证过期. */ +// String REAL_CERT_EXPIRED = "real_cert_expired"; +// +// /** process_not_found : 未查询到进行中的流程. */ +// String PROCESS_NOT_FOUND = "process_not_found"; +// +// /** fetch_sku_msg_faile : 获取产品信息失败. */ +// String FETCH_SKU_MEG_FAILE = "fetch_sku_msg_faile"; +// +// /** SKU_STOCK_LOCK_FAILE : 库存锁定失败. */ +// String SKU_STOCK_LOCK_FAILE = "sku_stock_lock_faile"; +// +// /** sku_sale_out_faile : 产品出库失败. */ +// String SKU_SALE_OUT_FAILE = "sku_sale_out_faile"; +// +// /** sku_unlock_faile : 解锁库存失败. */ +// String SKU_UNLOCK_FAILE = "sku_unlock_faile"; +// +// /** order_no_data_null : 根据销售订单号未找到销售订单记录. */ +// String ORDER_NO_DATA_NULL = "order_no_data_null"; +// +// /** refund_num_excess : 退款数量超过原始销售数量. */ +// String REFUND_NUM_EXCESS = "refund_num_excess"; +// +// /** cancle_faile : 订单状态为已完成,不支持取消. */ +// String CANCLE_FAILE = "cancle_faile"; +// +// /** refund_amt_error : 退货总金额不能大于支付金额. */ +// String REFUND_AMT_ERROR = "refund_amt_error"; +// +// /** sales_prod_not_match : 未匹配到原销售子订单. */ +// String SALES_PROD_NOT_MATCH = "sales_prod_not_match"; +// +// /** sku_msg_not_match : 未匹配到sku信息. */ +// String SKU_MSG_NOT_MATCH = "sku_msg_not_match"; +// +// /** fetch_user_info_faile : 获取用户信息失败. */ +// String FETCH_USER_INFO_FAILE = "fetch_user_info_faile"; +// +// /** ord_amt_vali_faile : 订单总金额校验失败. */ +// String ORD_AMT_VALI_FAILE = "ord_amt_vali_faile"; +// +// /** refund_amt_vali_faile : 退款金额校验失败. */ +// String REFUND_AMT_VALI_FAILE = "refund_amt_vali_faile"; + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/annotation/EnumCheckValue.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/annotation/EnumCheckValue.java new file mode 100644 index 00000000..a46b41a8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/annotation/EnumCheckValue.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.web.annotation; + + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.IDictEnum; +import com.jiuyv.sptcc.agile.dataservice.web.validator.EnumStringValidator; + +import javax.validation.Constraint; +import javax.validation.Payload; +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * 注解:用于标记需要截取内容的属性 + */ +@Target({ElementType.FIELD}) +@Retention(RetentionPolicy.RUNTIME) +@Constraint(validatedBy = {EnumStringValidator.class}) +public @interface EnumCheckValue { + /** + * 枚举类型 + * @return + */ + Class> value(); + + /** + * 错误信息 + * @return + */ + String message() default "值不在枚举范围内"; + + /** + * 是否允许为空,默认不允许 + * @return + */ + boolean isNullable() default false; + + Class[] groups() default {}; + + Class[] payload() default {}; +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/DateTimeFormatConstant.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/DateTimeFormatConstant.java new file mode 100644 index 00000000..56ecc5ce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/DateTimeFormatConstant.java @@ -0,0 +1,28 @@ +// package com.jiuyv.sptcc.agile.dataservice.web.constant; +// +// /** +// * @ClassName : DateFormart +// * @Description : +// * @Author : sky +// * @Date: 2023-09-19 16:31 +// */ +// public final class DateTimeFormatConstant { +// +// private DateTimeFormatConstant() { +// throw new IllegalStateException("Utility class"); +// } +// +// public static final String YYYY = "yyyy"; +// +// public static final String YYYY_MM = "yyyy-MM"; +// +// public static final String YYYY_MM_DD = "yyyy-MM-dd"; +// +// public static final String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; +// +// public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; +// +// private static final String[] parsePatterns = {"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM", +// "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", +// "yyyy.MM.dd HH:mm", "yyyy.MM"}; +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/HttpStatus.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/HttpStatus.java new file mode 100644 index 00000000..0606ca02 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/constant/HttpStatus.java @@ -0,0 +1,89 @@ +package com.jiuyv.sptcc.agile.dataservice.web.constant; + +/** + * 返回状态码 + * + * @author admin + */ +public class HttpStatus +{ + /** + * 操作成功 + */ + public static final int SUCCESS = 200; + + /** + * 对象创建成功 + */ + public static final int CREATED = 201; + + /** + * 请求已经被接受 + */ + public static final int ACCEPTED = 202; + + /** + * 操作已经执行成功,但是没有返回数据 + */ + public static final int NO_CONTENT = 204; + + /** + * 资源已被移除 + */ + public static final int MOVED_PERM = 301; + + /** + * 重定向 + */ + public static final int SEE_OTHER = 303; + + /** + * 资源没有被修改 + */ + public static final int NOT_MODIFIED = 304; + + /** + * 参数列表错误(缺少,格式不匹配) + */ + public static final int BAD_REQUEST = 400; + + /** + * 未授权 + */ + public static final int UNAUTHORIZED = 401; + + /** + * 访问受限,授权过期 + */ + public static final int FORBIDDEN = 403; + + /** + * 资源,服务未找到 + */ + public static final int NOT_FOUND = 404; + + /** + * 不允许的http方法 + */ + public static final int BAD_METHOD = 405; + + /** + * 资源冲突,或者资源被锁 + */ + public static final int CONFLICT = 409; + + /** + * 不支持的数据,媒体类型 + */ + public static final int UNSUPPORTED_TYPE = 415; + + /** + * 系统内部错误 + */ + public static final int ERROR = 500; + + /** + * 接口未实现 + */ + public static final int NOT_IMPLEMENTED = 501; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/validator/EnumStringValidator.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/validator/EnumStringValidator.java new file mode 100644 index 00000000..9cfdf5f3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/web/validator/EnumStringValidator.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.web.validator; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.IDictEnum; +import com.jiuyv.sptcc.agile.dataservice.web.annotation.EnumCheckValue; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.validation.ConstraintValidator; +import javax.validation.ConstraintValidatorContext; +import java.lang.reflect.Method; + +/** + * 校验string类型的枚举 + * + * @author Administrator + */ + +public class EnumStringValidator implements ConstraintValidator { + + private static final Logger logger = LoggerFactory.getLogger(EnumStringValidator.class); + private Class> clazz; + private Boolean isNullable; + + @Override + public void initialize(EnumCheckValue constraintAnnotation) { + clazz = constraintAnnotation.value(); + isNullable = constraintAnnotation.isNullable(); + } + + /** + * Implements the validation logic. + * The state of {@code value} must not be altered. + *

+ * This method can be accessed concurrently, thread-safety must be ensured + * by the implementation. + * + * @param value object to validate + * @param context context in which the constraint is evaluated + * @return {@code false} if {@code value} does not pass the constraint + */ + @Override + public boolean isValid(String value, ConstraintValidatorContext context) { + + if (value == null) { + return Boolean.TRUE.equals(isNullable); + } + try { + Enum[] enumArr = clazz.getEnumConstants(); + for (Enum e : enumArr) { + String keyMethod = "getCode"; + Method method = e.getDeclaringClass().getMethod(keyMethod); + Object keyValue = method.invoke(e); + if ((value.equals(keyValue))) { + return true; + + } + } + + } catch (Exception e) { + logger.error("枚举校验异常:{}", e.getMessage()); + } + return false; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/RequestTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/RequestTest.java new file mode 100644 index 00000000..077b14f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/RequestTest.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.platform.commons.util.ReflectionUtils; +import org.springframework.boot.test.context.SpringBootTest; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +//@SpringBootTest(classes = RequestTest.class) +public class RequestTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.request"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/ResponseTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/ResponseTest.java new file mode 100644 index 00000000..17caaeaa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-api/src/test/java/com/jiuyv/sptcc/agile/dataservice/dto/ResponseTest.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.dto; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.platform.commons.util.ReflectionUtils; +import org.springframework.boot.test.context.SpringBootTest; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +//@SpringBootTest(classes = ResponseTest.class) +public class ResponseTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.response"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/pom.xml new file mode 100644 index 00000000..8ee3a31f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/pom.xml @@ -0,0 +1,267 @@ + + + + agile-data + com.jiuyv.sptcc.agile + 0.2.17 + + 4.0.0 + + agile-data-service + + + 8 + 8 + + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-security + + + org.springframework.boot + spring-boot-starter-validation + + + + org.springframework.boot + spring-boot-starter-actuator + + + + + io.micrometer + micrometer-registry-prometheus + + + + + + org.springframework.cloud + spring-cloud-starter-bootstrap + + + org.springframework.cloud + spring-cloud-starter-loadbalancer + + + org.springframework.cloud + spring-cloud-starter-openfeign + + + + io.github.openfeign + feign-okhttp + + + + com.squareup.okhttp3 + okhttp + ${okhttp3.version} + + + org.springframework.cloud + spring-cloud-starter-config + + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-client + + + + org.springframework.cloud + spring-cloud-starter-sleuth + + + + com.jiuyv.sptcc.agile + agile-data-api + + + + com.jiuyv.sptcc.agile + agile-mobile-message-api + + + + org.springframework.boot + spring-boot-devtools + true + + + + org.apache.commons + commons-lang3 + + + + commons-codec + commons-codec + + + + + org.apache.commons + commons-pool2 + + + + com.jcraft + jsch + ${jsch.version} + + + + com.fasterxml.jackson.core + jackson-databind + + + + org.hibernate.validator + hibernate-validator + + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + + + + + org.postgresql + postgresql + + + + + net.logstash.logback + logstash-logback-encoder + ${logstash.logback.version} + + + + + org.springframework.boot + spring-boot-starter-cache + + + + com.github.ben-manes.caffeine + caffeine + ${caffeine.version} + + + + org.springframework.boot + spring-boot-starter-aop + + + + com.github.pagehelper + pagehelper-spring-boot-starter + ${pageHelper.version} + + + + com.luhuiguo + aspose-words + 23.1 + + + + + org.springframework.boot + spring-boot-starter-test + test + + + com.h2database + h2 + test + + + + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + + org.jacoco + jacoco-maven-plugin + + + default-prepare-agent + + prepare-agent + + + + default-report + prepare-package + + report + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + true + com.jiuyv.sptcc.agile.dataservice.AgileDataApplication + + + + + maven-compiler-plugin + + 1.8 + 1.8 + UTF-8 + + lib + + + + + + + src/lib + BOOT-INF/lib/ + + **/*.jar + + + + + src/main/resources + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/AgileDataApplication.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/AgileDataApplication.java new file mode 100644 index 00000000..f7bbc51f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/AgileDataApplication.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptcc.agile.dataservice; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cache.annotation.EnableCaching; +import org.springframework.cloud.netflix.eureka.EnableEurekaClient; +import org.springframework.cloud.openfeign.EnableFeignClients; +import org.springframework.scheduling.annotation.EnableScheduling; + +/** + * @author yulei + */ +@SpringBootApplication +@EnableScheduling +@EnableCaching +@EnableEurekaClient +@EnableFeignClients +public class AgileDataApplication { + private static final Logger LOGGER = LoggerFactory.getLogger(AgileDataApplication.class); + + public static void main(String[] args) { + SpringApplication.run(AgileDataApplication.class, args); + LOGGER.info("(♥◠‿◠)ノ゙ 模块启动成功゙ \n"+ + " ___ ___ ___ \n"+ + " |\\ \\ |\\ \\ / /| \n"+ + " \\ \\ \\ \\ \\ \\/ / / \n"+ + " __ \\ \\ \\ \\ \\ / / \n"+ + " |\\ \\\\_\\ \\ \\/ / / \n"+ + " \\ \\________\\ __/ / / \n"+ + " \\|________| |\\___/ / \n"+ + " \\|___|/ \n" + ); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/annotation/LogStatics.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/annotation/LogStatics.java new file mode 100644 index 00000000..56d9b651 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/annotation/LogStatics.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.common.annotation; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.ApiConstant; +import com.jiuyv.sptcc.agile.dataservice.common.enums.BusinessType; +import com.jiuyv.sptcc.agile.dataservice.common.enums.OperatorType; + +import java.lang.annotation.*; + + +/** + * 统计结构网关接口调用次数 + * + * @author admin + */ +@Target({ElementType.PARAMETER, ElementType.METHOD}) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface LogStatics { + + /** + * 请求头机构号 + * 为了兼容敏捷api,机构号就不放在接口里面 + * + */ + String orgCode() default ApiConstant.HEAD_API_CODE; + + /** + * apiCode请求头 + */ + String apiCode() default ApiConstant.HEAD_API_CODE; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/ApiConstant.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/ApiConstant.java new file mode 100644 index 00000000..1482c91f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/ApiConstant.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.common.constants; + +public final class ApiConstant { + private ApiConstant() { + throw new UnsupportedOperationException(); + } + + /** + * api请求头机构号key + */ + public static final String HEAR_ORG_CODE = "orgCode"; + /** + * api请求头交易编码key + */ + public static final String HEAD_API_CODE = "apiCode"; +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/Constants.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/Constants.java new file mode 100644 index 00000000..b643ac30 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/constants/Constants.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.common.constants; + +/** + * @ClassName : Constant + * @Description : + * @Author : sky + * @Date: 2023-09-05 15:33 + */ +public final class Constants { + + /** + * 默认版本号 + */ + public static final Long VERSION = 0L; + + /** + * 默认apiCode前缀 + */ + public static final String PRE_APICODE = "API0000"; + + /** + * 横向 + */ + public static final String LINE = "-"; + + /** + * 空格 + */ + public static final String SPACE = ""; + + /** + * 副本 + */ + public static final String COPY = "-副本"; + + /** + * 副本 + */ + public static final String COPY_VERSION = "-SNAPSHOT"; + + /** + * 副本路径 + */ + public static final String COPY_PATH = "/copy"; + + /** + * 机构号 + */ + public static final String ORG_NO_PREFIX = "JGH000"; + + /** + * 机构号长度 + */ + public static final Integer ORG_NO_LENGTH = 18; + + /** + * 统一路径,public+模块名+ 业务路劲 + */ + public static final String PREFIX = "/public/agile-data/api"; + + /** + * 默认版本号 + */ + public static final String VERSION_DEFAULT = "v1.0.0"; + /** + * 斜杠 + */ + public static final String SEPARATOR = "/"; + + /** + * 双斜杠 + */ + public static final String SEPARATOR_DOUBLE = "//"; + /** + * 下载文件接口 + */ + public static final String API_CODE_DOWNLOAD = "download"; + + + public static final String SYSTEM_NAME = "system"; + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseController.java new file mode 100644 index 00000000..a1e74145 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseController.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.common.controller; + +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.StringUtilT; +import com.jiuyv.sptccc.agile.common.core.base.PageSize; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.WebDataBinder; +import org.springframework.web.bind.annotation.InitBinder; + +import java.beans.PropertyEditorSupport; +import java.util.Date; +import java.util.Map; + +/** + * web层通用数据处理 + * + * @author admin + */ +public class BaseController { + protected final Logger logger = LoggerFactory.getLogger(this.getClass()); + + /** + * 将前台传递过来的日期格式的字符串,自动转化为Date类型 + */ + @InitBinder + public void initBinder(WebDataBinder binder) { + // Date 类型转换 + binder.registerCustomEditor(Date.class, new PropertyEditorSupport() { + @Override + public void setAsText(String text) { + setValue(DateUtils.parseDate(text)); + } + }); + } + + + + /** + * 更新时用的,检查params,没有则初始化 + * 放一下旧的recToken和versionNum + * + * @param recToken versionNum + * @return + */ + public Map checkParams(String recToken, Long versionNum) { + return ParamsUtil.idempotent(recToken,versionNum); + } + + /** + * 分页 + * @param page + */ + public void startPage(PageSize page, String orderStr){ + String orderBy = page.getOrderBy(); + if(!StringUtils.isBlank(orderBy)){ + String orderByString = StringUtilT.toUnderScoreCase(orderBy)+ " " + (page.isDesc()?"desc":"asc"); + PageMethod.startPage(page.getPageNum(),page.getPageSize(),orderByString); + }else if(orderStr != null){ + PageMethod.startPage(page.getPageNum(),page.getPageSize(), StringUtilT.toUnderScoreCase(orderStr) +" " +"desc"); + }else { + PageMethod.startPage(page.getPageNum(),page.getPageSize()); + } + } + /** + * 分页 + * @param page + */ + public void startPage(PageSize page){ + startPage(page,null); + } + + public R handelEx(Exception e){ + if(null == e){ + return R.fail(); + } + logger.info("请求报错:{}",e.getMessage()); + if(logger.isDebugEnabled()){ + logger.info("请求报错",e); + } + if(e instanceof BaseException){ + BaseException exception = (BaseException) e; + return R.fail(exception.getCode(),exception.getMessage()); + }else{ + return R.fail(e.getMessage()); + } + + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseEntity.java new file mode 100644 index 00000000..2fb7f8f7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/controller/BaseEntity.java @@ -0,0 +1,135 @@ +package com.jiuyv.sptcc.agile.dataservice.common.controller; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +/** + * Entity基类 + * + * @author admin + */ +public class BaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + + /** 创建者姓名 */ + private String createByName; + + /** 创建时间 */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** 创建者id(或账户) */ + private String createBy; + + /** 更新者姓名 */ + private String updateByName; + + /** 更新者id(或账户) */ + private String updateBy; + + /** 更新时间 */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** 搜索值 */ + private String searchValue; + + /** 备注 */ + private String remark; + + /** 请求参数 */ + private Map params; + + /** + * @return the createByName + */ + public String getCreateByName() { + return createByName; + } + + /** + * @param createByName the createByName to set + */ + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + /** + * @return the updateByName + */ + public String getUpdateByName() { + return updateByName; + } + + /** + * @param updateByName the updateByName to set + */ + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public String getSearchValue() { + return searchValue == null ? "" : searchValue; + } + + public void setSearchValue(String searchValue) { + this.searchValue = searchValue; + } + + public String getCreateBy() { + return createBy == null ? "" : createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getUpdateBy() { + return updateBy == null ? "" : updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getRemark() { + return remark == null ? "" : remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public Map getParams() { + if (params == null) { + params = new HashMap<>(); + } + return params; + } + + public void setParams(Map params) { + this.params = params; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/core/BaseTime.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/core/BaseTime.java new file mode 100644 index 00000000..3c322e33 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/core/BaseTime.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.common.core; + +import java.time.Instant; +import java.util.Date; + +/** + * 时间对象 + * @author zhouliang + * + */ +public class BaseTime implements java.io.Serializable { + + /** default Serial Version UID*/ + private static final long serialVersionUID = 1L; + + /** 当前时区 */ + private String timeZone ="+08:00"; + + /** 当前时区 YYYY-MM-DD */ + private String dateDay; + + /** 当前时区 YYYY-MM-DD HH:MM:SS */ + private String dateTime; + + /** 当前时区日期 */ + private Date date; + + /** UTC-0 带时区时间 */ + private Instant utcTime; + + /** UTC-0 带时区时间 */ + private String utcTimeStr; + + public String getTimeZone() { + return timeZone; + } + + public void setTimeZone(String timeZone) { + this.timeZone = timeZone; + } + + public String getDateDay() { + return dateDay; + } + + public void setDateDay(String dateDay) { + this.dateDay = dateDay; + } + + public String getDateTime() { + return dateTime; + } + + public void setDateTime(String dateTime) { + this.dateTime = dateTime; + } + + public Date getDate() { + return date; + } + + public void setDate(Date date) { + this.date = date; + } + + public Instant getUtcTime() { + return utcTime; + } + + public void setUtcTime(Instant utcTime) { + this.utcTime = utcTime; + } + + public String getUtcTimeStr() { + return utcTimeStr; + } + + public void setUtcTimeStr(String utcTimeStr) { + this.utcTimeStr = utcTimeStr; + } + + public String getYearMonth() { + return dateDay.substring(0,7); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/ReqBase.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/ReqBase.java new file mode 100644 index 00000000..30b71ca5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/ReqBase.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.common.dto; + + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +/** + * @ClassName : ReqBase + * @Description : 请求类基础报文 + * @Author : sky + * @Date: 2023-07-14 10:43 + */ +public class ReqBase implements Serializable { + + /** + * 秘钥版本号 + */ + private String keyVersion; + /** + * 流水号,方便问题追踪 + */ + @NotBlank(message = "流水号不能为空") + private String seriNo; + + /** + * 机构号 + */ + @NotBlank(message = "机构号不能为空") + private String orgCode; + /** + * 备用 + */ + private String subOrgCode; + + private String transCode; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date timestamp; + + + public String getKeyVersion() { + return keyVersion; + } + + public void setKeyVersion(String keyVersion) { + this.keyVersion = keyVersion; + } + + public String getSeriNo() { + return seriNo; + } + + public void setSeriNo(String seriNo) { + this.seriNo = seriNo; + } + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public Date getTimestamp() { + return timestamp; + } + + public void setTimestamp(Date timestamp) { + this.timestamp = timestamp; + } + + public String getTransCode() { + return transCode; + } + + public void setTransCode(String transCode) { + this.transCode = transCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/RespVo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/RespVo.java new file mode 100644 index 00000000..62a4e091 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/dto/RespVo.java @@ -0,0 +1,122 @@ +package com.jiuyv.sptcc.agile.dataservice.common.dto; + + +import java.io.Serializable; + +/** + * 返回包装对象 + * + * @author jiuyv + */ +public class RespVo extends ReqBase implements Serializable { + + /** + * 返回码 + */ + private String respCode; + + /** + * 返回说明 + */ + private String respDesc; + + /** + * 返回码 + */ + private String respSubCode; + + /** + * 返回说明 + */ + private String respSubDesc; + + /** + * 报文内容 + */ + private String body; + + /** + * 签名 + */ + private String sign; + + public RespVo() { + } + + public RespVo(String respCode, String respDesc) { + this.respCode = respCode; + this.respDesc = respDesc; + } + + /** + * @return the body + */ + public String getBody() { + return body; + } + + /** + * @param body the body to set + */ + public void setBody(String body) { + this.body = body; + } + + /** + * @return the sign + */ + public String getSign() { + return sign; + } + + /** + * @param sign the sign to set + */ + public void setSign(String sign) { + this.sign = sign; + } + + /** + * @return the respCode + */ + public String getRespCode() { + return respCode; + } + + /** + * @param respCode the respCode to set + */ + public void setRespCode(String respCode) { + this.respCode = respCode; + } + + /** + * @return the respDesc + */ + public String getRespDesc() { + return respDesc; + } + + /** + * @param respDesc the respDesc to set + */ + public void setRespDesc(String respDesc) { + this.respDesc = respDesc; + } + + public String getRespSubCode() { + return respSubCode; + } + + public void setRespSubCode(String respSubCode) { + this.respSubCode = respSubCode; + } + + public String getRespSubDesc() { + return respSubDesc; + } + + public void setRespSubDesc(String respSubDesc) { + this.respSubDesc = respSubDesc; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessStatus.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessStatus.java new file mode 100644 index 00000000..39a9e030 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessStatus.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * 操作状态 + * + * @author admin + */ +public enum BusinessStatus { + /** + * 成功 + */ + SUCCESS, + + /** + * 失败 + */ + FAIL, +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessType.java new file mode 100644 index 00000000..19fc65f2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/BusinessType.java @@ -0,0 +1,83 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * 业务操作类型 + * + * @author admin + */ +public enum BusinessType { + /** + * 其它 + */ + OTHER, + + /** + * 新增 + */ + INSERT, + + /** + * 修改 + */ + UPDATE, + + /** + * 删除 + */ + DELETE, + + /** + * 授权 + */ + GRANT, + + /** + * 导出 + */ + EXPORT, + + /** + * 导入 + */ + IMPORT, + + /** + * 强退 + */ + FORCE, + + /** + * 生成代码 + */ + GENCODE, + + /** + * 清空数据 + */ + CLEAN, + + /** + * 启用 + */ + ENABLE, + + /** + * 停用 + */ + DISABLE, + + /** + * 审核 + */ + REVIEW, + + /** + * 发布 + */ + RELEASE, + + /** + * 推送信息 + */ + SEND, +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/DeleteEnum.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/DeleteEnum.java new file mode 100644 index 00000000..fe546784 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/DeleteEnum.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * @ClassName : deleteEnum + * @Description : + * @Author : sky + * @Date: 2023-09-07 11:34 + */ +public enum DeleteEnum { + YES("1","删除"), + NO("0","正常"); + + private final String code; + + private final String msg; + + DeleteEnum(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public String getCode() { + return code; + } + + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/OperatorType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/OperatorType.java new file mode 100644 index 00000000..ce2df256 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/enums/OperatorType.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.enums; + +/** + * 操作人类别 + * + * @author admin + */ +public enum OperatorType { + /** + * 其它 + */ + OTHER, + + /** + * 后台用户 + */ + MANAGE, + + /** + * 手机端用户 + */ + MOBILE +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BaseException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BaseException.java new file mode 100644 index 00000000..8dc0b7a5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BaseException.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.IErrorCode; + +/** + * + * @Description: 基础异常 + * @author shu_k + * @date 2021年12月3日 下午5:55:56 + */ +public class BaseException extends RuntimeException{ + + /** + * + */ + private static final long serialVersionUID = 1L; + /** + * 错误码 + */ + private final String code; + + /** + * 错误消息 + */ + private final String defaultMessage; + + public BaseException(String defaultMessage) { + super(defaultMessage); + this.code = ResultCode.SYS_ERROR.getCode(); + this.defaultMessage = defaultMessage; + } + + public BaseException(String code, String defaultMessage) { + super(defaultMessage); + this.code = code; + this.defaultMessage = defaultMessage; + } + + public BaseException(IErrorCode iErrorCode) { + super(iErrorCode.getMessage()); + this.code = iErrorCode.getCode(); + this.defaultMessage = iErrorCode.getMessage(); + } + + public String getCode() { + return code; + } + public String getDefaultMessage() { + return defaultMessage; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BatchException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BatchException.java new file mode 100644 index 00000000..1fb874a2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BatchException.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 跑批异常 + * @author shu_k + * @date 2022年2月24日 下午4:41:03 + */ +public class BatchException extends BaseException{ + + private static final long serialVersionUID = 1L; + + + public BatchException(String msg) { + super(ResultCode.SQL_EXCEPTION.getCode(),msg); + } + + + public BatchException() { + super(ResultCode.SQL_EXCEPTION); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BusinessException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BusinessException.java new file mode 100644 index 00000000..cbab9790 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/BusinessException.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.apache.commons.lang3.StringUtils; + +/** + * @Description: 业务异常 + * @author shu_k + * @date 2022年1月10日 上午11:12:41 + */ +public class BusinessException extends BaseException{ + + private static final long serialVersionUID = 1L; + + public BusinessException(String msg) { + super(ResultCode.BUSINESS_ERROR.getCode(), StringUtils.isEmpty(msg)? ResultCode.BUSINESS_ERROR.getMessage():msg); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/FailedException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/FailedException.java new file mode 100644 index 00000000..1c35b863 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/FailedException.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.apache.commons.lang3.StringUtils; + +/** + * @ClassName : FailedException + * @Description : 下单失败 + * @Author : sky + * @Date: 2022-07-29 11:19 + */ +public class FailedException extends BaseException{ + + private static final long serialVersionUID = 1L; + + public FailedException(String defaultMessage) { + super(ResultCode.FAILED.getCode(), StringUtils.isEmpty(defaultMessage)? ResultCode.FAILED.getMessage():defaultMessage); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/IdempotentException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/IdempotentException.java new file mode 100644 index 00000000..5b4172f4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/IdempotentException.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @ClassName : IdempotentException + * @Description : + * @Author : sky + * @Date: 2023-09-07 13:38 + */ +public class IdempotentException extends BaseException{ + + + public IdempotentException(String defaultMessage) { + super(ResultCode.DUPLICATE_REQ_ID.getCode(),defaultMessage); + } + + public IdempotentException(){ + super(ResultCode.DUPLICATE_REQ_ID); + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ProcessingException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ProcessingException.java new file mode 100644 index 00000000..0b1b8cc2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ProcessingException.java @@ -0,0 +1,54 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @ClassName : ProcessingException + * @Description : 处理中异常 + * @Author : sky + * @Date: 2022-07-07 16:22 + */ +public class ProcessingException extends RuntimeException { + /** + * + */ + private static final long serialVersionUID = 1L; + /** + * 错误码 + */ + private final String code; + /** + * 错误消息 + */ + private final String defaultMessage; + + /** + * 返回数据 + */ + private final Object data; + + public ProcessingException(String defaultMessage, Object data) { + this.defaultMessage = defaultMessage; + this.data = data; + this.code = ResultCode.PROCESS.getCode(); + } + + public ProcessingException(Object data) { + this.data = data; + this.code = ResultCode.PROCESS.getCode(); + this.defaultMessage = ResultCode.PROCESS.getMessage(); + } + + public String getCode() { + return code; + } + + public String getDefaultMessage() { + return defaultMessage; + } + + public Object getData() { + return data; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ServiceException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ServiceException.java new file mode 100644 index 00000000..e5778d94 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ServiceException.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * 业务异常 + * + * @author admin + */ +public final class ServiceException extends BaseException { + + private static final long serialVersionUID = 1L; + + + public ServiceException(String msg) { + super(ResultCode.API_REGISTER_CHECK_ERROR.getCode(),msg); + } + + + public ServiceException() { + super(ResultCode.API_REGISTER_CHECK_ERROR); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SqlException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SqlException.java new file mode 100644 index 00000000..40d150ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SqlException.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 乐观锁异常处理 + * @author shu_k + * @date 2022年2月23日 上午10:59:27 + */ +public class SqlException extends BaseException{ + + private static final long serialVersionUID = 1L; + + + public SqlException(String msg) { + super(ResultCode.SQL_EXCEPTION.getCode(),msg); + } + + + public SqlException() { + super(ResultCode.SQL_EXCEPTION); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SystemException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SystemException.java new file mode 100644 index 00000000..cb14c764 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/SystemException.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 系统异常 + * @author shu_k + * @date 2022年1月10日 上午11:12:41 + */ +public class SystemException extends BaseException{ + + private static final long serialVersionUID = 1L; + + public SystemException(String msg) { + super(ResultCode.SYS_ERROR.getCode(),msg); + } + + + public SystemException() { + super(ResultCode.SYS_ERROR); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ValidException.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ValidException.java new file mode 100644 index 00000000..89202b99 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/common/exception/ValidException.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.dataservice.common.exception; + +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; + +/** + * @Description: 校验错误 + * @author shu_k + * @date 2022年1月5日 下午4:06:51 + */ +public class ValidException extends BaseException{ + + private static final long serialVersionUID = 1L; + public ValidException(String defaultMessage) { + super(ResultCode.VALIDATE_FAILED.getCode(), defaultMessage); + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ActuatorSecurityConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ActuatorSecurityConfig.java new file mode 100644 index 00000000..1e78694e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ActuatorSecurityConfig.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.env.Environment; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; + +@Configuration +@EnableWebSecurity +public class ActuatorSecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + Environment env; + + @Override + protected void configure(HttpSecurity security) throws Exception { + + String contextPath = env.getProperty("management.endpoints.web.base-path"); + if(StringUtils.isEmpty(contextPath)) { + contextPath = "/actuator"; + } + security.csrf().disable(); + security.authorizeRequests() + .antMatchers("/**"+contextPath+"/serviceregistry","/**"+contextPath+"/refresh") + .access("hasIpAddress(\"127.0.0.1\")") + .antMatchers("/**"+contextPath+"/**") + .authenticated() + .anyRequest() + .permitAll() + .and() + .httpBasic(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ApiMappingConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ApiMappingConfig.java new file mode 100644 index 00000000..62513688 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/ApiMappingConfig.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.handler.MappingHandlerMapping; +import com.jiuyv.sptcc.agile.dataservice.handler.RequestHandler; +import com.jiuyv.sptcc.agile.dataservice.handler.RequestInterceptor; +import com.jiuyv.sptcc.agile.dataservice.service.api.impl.ApiMappingEngine; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; + + +/** + * 敏捷api初始化bean + */ +@Configuration +public class ApiMappingConfig { + + @Bean + public MappingHandlerMapping mappingHandlerMapping(RequestMappingHandlerMapping requestMappingHandlerMapping, + ApiMappingEngine apiMappingEngine, + ObjectMapper objectMapper, + AsyncTask asyncTask) { + MappingHandlerMapping mappingHandlerMapping = new MappingHandlerMapping(); + mappingHandlerMapping.setHandler(requestHandler(apiMappingEngine, objectMapper, asyncTask)); + mappingHandlerMapping.setRequestMappingHandlerMapping(requestMappingHandlerMapping); + return mappingHandlerMapping; + } + + @Bean + public RequestHandler requestHandler(ApiMappingEngine apiMappingEngine, ObjectMapper objectMapper, AsyncTask asyncTask) { + RequestHandler handler = new RequestHandler(); + handler.setApiMappingEngine(apiMappingEngine); + handler.setObjectMapper(objectMapper); + handler.setRequestInterceptor(new RequestInterceptor()); + handler.setAsyncTask(asyncTask); + return handler; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/CacheConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/CacheConfig.java new file mode 100644 index 00000000..97fd6336 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/CacheConfig.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.github.benmanes.caffeine.cache.Caffeine; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import org.springframework.cache.CacheManager; +import org.springframework.cache.caffeine.CaffeineCache; +import org.springframework.cache.interceptor.KeyGenerator; +import org.springframework.cache.support.SimpleCacheManager; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +import java.lang.reflect.Method; +import java.time.Duration; +import java.util.ArrayList; +import java.util.StringJoiner; + +/** + * Caffeine缓存 + * + * @author yulei + **/ +@Configuration +public class CacheConfig { + + @Bean("caffeineCacheManager") + public CacheManager cacheManager() { + SimpleCacheManager cacheManager = new SimpleCacheManager(); + ArrayList caffeineCaches = new ArrayList<>(); + for (CacheEnum cacheEnum : CacheEnum.values()) { + caffeineCaches.add(new CaffeineCache(cacheEnum.name(), + Caffeine.newBuilder().expireAfterWrite(Duration.ofSeconds(cacheEnum.second)) + .initialCapacity(cacheEnum.initSize) + .maximumSize(cacheEnum.maxSize).build())); + } + cacheManager.setCaches(caffeineCaches); + + return cacheManager; + } + + @Bean + public CustomKeyGenerator customKeyGenerator() { + return new CustomKeyGenerator(); + } + + public enum CacheEnum { + /** + * 第一个cache + **/ + FIRST_CACHE(300, 20000, 300), + /** + * 第二个cache + **/ + SECOND_CACHE(60, 10000, 200); + + private final int second; + private final long maxSize; + private final int initSize; + + CacheEnum(int second, long maxSize, int initSize) { + this.second = second; + this.maxSize = maxSize; + this.initSize = initSize; + } + + } + + public class CustomKeyGenerator implements KeyGenerator { + private static final String prefix = "CACHEABLE:"; + + @Override + public Object generate(Object o, Method method, Object... objects) { + StringJoiner joiner = new StringJoiner(":", prefix, ""); + //类名 + joiner.add(o.getClass().getSimpleName()); + //方法名 + joiner.add(method.getName()); + //方法参数 + for (Object param : objects) { + joiner.add(JacksonUtil.obj2String(param)); + } + return joiner.toString(); + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/JacksonConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/JacksonConfig.java new file mode 100644 index 00000000..0ba8a302 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/JacksonConfig.java @@ -0,0 +1,76 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.fasterxml.jackson.annotation.JsonAutoDetect; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.PropertyAccessor; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.SerializationFeature; +import com.fasterxml.jackson.databind.module.SimpleModule; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; +import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer; +import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer; +import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer; +import com.fasterxml.jackson.module.paramnames.ParameterNamesModule; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; +import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; + +import java.math.BigDecimal; +import java.math.BigInteger; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.LocalTime; +import java.time.format.DateTimeFormatter; +import java.util.TimeZone; + +@Configuration +public class JacksonConfig { + + @Bean + @Primary + @ConditionalOnMissingBean(ObjectMapper.class) + public ObjectMapper jacksonObjectMapper(Jackson2ObjectMapperBuilder builder){ + builder.simpleDateFormat(DateUtils.YYYY_MM_DD_HH_MM_SS); + ObjectMapper objectMapper = builder.createXmlMapper(false) + .featuresToDisable(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS) + .featuresToDisable(DeserializationFeature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE) + .timeZone(TimeZone.getTimeZone("Asia/Shanghai")) + .build(); + // null数据不返回 + objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); + objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); + // 反序列化时候遇到不匹配的属性并不抛出异常 + objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + // 序列化时候遇到空对象不抛出异常 + objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + // 反序列化的时候如果是无效子类型,不抛出异常 + objectMapper.configure(DeserializationFeature.FAIL_ON_INVALID_SUBTYPE, false); + // 不使用默认的dateTime进行序列化, + objectMapper.configure(SerializationFeature.WRITE_DATE_KEYS_AS_TIMESTAMPS, false); + // 数据精度问题 + SimpleModule simpleModule = new SimpleModule() + .addSerializer(Long.class, ToStringSerializer.instance) + .addSerializer(Long.TYPE, ToStringSerializer.instance) + .addSerializer(BigInteger.class, ToStringSerializer.instance) + .addSerializer(BigDecimal.class, ToStringSerializer.instance); + objectMapper.registerModule(simpleModule); + + JavaTimeModule javaTimeModule = new JavaTimeModule(); + javaTimeModule.addSerializer(LocalDateTime.class,new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD_HH_MM_SS))); + javaTimeModule.addSerializer(LocalDate.class,new LocalDateSerializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD))); + javaTimeModule.addSerializer(LocalTime.class,new LocalTimeSerializer(DateTimeFormatter.ofPattern(DateUtils.HH_MM_SS))); + javaTimeModule.addDeserializer(LocalDateTime.class,new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD_HH_MM_SS))); + javaTimeModule.addDeserializer(LocalDate.class,new LocalDateDeserializer(DateTimeFormatter.ofPattern(DateUtils.YYYY_MM_DD))); + javaTimeModule.addDeserializer(LocalTime.class,new LocalTimeDeserializer(DateTimeFormatter.ofPattern(DateUtils.HH_MM_SS))); + objectMapper.registerModule(javaTimeModule).registerModule(new ParameterNamesModule()); + return objectMapper; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/LogAspect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/LogAspect.java new file mode 100644 index 00000000..6e3f17f5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/LogAspect.java @@ -0,0 +1,140 @@ +package com.jiuyv.sptcc.agile.dataservice.config; + +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.annotation.LogStatics; +import com.jiuyv.sptcc.agile.dataservice.common.constants.ApiConstant; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.aspectj.lang.reflect.MethodSignature; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; +import org.springframework.web.multipart.MultipartFile; + +import javax.annotation.Resource; +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; +import java.lang.reflect.Method; +import java.util.Enumeration; + +/** + * @Description: 请求日志打印和记录 + * @author shu_k + * @date 2022年4月5日 下午10:26:23 + */ +@Aspect +@Component +public class LogAspect { + + private static final Logger LOGGER = LoggerFactory.getLogger(LogAspect.class); + + @Resource + private AsyncTask asyncTask; + + @Pointcut("(execution(public * com.jiuyv.sptcc.agile.dataservice.controller..*.*(..)))") + public void controllerPointcut() { + // 切点 + } + + @Around("controllerPointcut()") + public Object doAround(ProceedingJoinPoint proceedingJoinPoint) throws Throwable { + + long startTime = System.currentTimeMillis(); + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if (attributes == null) { + return null; + } + HttpServletRequest request = attributes.getRequest(); + String requestUri = request.getRequestURI();// 请求的Uri + String ip = request.getRemoteAddr(); + String requestMethod = request.getMethod(); + Object[] arguments = getArguments(proceedingJoinPoint.getArgs()); + LOGGER.info("请求地址: {} {}", requestUri, requestMethod); + LOGGER.info("远程地址: {}", ip); + String traceId = request.getHeader("traceId"); + String spanId = request.getHeader("spanId"); + LOGGER.info("traceId: {}, spanId :{}", traceId,spanId); + this.printRequestJson(arguments); + Object result; + try { + result = proceedingJoinPoint.proceed(); + this.printRes(result); + staticsLog(request,proceedingJoinPoint,true); + } catch (Exception e) { + if(LOGGER.isDebugEnabled()){ + LOGGER.error(e.getMessage(),e); + }else { + LOGGER.error(e.getMessage()); + } + staticsLog(request,proceedingJoinPoint,false); + throw e; + } + LOGGER.info("------------- 结束 耗时:{} ms -------------", System.currentTimeMillis() - startTime); + return result; + } + + private void staticsLog(HttpServletRequest request, ProceedingJoinPoint proceedingJoinPoint, Boolean isSuccess){ + + MethodSignature signature = (MethodSignature) proceedingJoinPoint.getSignature(); + Method method = signature.getMethod(); + LogStatics annotation = method.getAnnotation(LogStatics.class); + if(annotation != null){ + String apiCode = request.getHeader(ApiConstant.HEAD_API_CODE); + String orgCode = request.getHeader(ApiConstant.HEAR_ORG_CODE); + asyncTask.doStatics(apiCode,orgCode,isSuccess); + } + + } + private Object[] getArguments(Object[] args) { + Object[] arguments = new Object[args.length]; + for (int i = 0; i < args.length; i++) { + if (args[i] instanceof ServletRequest || args[i] instanceof ServletResponse + || args[i] instanceof MultipartFile) { + continue; + } + arguments[i] = args[i]; + } + return arguments; + } + + private void printRequestJson(Object[] arguments) { + String request = JacksonUtil.parseArray(arguments); + LOGGER.info("请求参数: {}", request); + } + + private void printRes(Object obj) { + String result = null; + if (null == obj || obj instanceof ServletResponse) { + result = "****stream******"; + } + else if (obj instanceof CharSequence) { + result = (String) obj; + } + else if (obj instanceof Boolean) { + result = obj.toString(); + } + //分页查询结果不打印 + else if(obj instanceof R){ + result = JacksonUtil.obj2String(obj); + //分页不打印具体列表信息 + if(result.contains("rows")){ + int pageBegin = result.indexOf("["); + int pageEnd = result.lastIndexOf("]"); + String substring = result.substring(pageBegin+1, pageEnd); + LOGGER.info("substring: {}", substring); + result = result.replace(substring,""); + } + }else{ + result = JacksonUtil.obj2String(obj); + } + + LOGGER.info("返回结果: {}", result); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncConfig.java new file mode 100644 index 00000000..40064d5c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncConfig.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.dataservice.config.async; + +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.scheduling.annotation.EnableAsync; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; + +import java.util.concurrent.Executor; +import java.util.concurrent.ThreadPoolExecutor; + +@EnableAsync +@Configuration +public class AsyncConfig { + + @Bean("logExecutor") + public Executor logExecutor() { + ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); + executor.setCorePoolSize(2); + executor.setMaxPoolSize(10); + executor.setQueueCapacity(100); + executor.setKeepAliveSeconds(30); + executor.setThreadNamePrefix("agile-async-service-"); + executor.setWaitForTasksToCompleteOnShutdown(true); + executor.setAwaitTerminationSeconds(60); + executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy()); + executor.initialize(); + return executor; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncTask.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncTask.java new file mode 100644 index 00000000..b25e7a1b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/async/AsyncTask.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.config.async; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.service.api.ApiLogService; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgStatisticsService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Async; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; + +/** + * 异步处理 + */ +@Component +public class AsyncTask { + + @Resource + private ApiLogService apiLogService; + + @Resource + private IOrgStatisticsService orgStatisticsService; + + @Async("logExecutor") + public void doTask(ApiLogEntity apiLogEntity) { + apiLogService.saveApiLog(apiLogEntity); + } + + + @Async("logExecutor") + public void doStatics(String orgNo, String apiCode,Boolean isuceess) { + orgStatisticsService.insertOrgStatistics(orgNo, apiCode ,isuceess); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/feign/FeignConfiguration.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/feign/FeignConfiguration.java new file mode 100644 index 00000000..769aa83d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/feign/FeignConfiguration.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.config.feign; + +import com.jiuyv.sptcc.agile.dataservice.utils.data.MD5; +import feign.RequestInterceptor; +import feign.RequestTemplate; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class FeignConfiguration implements RequestInterceptor { + + @Value("${spring.application.name}") + private String name; + + @Override + public void apply(RequestTemplate template) { + template.header("token", name.concat(":").concat(MD5.md5PlusSalt(name))); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpConfig.java new file mode 100644 index 00000000..9026eb7a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpConfig.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + + +import org.springframework.boot.context.properties.EnableConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +@Configuration +@EnableConfigurationProperties(SftpProperties.class) +public class SftpConfig { + // 工厂 + @Bean + public SftpFactory sftpFactory(SftpProperties properties) { + return new SftpFactory(properties); + } + + // 连接池 + @Bean + public SftpPool sftpPool(SftpFactory sftpFactory) { + return new SftpPool(sftpFactory); + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpFactory.java new file mode 100644 index 00000000..aeea69e6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpFactory.java @@ -0,0 +1,69 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + +import com.jcraft.jsch.ChannelSftp; +import com.jcraft.jsch.JSch; +import com.jcraft.jsch.JSchException; +import com.jcraft.jsch.Session; +import org.apache.commons.pool2.BasePooledObjectFactory; +import org.apache.commons.pool2.DestroyMode; +import org.apache.commons.pool2.PooledObject; +import org.apache.commons.pool2.impl.DefaultPooledObject; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.Properties; +/** + * @ClassName : SftpFactory + * @Description : + * @Author : sky + * @Date: 2023-09-15 17:26 + */ +public class SftpFactory extends BasePooledObjectFactory { + + private static final Logger log = LoggerFactory.getLogger(SftpFactory.class); + + private SftpProperties properties; + + public SftpFactory(SftpProperties properties) { + this.properties = properties; + } + + public SftpProperties getProperties() { + return properties; + } + + @Override + public ChannelSftp create() throws Exception { + try { + log.info("初始化sftp{},{}",properties.getHost(),properties.getPort()); + JSch jsch = new JSch(); + Session sshSession = jsch.getSession(properties.getUsername(), properties.getHost(), properties.getPort()); + sshSession.setPassword(properties.getPassword()); + Properties sshConfig = new Properties(); + sshConfig.put("StrictHostKeyChecking", properties.getStrictHostKeyChecking()==null?"no":properties.getStrictHostKeyChecking()); + sshConfig.put("PreferredAuthentications", "password"); + sshConfig.put("X11Forwarding", "no"); + sshSession.setConfig(sshConfig); + sshSession.connect(properties.getSessionConnectTimeout()); + ChannelSftp channel = (ChannelSftp) sshSession.openChannel("sftp"); + channel.connect(properties.getChannelConnectTimeout()); + channel.cd(properties.getWorkPaths()); + log.info("初始化sftp完成"); + return channel; + } catch (JSchException e) { + log.error("连接sfpt失败:"+e.getMessage()); + return null; + } + } + + @Override + public PooledObject wrap(ChannelSftp channelSftp) { + return new DefaultPooledObject<>(channelSftp); + } + + @Override + public void destroyObject(PooledObject p, DestroyMode destroyMode) throws Exception { + ChannelSftp channelSftp = p.getObject(); + channelSftp.disconnect(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpPool.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpPool.java new file mode 100644 index 00000000..433e1850 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpPool.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + +import com.jcraft.jsch.ChannelSftp; +import org.apache.commons.pool2.impl.GenericObjectPool; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class SftpPool extends GenericObjectPool{ + + private static final Logger log = LoggerFactory.getLogger(SftpPool.class); + + public SftpPool(SftpFactory factory) { + super(factory,factory.getProperties().getPool()); + } + + + + /** + * 获取一个sftp连接对象 + * @return sftp连接对象 + */ + public ChannelSftp borrowObject() throws Exception { + return super.borrowObject(); + } + + /** + * 归还一个sftp连接对象 + * @param channelSftp sftp连接对象 + */ + public void returnObject(ChannelSftp channelSftp) { + if (channelSftp!=null) { + super.returnObject(channelSftp); + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpProperties.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpProperties.java new file mode 100644 index 00000000..14080580 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/config/sftp/SftpProperties.java @@ -0,0 +1,182 @@ +package com.jiuyv.sptcc.agile.dataservice.config.sftp; + +import com.jcraft.jsch.ChannelSftp; +import org.apache.commons.pool2.impl.GenericObjectPoolConfig; +import org.springframework.boot.context.properties.ConfigurationProperties; + + +@ConfigurationProperties(prefix = "sftp") +public class SftpProperties { + private String host; + private int port = 22; + private String username; + private String password; + /*** + * 工作路劲 + */ + private String workPaths; + + /** + * 忽略主机密钥检查 + */ + private String strictHostKeyChecking; + /** + * sesion连接超时 + */ + private Integer sessionConnectTimeout; + + /** + * channel连接超时 + */ + private Integer channelConnectTimeout; + + + private Pool pool = new Pool(); + + public static class Pool extends GenericObjectPoolConfig { + /** + * 连接池最大实例数 + */ + private int maxTotal = 10; + /** + * 连接池最大空闲数 + */ + private int maxIdle = 8; + /** + * 连接池最小空闲数 + */ + private int minIdle = 1; + + /** + * 控制获取不到连接时超时时间,避免无限等待 + */ + private long maxWaitMillis = 60000; + + private boolean jmxEnabled = false; + + public Pool() { + super(); + } + + @Override + public int getMaxTotal() { + return maxTotal; + } + + @Override + public void setMaxTotal(int maxTotal) { + this.maxTotal = maxTotal; + } + + @Override + public int getMaxIdle() { + return maxIdle; + } + + @Override + public void setMaxIdle(int maxIdle) { + this.maxIdle = maxIdle; + } + + @Override + public int getMinIdle() { + return minIdle; + } + + @Override + public void setMinIdle(int minIdle) { + this.minIdle = minIdle; + } + + @Override + public long getMaxWaitMillis() { + return maxWaitMillis; + } + + @Override + public void setMaxWaitMillis(long maxWaitMillis) { + this.maxWaitMillis = maxWaitMillis; + } + + @Override + public boolean getJmxEnabled() { + return jmxEnabled; + } + + public void setJmxEnabled(Boolean jmxEnabled) { + this.jmxEnabled = jmxEnabled; + } + } + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public int getPort() { + return port; + } + + public void setPort(int port) { + this.port = port; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public String getWorkPaths() { + return workPaths; + } + + public void setWorkPaths(String workPaths) { + this.workPaths = workPaths; + } + + public String getStrictHostKeyChecking() { + return strictHostKeyChecking; + } + + public void setStrictHostKeyChecking(String strictHostKeyChecking) { + this.strictHostKeyChecking = strictHostKeyChecking; + } + + public Integer getSessionConnectTimeout() { + return sessionConnectTimeout; + } + + public void setSessionConnectTimeout(Integer sessionConnectTimeout) { + this.sessionConnectTimeout = sessionConnectTimeout; + } + + public Integer getChannelConnectTimeout() { + return channelConnectTimeout; + } + + public void setChannelConnectTimeout(Integer channelConnectTimeout) { + this.channelConnectTimeout = channelConnectTimeout; + } + + public Pool getPool() { + return pool; + } + + public void setPool(Pool pool) { + this.pool = pool; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java new file mode 100644 index 00000000..3355ab0c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java @@ -0,0 +1,353 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.api; + + +import com.aspose.words.Document; +import com.aspose.words.SaveFormat; +import com.aspose.words.SaveOptions; +import com.fasterxml.jackson.core.type.TypeReference; +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.console.DataApiFeign; +import com.jiuyv.sptcc.agile.dataservice.api.portal.DataApiFeignApi; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.common.exception.ServiceException; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.RateLimit; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.*; +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import com.jiuyv.sptcc.agile.dataservice.utils.*; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import feign.Response; +import net.sf.jsqlparser.schema.Table; +import net.sf.jsqlparser.statement.select.Select; +import net.sf.jsqlparser.util.SelectUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.CollectionUtils; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.servlet.http.HttpServletResponse; +import java.io.OutputStream; +import java.net.URLEncoder; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 数据API信息表 前端控制器 + */ +@RestController +public class ApiController extends BaseController implements DataApiFeign, DataApiFeignApi { + + private static final Logger log = LoggerFactory.getLogger(ApiController.class); + + private final AgileApiService apiService; + + public ApiController(AgileApiService apiService) { + this.apiService = apiService; + } + + @Override + public R getApiPrefixPath() { + String prefix = apiService.getApiPrefixPath(); + return R.ok(prefix); + } + + /** + * 通过ID查询信息 + * + * @param id + * @return + */ + @Override + public R getDataApiById(Long id) { + ApiEntity apiEntity = apiService.getDataApiById(id); + ApiResponse vo = entityToVo(apiEntity); + return R.ok(vo); + } + + /** + * 查询列表信息 + * + * @return + */ + @Override + public R> getDataApiList(Long sourceId) { + ApiEntity api = new ApiEntity(); + api.setSourceId(sourceId); + List list = apiService.queryByList(api); + List collect = new ArrayList<>(); + if (!CollectionUtils.isEmpty(list)) { + list.forEach(dataApiEntity -> { + ApiResponse vo = entityToVo(dataApiEntity); + collect.add(vo); + }); + } + return R.ok(collect); + } + + /** + * 分页查询信息 + * + * @return + */ + @Override + public R> getDataApiPage(@RequestBody @Validated ApiPageRequest apiQuery) { + ApiEntity entity = new ApiEntity(); + entity.setApiName(apiQuery.getApiName()); + entity.setStatus(apiQuery.getStatus()); + entity.setApiType(apiQuery.getApiType()); + entity.setSourceId(apiQuery.getSourceId()==null?null:Long.valueOf(apiQuery.getSourceId())); + startPage(apiQuery,"updateTime"); + List list = apiService.queryByList(entity); + PageInfo pageInfo = new PageInfo<>(list); + List resList = new ArrayList<>(); + for (ApiEntity apiEntity : list) { + ApiResponse apiVo = entityToVo(apiEntity); + resList.add(apiVo); + } + PageResult p = new PageResult<>(pageInfo.getPageNum(),pageInfo.getPageSize(),pageInfo.getTotal(),resList); + return R.ok(p); + } + + /** + * 添加 + * + * @param dataApi + * @return + */ + @Override + public R saveDataApi(@Validated @RequestBody ApiAddRequest dataApi) { + ApiEntity entity = dtoToEntity(dataApi); + entity.setCreateBy(dataApi.getUserName()); + entity.setApiType(DataApiEnum.API_TYPE.AGILE.getCode()); + apiService.saveDataApi(entity); + return R.ok(null); + } + + /** + * 修改 + * + * @param dataApi + * @return + */ + @Override + public R updateDataApi(@Validated @RequestBody ApiUpdateRequest dataApi) { + ApiEntity entity = dtoToEntity(dataApi); + entity.setApiId(dataApi.getApiId()); + entity.setUpdateBy(dataApi.getUserName()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setParams(checkParams(dataApi.getRecToken(), dataApi.getVersionNum())); + apiService.updateDataApi(entity); + return R.ok(null); + } + + /** + * 删除 + * + * @param request + * @return + */ + @Override + public R deleteDataApiById(@RequestBody @Validated ApiDelRequest request) { + apiService.deleteDataApiById(request); + return R.ok(null); + } + + /** + * 拷贝接口 + * + * @param request + * @return + */ + @Override + public R copyDataApi(@Validated @RequestBody ApiCopyRequest request) { + apiService.copyDataApi(request.getApiId(), request.getUserName()); + return R.ok(null); + } + + /** + * 注册接口 + * + * @param request + * @return + */ + @Override + public R registerDataApi(@Validated @RequestBody ApiStatusRequest request) { + apiService.registerDataApi(request); + return R.ok(); + } + + + /** + * 发布接口 + * + * @param dto + * @return + */ + @Override + public R releaseDataApi(@Validated @RequestBody ApiStatusRequest dto) { + apiService.releaseDataApi(dto); + return R.ok(); + } + + /** + * 注销接口 + * + * @param dto + * @return + */ + @Override + public R cancelDataApi(@Validated @RequestBody ApiStatusRequest dto) { + apiService.cancelDataApi(dto); + return R.ok(); + } + + /** + * 下架接口 + * + * @param dto + * @return + */ + @Override + public R downDataApi(@Validated @RequestBody ApiStatusRequest dto) { + apiService.downDataApi(dto); + return R.ok(); + } + + /** + * 获取api树状结构数据 + * + * @return + */ + @Override + public R> apiTree() { + List treeSelectList = apiService.buildApiTree(new ApiEntity()); + return R.ok(treeSelectList); + } + + @Override + public Response wordDataApi(Long id) throws Exception { + HttpServletResponse response = ServletUtils.getResponse(); + ApiEntity apiEntity = apiService.getDataApiById(id); + if(apiEntity == null){ + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + String apiName = apiEntity.getApiName(); + if(response != null){ + // 清空response + response.reset(); + // 设置response的Header + response.setContentType("application/octet-stream;charset=utf-8"); + // 设置content-disposition响应头控制浏览器以下载的形式打开文件 + response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("接口文档-"+apiName+".docx", "utf-8")); + Document doc = apiService.wordDataApi(id); + OutputStream out = response.getOutputStream(); + doc.save(out, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + out.flush(); + out.close(); + } + return null; + } + + private ApiEntity dtoToEntity(ApiDtoBase dataApi) { + ApiEntity entity = new ApiEntity(); + entity.setApiName(dataApi.getApiName()); + entity.setApiVersion(dataApi.getApiVersion()); + //构建完整的请求地址 + String requestPath = AddressUtil.getRequestPath(dataApi.getApiVersion(), dataApi.getApiUrl()); + entity.setApiUrl(requestPath); + entity.setReqMethod(dataApi.getReqMethod()); + entity.setResType(dataApi.getResType()); + entity.setDeny(dataApi.getDeny()); + entity.setApiCode(dataApi.getApiCode()); + entity.setApiType(dataApi.getApiType()); + entity.setSourceId(dataApi.getExecuteConfig().getSourceId()); + String configType = dataApi.getExecuteConfig().getConfigType(); + if (DataApiEnum.CONFIG_TYPE.FORM.getCode().equals(configType)) { + try { + Table table = new Table(dataApi.getExecuteConfig().getTableName()); + String[] resParams = dataApi.getResParams().stream().map(ResParam::getFieldName).toArray(String[]::new); + Select select = SelectUtils.buildSelectFromTableAndExpressions(table, resParams); + String sqlText = SqlBuilderUtil.getInstance().buildHql(select.toString(), dataApi.getReqParams()); + dataApi.getExecuteConfig().setSqlText(sqlText); + } catch (Exception e) { + log.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new ServiceException("SQL语法有问题,解析出错"); + } + } + entity.setRateLimit(JacksonUtil.obj2String(dataApi.getRateLimit())); + entity.setExecuteConfig(JacksonUtil.obj2String(dataApi.getExecuteConfig())); + entity.setReqParams(JacksonUtil.obj2String(dataApi.getReqParams())); + entity.setResParams(JacksonUtil.obj2String(dataApi.getResParams())); + entity.setStatus(dataApi.getStatus()); + entity.setRemark(dataApi.getRemark()); + return entity; + } + + private ApiResponse entityToVo(ApiEntity entity) { + ApiResponse vo = new ApiResponse(); + vo.setApiId(entity.getApiId()); + vo.setStatus(entity.getStatus()); + vo.setCreateTime(entity.getCreateTime()); + vo.setRemark(entity.getRemark()); + vo.setApiName(entity.getApiName()); + vo.setApiVersion(entity.getApiVersion()); + vo.setApiUrl(AddressUtil.getApiUrl(entity.getApiUrl(),entity.getApiVersion())); + vo.setReqMethod(entity.getReqMethod()); + vo.setDeny(entity.getDeny()); + vo.setResType(entity.getResType()); + vo.setRateLimit(JacksonUtil.string2Obj(entity.getRateLimit(), RateLimit.class)); + vo.setExecuteConfig(JacksonUtil.string2Obj(entity.getExecuteConfig(), ExecuteConfig.class)); + vo.setReqParams(JacksonUtil.string2Obj(entity.getReqParams(), new TypeReference>() {})); + vo.setResParams(JacksonUtil.string2Obj(entity.getResParams(), new TypeReference>() {})); + vo.setRecToken(entity.getRecToken()); + vo.setApiCode(entity.getApiCode()); + vo.setVersionNum(entity.getVersion()); + vo.setCreateBy(entity.getCreateBy()); + vo.setUpdateBy(entity.getUpdateBy()); + vo.setUpdateTime(entity.getUpdateTime()); + return vo; + } + + /** + * 查询用户接口列表 + * + * @param request + * @return + */ + @Override + public R> getUserApiList(@RequestBody @Validated ApiUserRequest request) { + startPage(request); + List list = apiService.getUserApiList(request); + PageInfo page = new PageInfo<>(list); + List collect = page.getList().stream().map(x -> { + DataApiResponse vo = new DataApiResponse(); + vo.setOrgNo(x.getOrgNo()); + vo.setOrgName(x.getOrgName()); + vo.setApiId(x.getApiId()); + vo.setApiName(x.getApiName()); + vo.setRemark(x.getRemark()); + vo.setUpdateTime(x.getUpdateTime()); + vo.setStartTime(x.getStartTime()); + vo.setEndTime(x.getEndTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(page.getTotal(),collect)); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiLogController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiLogController.java new file mode 100644 index 00000000..399d4675 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiLogController.java @@ -0,0 +1,84 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.api; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.console.ApiLogApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiLogRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiLogResponse; +import com.jiuyv.sptcc.agile.dataservice.service.api.ApiLogService; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; + +/** + * api调用日志信息表 前端控制器 + */ +@RestController +public class ApiLogController extends BaseController implements ApiLogApi { + + @Autowired + private ApiLogService IApiLogService; + + /** + * 通过ID查询信息 + * + * @param id + * @return + */ + @Override + public R detail( Long id) { + ApiLogEntity apiLogEntity = IApiLogService.getApiLogById(id); + ApiLogResponse apiLogVo = entityToVo(apiLogEntity); + return R.ok(apiLogVo); + } + + /** + * 分页查询信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated ApiLogRequest request) { + ApiLogEntity entity = new ApiLogEntity(); + entity.setApiName(request.getApiName()); + startPage(request,"callerDate"); + List list = IApiLogService.queryByList(entity); + PageInfo pageInfo = new PageInfo<>(list); + List resList = new ArrayList<>(); + for (ApiLogEntity apiLogEntity : list) { + ApiLogResponse apiLogVo = entityToVo(apiLogEntity); + resList.add(apiLogVo); + } + PageResult tPageResult = new PageResult<>(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), resList); + return R.ok(tPageResult); + } + + private ApiLogResponse entityToVo(ApiLogEntity entity) { + if(entity == null){ + return null; + } + ApiLogResponse vo = new ApiLogResponse(); + vo.setApiLogId(entity.getApiLogId()); + vo.setApiId(entity.getApiId()); + vo.setApiName(entity.getApiName()); + vo.setCallerId(entity.getCallerId()); + vo.setCallerIp(entity.getCallerIp()); + vo.setCallerUrl(entity.getCallerUrl()); + vo.setCallerSize(entity.getCallerSize()); + vo.setCallerParams(entity.getCallerParams()); + vo.setCallerDate(entity.getCallerDate()); + vo.setTime(entity.getTime()); + vo.setMsg(entity.getMsg()); + vo.setStatus(entity.getStatus()); + return vo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java new file mode 100644 index 00000000..e9ae5ca2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java @@ -0,0 +1,73 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.batch; + +import com.jiuyv.sptcc.agile.dataservice.api.batch.BatchApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dto.request.batch.DateVo; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IPosMatchRateService; +import com.jiuyv.sptcc.agile.dataservice.service.task.IOrgTask; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.apache.commons.lang3.StringUtils; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; + +@RestController +public class BatchController extends BaseController implements BatchApi { + + @Resource + private IOrgTask orgTask; + + @Resource + private IPosMatchRateService posMatchRateService; + + + @Override + public R expire(String date) { + String dt = date; + if(StringUtils.isBlank(dt)){ + dt = DateUtils.getDate(); + } + Date excuteDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD, dt); + Boolean expire = orgTask.expire(excuteDate); + if(Boolean.TRUE.equals(expire)){ + return R.ok(true); + }else { + return R.fail(false); + } + + } + + @Override + public R down(String date) { + Date excuteDate = null; + if(StringUtils.isNotBlank(date)){ + excuteDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD, date); + }else{ + excuteDate = DateUtils.addDays(DateUtils.date(),-1); + } + Boolean down = orgTask.down(excuteDate); + if(Boolean.TRUE.equals(down)){ + return R.ok(true); + }else { + return R.fail(false); + } + } + + + @Override + public R posCheck(@RequestBody DateVo dateVo) { + //执行日期 + String date = dateVo.getDate(); + if(StringUtils.isBlank(date)){ + date = DateUtils.getDate(); + } + boolean check = posMatchRateService.check(date); + if(check){ + return R.ok(); + } + return R.fail(false); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgAuthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgAuthController.java new file mode 100644 index 00000000..1b34bce0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgAuthController.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + +import com.jiuyv.sptcc.agile.dataservice.api.OrgAuthApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.OrgAuthService; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * @ClassName : OrgAuthController + * @Description : 机构权限信息查询接口 + * @Author : sky + * @Date: 2023-07-13 13:48 + */ +@RestController +public class OrgAuthController extends BaseController implements OrgAuthApi { + + @Resource + private OrgAuthService orgAuthService; + + @Override + public R getOrgAuth(@RequestBody @Validated OrgAuthReq req) { + OrgAuthResp orgAuth = orgAuthService.getOrgAuth(req); + return R.ok(orgAuth); + } + + @Override + public R check(@RequestBody @Validated OrgAuthRequest request) { + return R.success(orgAuthService.check(request)); + } + + @Override + public R getKey(String orgCode) { + return R.ok(orgAuthService.getKey(orgCode)); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgConfigController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgConfigController.java new file mode 100644 index 00000000..8a9dfe61 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgConfigController.java @@ -0,0 +1,158 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.console.OrgCfgConsoleApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 机构配置信息 + * + * @author yulei + **/ +@RestController +public class OrgConfigController extends BaseController implements OrgCfgConsoleApi { + + @Resource + private IOrgConfigService orgConfigService; + + /** + * 查询 + * + * @param query + * @return + */ + @Override + public R> list(@RequestBody @Validated OrgConfigQueryRequest query) { + OrgConfig config = new OrgConfig(); + config.setOrgNo(query.getOrgNo()); + startPage(query,"updateTime"); + List configList = orgConfigService.queryList(config); + PageInfo pageInfo = new PageInfo<>(configList); + List resList = new ArrayList<>(); + pageInfo.getList().stream().forEach(orgConfig -> { + OrgConfigResponse vo = toResponse(orgConfig); + resList.add(vo); + }); + PageResult result = new PageResult<>(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), resList); + return R.ok(result); + } + + /** + * 详情 + * + * @param configId + * @return + */ + @Override + public R queryDetail( Long configId) { + OrgConfig orgConfig = orgConfigService.queryDetail(configId); + if (orgConfig == null) { + return R.restResult(ResultCode.DATE_NOT_EXIST); + } + OrgConfigResponse vo = toResponse(orgConfig); + vo.setOrgName(orgConfig.getOrgName()); + return R.ok(vo); + } + + private OrgConfigResponse toResponse(OrgConfig orgConfig) { + if(orgConfig == null){ + return null; + } + OrgConfigResponse vo = new OrgConfigResponse(); + vo.setConfigId(orgConfig.getConfigId()); + vo.setOrgNo(orgConfig.getOrgNo()); + vo.setConfigKey(orgConfig.getConfigKey()); + vo.setConfigDesc(orgConfig.getConfigDesc()); + vo.setConfigValue(orgConfig.getConfigValue()); + vo.setVersionNum(orgConfig.getVersionNum()); + vo.setRecToken(orgConfig.getRecToken()); + vo.setDelFlag(orgConfig.getDelFlag()); + vo.setStatus(orgConfig.getStatus()); + vo.setOrgName(orgConfig.getOrgName()); + return vo; + } + + /** + * 新增 + * + * @param dto + * @return + */ + @Override + public R add(@Validated @RequestBody OrgConfigAddRequest dto) { + OrgConfig config = new OrgConfig(); + config.setOrgNo(dto.getOrgNo()); + config.setConfigKey(dto.getConfigKey()); + config.setConfigDesc(dto.getConfigDesc()); + config.setConfigValue(dto.getConfigValue()); + config.setDelFlag(dto.getDelFlag()); + config.setStatus(dto.getStatus()); + orgConfigService.addOrgConfig(config); + return R.ok(); + } + + /** + * 编辑 + * + * @param dto + * @return + */ + @Override + public R edit(@Validated @RequestBody OrgConfigEditRequest dto) { + OrgConfig config = new OrgConfig(); + config.setConfigId(dto.getConfigId()); + config.setOrgNo(dto.getOrgNo()); + config.setConfigKey(dto.getConfigKey()); + config.setConfigDesc(dto.getConfigDesc()); + config.setConfigValue(dto.getConfigValue()); + config.setRecToken(dto.getRecToken()); + config.setDelFlag(dto.getDelFlag()); + config.setStatus(dto.getStatus()); + config.setUpdateByName(dto.getUserName()); + config.setUpdateBy(dto.getUserName()); + config.setParams(ParamsUtil.idempotent(dto.getRecToken(), null)); + orgConfigService.updateOrgConfig(config); + return R.ok(); + } + + /** + * 删除 + * + * @param configId + * @return + */ + @Override + public R delete( Long configId) { + orgConfigService.deleteById(configId); + return R.ok(); + } + + @Override + public R> getConfig( String orgCode) { + OrgConfig req = new OrgConfig(); + req.setOrgNo(orgCode); + List orgConfigs = orgConfigService.queryList(req); + List collect = orgConfigs.stream().map(x -> { + return toResponse(x); + }).collect(Collectors.toList()); + return R.ok(collect); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgInfoController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgInfoController.java new file mode 100644 index 00000000..4570e685 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgInfoController.java @@ -0,0 +1,203 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.console.OrgInfoConsoleApi; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgInfoService; +import com.jiuyv.sptcc.agile.dataservice.utils.data.PhoneUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.ArrayList; +import java.util.List; + +/** + * 【机构管理信息】Controller + * + * @author yulei + * @date 2023-06-16 + */ +@RestController +public class OrgInfoController extends BaseController implements OrgInfoConsoleApi { + + private final IOrgInfoService orgInfoService; + + private final AgileApiService apiService; + + @Autowired + public OrgInfoController(IOrgInfoService orgInfoService, AgileApiService apiService) { + this.orgInfoService = orgInfoService; + this.apiService = apiService; + } + + /** + * 查询【机构管理信息】列表 + */ + @Override + public R> list(@RequestBody @Validated OrgInfoQueryReq query) { + OrgInfoEntity entity = new OrgInfoEntity(); + entity.setOrgNo(query.getOrgNo()); + entity.setOrgName(query.getOrgName()); + entity.setOrgType(query.getOrgType()); + entity.setStatus(query.getStatus()); + entity.setMemberId(query.getMermberId()); + PageMethod.startPage(query.getPageNum(), query.getPageSize()); + List list = orgInfoService.selectOrgInfoList(entity); + PageInfo pageInfo = new PageInfo<>(list); + List resList = new ArrayList<>(); + for (OrgInfoEntity orgInfo : pageInfo.getList()) { + OrgInfoResp vo = toResp(orgInfo); + resList.add(vo); + } + return R.ok(PageResult.instance(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), resList)); + } + + private OrgInfoResp toResp(OrgInfoEntity orgInfo) { + if (orgInfo == null) { + return null; + } + OrgInfoResp vo = new OrgInfoResp(); + vo.setOrgNo(orgInfo.getOrgNo()); + vo.setOrgName(orgInfo.getOrgName()); + vo.setOrgType(orgInfo.getOrgType()); + vo.setOrgDesc(orgInfo.getOrgDesc()); + vo.setSalt(orgInfo.getSalt()); + vo.setEncrypt(orgInfo.getEncrypt()); + vo.setStartTime(orgInfo.getStartTime()); + vo.setEndTime(orgInfo.getEndTime()); + vo.setStatus(orgInfo.getStatus()); + vo.setVersionNum(orgInfo.getVersionNum()); + vo.setRecToken(orgInfo.getRecToken()); + vo.setDelFlag(orgInfo.getDelFlag()); + vo.setIp(orgInfo.getIp()); + vo.setContractTel(PhoneUtil.decryptEcb(orgInfo.getContractTel())); + vo.setMemberId(orgInfo.getMemberId()); + vo.setCreateBy(orgInfo.getCreateBy()); + vo.setCreateByName(orgInfo.getCreateByName()); + vo.setCreateTime(orgInfo.getCreateTime()); + vo.setUpdateByName(orgInfo.getUpdateByName()); + vo.setUpdateTime(orgInfo.getUpdateTime()); + return vo; + } + + /** + * 获取【机构管理信息】详细信息 + */ + @Override + public R getInfo( String orgNo) { + OrgInfoEntity orgInfo = orgInfoService.selectOrgInfoByOrgNo(orgNo); + if(orgInfo == null){ + return R.fail(ResultCode.DATE_NOT_EXIST); + } + OrgInfoResp vo = toResp(orgInfo); + return R.ok(vo); + } + + /** + * 新增【机构管理信息】 + */ + @Override + public R add(@Validated @RequestBody OrgInfoAddReq addReq) { + orgInfoService.add(addReq); + return R.ok(); + } + + /** + * 修改【机构管理信息】 + */ + @Override + public R edit(@Validated @RequestBody OrgInfoEditReq request) { + orgInfoService.update(request); + return R.ok(); + } + + /** + * 删除【机构管理信息】 + */ + @Override + public R remove(@RequestBody @Validated OrgDelReq request) { + orgInfoService.delete(request); + return R.ok(); + } + + /** + * 启用机构 + */ + @Override + public R run(@RequestBody @Validated OrgInfoStatusReq request) { + orgInfoService.run(request); + return R.ok(); + } + + + /** + * 停用机构 + */ + @Override + public R stop(@RequestBody @Validated OrgInfoStatusReq request) { + orgInfoService.stop(request); + return R.ok(); + } + + /** + * 加盐/加密秘钥 + * + * @return + */ + @Override + public R getGenerateKeyHex() { + String s = null; + try { + s = Sm4Util.generateKeyHex(); + } catch (Exception e) { + throw new BaseException(ResultCode.FAILED); + } + return R.ok(s); + } + + /** + * 授权 + * + * @param request + * @return + */ + @Override + public R orgApiAuth(@RequestBody @Validated OrgApiAuthRequest request) { + orgInfoService.orgApiAuth(request); + return R.ok(); + } + + /** + * 获取权限信息 + * + * @param orgNo + * @return + */ + @Override + public R orgApiAuthInfo(String orgNo) { + OrgApiAuthVo vo = new OrgApiAuthVo(); + Long[] authList = orgInfoService.orgApiAuthList(orgNo); + List treeSelectList = apiService.buildApiTree(new ApiEntity()); + vo.setCheckedKeys(authList); + vo.setTreeSelectList(treeSelectList); + return R.ok(vo); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgStatisticsController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgStatisticsController.java new file mode 100644 index 00000000..792f981e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/org/OrgStatisticsController.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.org; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.console.OrgStcsConsoleApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiStatisticsResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgStatisticsService; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 接口调用次数统计(OrgStatistics)表控制层 + * + * @author makejava + * @since 2023-07-13 16:04:00 + */ +@RestController +public class OrgStatisticsController extends BaseController implements OrgStcsConsoleApi { + /** + * 服务对象 + */ + @Resource + private IOrgStatisticsService orgStatisticsService; + + /** + * mmm + * 分页查询 + * + * @param request 筛选条件 + * @return 查询结果 + */ + @Override + public R> queryByPage(@Validated @RequestBody OrgStatisticsQueryReq request) { + OrgStatisticsEntity vo = new OrgStatisticsEntity(); + vo.setOrgNo(request.getOrgNo()); + vo.setOrgName(request.getOrgName()); + vo.setApiName(request.getApiName()); + PageMethod.startPage(request.getPageNum(), request.getPageSize()); + List list = orgStatisticsService.selectList(vo); + PageInfo pageInfo = new PageInfo<>(list); + List collect = pageInfo.getList().stream().map(orgStatisticsEntity -> { + OrgStatisticsVo osv = new OrgStatisticsVo(); + osv.setId(orgStatisticsEntity.getId()+""); + osv.setOrgNo(orgStatisticsEntity.getOrgNo()); + osv.setOrgName(orgStatisticsEntity.getOrgName()); + osv.setApiId(orgStatisticsEntity.getApiId()+""); + osv.setSuccessTotal(orgStatisticsEntity.getSuccessTotal()); + osv.setFailTotal(orgStatisticsEntity.getFailTotal()); + osv.setApiName(orgStatisticsEntity.getApiName()); + osv.setVersionNum(orgStatisticsEntity.getVersionNum()+""); + osv.setRecToken(orgStatisticsEntity.getRecToken()); + osv.setDelFlag(orgStatisticsEntity.getDelFlag()); + return osv; + }).collect(Collectors.toList()); + + return R.ok(PageResult.instance(pageInfo.getPageNum(),pageInfo.getPages(),pageInfo.getTotal(), collect)); + } + + /** + * 查询用户接口调用统计列表 + * + * @param request + * @return + */ + @Override + public R> getUserApiStatistics(@RequestBody @Validated ApiUserRequest request) { + PageMethod.startPage(request.getPageNum(),request.getPageSize()); + List list = orgStatisticsService.getUserInfo(request.getMemberId()); + PageInfo pageInfo = new PageInfo<>(list); + List response = new ArrayList<>(); + for (OrgStatisticsEntity info : pageInfo.getList()) { + DataApiStatisticsResponse res = new DataApiStatisticsResponse(); + res.setId(info.getId()); + res.setOrgNo(info.getOrgNo()); + res.setOrgName(info.getOrgName()); + res.setApiId(info.getApiId()); + res.setSuccessTotal(info.getSuccessTotal()); + res.setFailTotal(info.getFailTotal()); + res.setApiName(info.getApiName()); + res.setUpdateTime(info.getUpdateTime()); + response.add(res); + } + return R.ok(PageResult.instance(pageInfo.getTotal(), response)); + } +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/DownloadController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/DownloadController.java new file mode 100644 index 00000000..de44c98a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/DownloadController.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.jiuyv.sptcc.agile.dataservice.api.portal.SdkDownload; +import com.jiuyv.sptcc.agile.dataservice.api.product.DownloadApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IFileService; +import com.jiuyv.sptcc.agile.dataservice.utils.ServletUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import feign.Response; +import org.springframework.http.ResponseEntity; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.io.IOException; + +/** + * 客流宝文件下载 + * + * @ClassName : DownloadController + * @Description : + * @Author : sky + * @Date: 2023-09-13 17:48 + */ +@RestController +public class DownloadController extends BaseController implements DownloadApi, SdkDownload { + + @Resource + private IFileService fileService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + @Override + public Response download(@RequestBody @Validated DownLoadRequest request) throws IOException { + boolean isSuccess = false; + try{ + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getDate(), request.getOrgNo()); + if(!b){ + throw new BaseException(ResultCode.DATA_TIME_NO_RIGHT); + } + isSuccess = true; + return fileService.downloadFile(request, ServletUtils.getResponse()); + }catch (Exception e){ + logger.info("下载文件异常;{}",e.getMessage()); + isSuccess = false; + if(logger.isDebugEnabled()){ + logger.error("下载文件异常",e); + } + throw e; + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.DWONLOAD.getCode(),isSuccess); + } + + } + + @Override + public ResponseEntity download() { + return fileService.download(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricDayController.java new file mode 100644 index 00000000..0412a9f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricDayController.java @@ -0,0 +1,107 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineDayPageRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +/** + * 线路每天客流宝量指标Controller + * + * @author shu_k + * @date 2023-09-18 + */ +@RestController +public class LineMetricDayController extends BaseController implements LineMetricDayApi { + + @Resource + private ILineMetricDayService lineMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 查询线路每天客流宝量指标列表 + */ + public R> list(@RequestBody @Validated LineDayPageReq request) { + startPage(request,"metricDate"); + LineMetricDay lineMetricDay = new LineMetricDay(); + lineMetricDay.setMetricDate(request.getMetricDate()); + lineMetricDay.setLineCode(request.getLineCode()); + lineMetricDay.setLineName(request.getLineName()); + lineMetricDay.setLineStatus(request.getLineStatus()); + lineMetricDay.setCompanyCode(request.getCompanyCode()); + lineMetricDay.setServiceType(request.getServiceType()); + List list = lineMetricDayService.selectLineMetricDayList(lineMetricDay); + PageInfo page = new PageInfo<>(list); + List resList = getResList(page); + return R.ok(PageResult.instance(page.getPageNum(), page.getPages(), page.getTotal(), resList)); + } + + @Override + public R> page(@RequestBody @Validated LineDayReqRequest request) { + + boolean isSuccess = false; + try{ + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if(!b){ + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + // PageMethod.startPage(request.getPageNum(), request.getPageSize()); + startPage(request,"id"); + LineMetricDay lineMetricDay = new LineMetricDay(); + lineMetricDay.setMetricDate(request.getMetricDate()); + List list = lineMetricDayService.selectLineMetricDayList(lineMetricDay); + PageInfo page = new PageInfo<>(list); + List resList = getResList(page); + isSuccess = true; + return R.ok(PageResult.instance(page.getPageNum(), page.getPages(), page.getTotal(), resList)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.LINE_DAY.getCode(),isSuccess); + } + + } + + private static List getResList(PageInfo page) { + List resList = new ArrayList<>(); + for (LineMetricDay metricDate : page.getList()) { + LineDayPageRes res = new LineDayPageRes(); + res.setLineCode(metricDate.getLineCode()); + res.setLineName(metricDate.getLineName()); + res.setLineStatus(metricDate.getLineStatus()); + res.setCompanyCode(metricDate.getCompanyCode()); + res.setCompanyName(metricDate.getCompanyName()); + res.setServiceType(metricDate.getServiceType()); + res.setMetricDate(metricDate.getMetricDate()); + res.setMetricValue(metricDate.getMetricValue()); + res.setLineNo(metricDate.getLineNo()); + res.setCreateTime(metricDate.getCreateTime()); + resList.add(res); + } + return resList; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricHourController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricHourController.java new file mode 100644 index 00000000..c5bc7b75 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricHourController.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricHourApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 线路小时客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineMetricHourController extends BaseController implements LineMetricHourApi { + + @Resource + private ILineMetricHourService lineMetricHourService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + private static List getMetricHourRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + LineMetricHourRes lineMetricHourRes = new LineMetricHourRes(); + lineMetricHourRes.setLineCode(x.getLineCode()); + lineMetricHourRes.setLineName(x.getLineName()); + lineMetricHourRes.setLineStatus(x.getLineStatus()); + lineMetricHourRes.setCompanyCode(x.getCompanyCode()); + lineMetricHourRes.setCompanyName(x.getCompanyName()); + lineMetricHourRes.setServiceType(x.getServiceType()); + lineMetricHourRes.setMetricHour(x.getMetricHour()); + lineMetricHourRes.setMetricDate(x.getMetricDate()); + lineMetricHourRes.setMetricValue(x.getMetricValue()); + lineMetricHourRes.setLineNo(x.getLineNo()); + lineMetricHourRes.setId(x.getId()); + lineMetricHourRes.setCreateTime(x.getCreateTime()); + return lineMetricHourRes; + }).collect(Collectors.toList()); + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated LineHourPageReq request) { + LineMetricHour lineMetricHour = new LineMetricHour(); + lineMetricHour.setLineCode(request.getLineCode()); + lineMetricHour.setLineName(request.getLineName()); + lineMetricHour.setLineStatus(request.getLineStatus()); + lineMetricHour.setCompanyCode(request.getCompanyCode()); + lineMetricHour.setServiceType(request.getServiceType()); + lineMetricHour.setMetricDate(request.getMetricDate()); + lineMetricHour.setMetricHour(request.getHour()); + startPage(request,"metricDate"); + List lineMetricHours = lineMetricHourService.selectlineMetricHourList(lineMetricHour); + PageInfo pageInfo = new PageInfo<>(lineMetricHours); + List collect = getMetricHourRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated LineHourRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineMetricHour lineMetricHour = new LineMetricHour(); + lineMetricHour.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineMetricHours = lineMetricHourService.selectlineMetricHourList(lineMetricHour); + PageInfo pageInfo = new PageInfo<>(lineMetricHours); + List collect = getMetricHourRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.LINE_HOUR.getCode(),isSuccess); + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricMonthController.java new file mode 100644 index 00000000..419a4f33 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineMetricMonthController.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 线路月客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineMetricMonthController extends BaseController implements LineMetricMonthApi { + + @Resource + private ILineMetricMonthService lineMetricMonthService; + + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated LineMetricMonthReq request) { + + LineMetricMonth req = new LineMetricMonth(); + req.setLineCode(request.getLineCode()); + req.setLineStatus(request.getLineStatus()); + req.setLineName(request.getLineName()); + req.setCompanyCode(request.getCompanyCode()); + req.setServiceType(request.getServiceType()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + + startPage(request,"metricMonth"); + List lineMetricMonths = lineMetricMonthService.selectlineMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineMetricMonths); + List collect = getMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated LineMonthRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineMetricMonth req = new LineMetricMonth(); + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, request.getMetricMonth()); + req.setMetricMonth(monthStr); + startPage(request,"id"); + List lineMetricMonths = lineMetricMonthService.selectlineMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineMetricMonths); + List collect = getMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.LINE_MONTH.getCode(),isSuccess); + } + + } + + private static List getMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + LineMetricMonthRes res = new LineMetricMonthRes(); + res.setLineCode(x.getLineCode()); + res.setLineName(x.getLineName()); + res.setLineStatus(x.getLineStatus()); + res.setCompanyCode(x.getCompanyCode()); + res.setCompanyName(x.getCompanyName()); + res.setServiceType(x.getServiceType()); + res.setMetricMonth(x.getMetricMonth()); + res.setMetricValue(x.getMetricValue()); + res.setLineNo(x.getLineNo()); + res.setId(x.getId()); + res.setCreateTime(x.getCreateTime()); + return res; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricDayController.java new file mode 100644 index 00000000..e6c59194 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricDayController.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationMetricDayController extends BaseController implements StationMetricDayApi { + + @Resource + private ILineStationMetricDayService lineStationMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricDayReq request) { + LineStationMetricDay req = new LineStationMetricDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List lineStationMetricDays = lineStationMetricDayService.selectLineStationMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricDays); + List collect = getMetricDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationDayRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationMetricDay req = new LineStationMetricDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationMetricDays = lineStationMetricDayService.selectLineStationMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricDays); + List collect = getMetricDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_DAY.getCode(),isSuccess); + } + + } + + private static List getMetricDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricDayRes res = new StationMetricDayRes(); + res.setLineCode(x.getLineCode()); + res.setLineName(x.getLineName()); + res.setUp(x.getUp()); + res.setLevelName(x.getLevelName()); + res.setLevels(x.getLevels()); + res.setMetricDate(x.getMetricDate()); + res.setMetricValue(x.getMetricValue()); + res.setLineNo(x.getLineNo()); + res.setId(x.getId()); + res.setCreateTime(x.getCreateTime()); + return res; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricHourController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricHourController.java new file mode 100644 index 00000000..d7d2f8bf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricHourController.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationMetricHourApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点小时客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationMetricHourController extends BaseController implements StationMetricHourApi { + + @Resource + private ILineStationMetricHourService lineStationMetricHourService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricHourReq request) { + LineStationMetricHour req = new LineStationMetricHour(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + req.setMetricHour(request.getHour()); + startPage(request,"metricDate"); + List lineStationMetricHours = lineStationMetricHourService.selectLineStationMetricHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricHours); + List collect = getMetricHourRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationHourRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationMetricHour req = new LineStationMetricHour(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationMetricHours = lineStationMetricHourService.selectLineStationMetricHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricHours); + List collect = getMetricHourRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_HOUR.getCode(),isSuccess); + } + + } + + private static List getMetricHourRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricHourRes res = new StationMetricHourRes(); + res.setLineCode(x.getLineCode()); + res.setLineName(x.getLineName()); + res.setUp(x.getUp()); + res.setLevelName(x.getLevelName()); + res.setLevels(x.getLevels()); + res.setMetricDate(x.getMetricDate()); + res.setMetricValue(x.getMetricValue()); + res.setLineNo(x.getLineNo()); + res.setId(x.getId()); + res.setMetricHour(x.getMetricHour()); + res.setCreateTime(x.getCreateTime()); + return res; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricMonthController.java new file mode 100644 index 00000000..d425f3ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationMetricMonthController.java @@ -0,0 +1,115 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationMetricMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点月客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationMetricMonthController extends BaseController implements StationMetricMonthApi { + + @Resource + private ILineStationMetricMonthService lineStationMetricMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricMonthReq request) { + LineStationMetricMonth req = new LineStationMetricMonth(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + startPage(request,"metricMonth"); + List lineStationMetricMonths = lineStationMetricMonthService.selectLineStationMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricMonths); + List collect = getMetricMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationMonthRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationMetricMonth req = new LineStationMetricMonth(); + Date metricMonth = request.getMetricMonth(); + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + startPage(request,"id"); + List lineStationMetricMonths = lineStationMetricMonthService.selectLineStationMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationMetricMonths); + List collect = getMetricMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_MONTH.getCode(),isSuccess); + } + + } + + private static List getMetricMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricMonthRes monthVo = new StationMetricMonthRes(); + monthVo.setLineCode(x.getLineCode()); + monthVo.setLineName(x.getLineName()); + monthVo.setUp(x.getUp()); + monthVo.setLevels(x.getLevels()); + monthVo.setLevelName(x.getLevelName()); + monthVo.setMetricMonth(x.getMetricMonth()); + monthVo.setMetricValue(x.getMetricValue()); + monthVo.setLineNo(x.getLineNo()); + monthVo.setId(x.getId()); + monthVo.setCreateTime(x.getCreateTime()); + return monthVo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransDayController.java new file mode 100644 index 00000000..067e3808 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransDayController.java @@ -0,0 +1,113 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationTransDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationTransDayController extends BaseController implements StationTransDayApi { + + @Resource + private ILineStationTransDayService lineStationTransDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationTransDayReq request) { + LineStationTransDay req = new LineStationTransDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List lineStationTransDays = lineStationTransDayService.selectLineStationTransDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransDays); + List collect = getTransDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + private static List getTransDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationTransDayRes vo = new StationTransDayRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setMetricDate(x.getMetricDate()); + vo.setCreateTime(x.getCreateTime()); + vo.setExchangeType(x.getExchangeType()); + return vo; + }).collect(Collectors.toList()); + } + + @Override + public R> page(@RequestBody @Validated StationTransDayRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationTransDay req = new LineStationTransDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationTransDays = lineStationTransDayService.selectLineStationTransDayList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransDays); + List collect = getTransDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_TRANS_DAY.getCode(),isSuccess); + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransHourController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransHourController.java new file mode 100644 index 00000000..24a92a1a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransHourController.java @@ -0,0 +1,114 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationTransHourApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationMetricHourRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransHourService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + + +/** + * 站点小时换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationTransHourController extends BaseController implements StationTransHourApi { + + @Resource + private ILineStationTransHourService lineStationTransHourService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMetricHourReq request) { + + LineStationTransHour req = new LineStationTransHour(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + req.setMetricDate(request.getMetricDate()); + req.setMetricHour(request.getHour()); + startPage(request,"metricDate"); + List lineStationTransHours = lineStationTransHourService.selectLineStationTransHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransHours); + + List collect = getMetricHourRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationTransHourRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationTransHour req = new LineStationTransHour(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List lineStationTransHours = lineStationTransHourService.selectLineStationTransHourList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransHours); + List collect = getMetricHourRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_TRANS_HOUR.getCode(),isSuccess); + } + + } + + private static List getMetricHourRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationMetricHourRes vo = new StationMetricHourRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevelName(x.getLevelName()); + vo.setLevels(x.getLevels()); + vo.setMetricDate(x.getMetricDate()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setId(x.getId()); + vo.setMetricHour(x.getMetricHour()); + vo.setCreateTime(x.getCreateTime()); + vo.setExchangeType(x.getExchangeType()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransMonthController.java new file mode 100644 index 00000000..b5d1e36e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/LineStationTransMonthController.java @@ -0,0 +1,120 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationTransMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationTransMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点月换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class LineStationTransMonthController extends BaseController implements StationTransMonthApi { + + @Resource + private ILineStationTransMonthService lineStationTransMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationTransMonthReq request) { + LineStationTransMonth req = new LineStationTransMonth(); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + req.setLineCode(request.getLineCode()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + req.setLineCode(request.getLineCode()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + startPage(request,"metricMonth"); + List lineStationTransMonths = lineStationTransMonthService.selectLineStationTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransMonths); + List collect = getTransMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationTransMonthRequest request) { + + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + LineStationTransMonth req = new LineStationTransMonth(); + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, request.getMetricMonth()); + req.setMetricMonth(monthStr); + startPage(request,"id"); + List lineStationTransMonths = lineStationTransMonthService.selectLineStationTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(lineStationTransMonths); + List collect = getTransMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_TRNAS_MONTH.getCode(),isSuccess); + } + + } + + private static List getTransMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationTransMonthRes vo = new StationTransMonthRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricMonth(x.getMetricMonth()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/RouteMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/RouteMetricDayController.java new file mode 100644 index 00000000..671a71c3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/RouteMetricDayController.java @@ -0,0 +1,126 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.RouteMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.RouteMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IRouteMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 班次日客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class RouteMetricDayController extends BaseController implements RouteMetricDayApi { + @Resource + private IRouteMetricDayService routeMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteMetricDayReq request) { + RouteMetricDay req = new RouteMetricDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setStartStation(request.getStartStation()); + req.setStartTime(request.getStartTime()); + req.setEndStation(request.getEndStation()); + req.setArrivalTime(request.getArrivalTime()); + req.setWaybillType(request.getWaybillType()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List routeMetricDays = routeMetricDayService.selectRouteMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(routeMetricDays); + + List collect = pageInfo.getList().stream().map(this::toResponse).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + /** + * 查看详情 + * + * @param id + * @return + */ + @Override + public R detail(Long id) { + RouteMetricDay routeMetricDay = routeMetricDayService.selectRouteMetricDayById(id); + return R.ok(toResponse(routeMetricDay)); + } + + @Override + public R> page(@RequestBody @Validated RouteDayRequest request) { + + boolean isSuccess = false; + try { + // 判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + RouteMetricDay req = new RouteMetricDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List routeMetricDays = routeMetricDayService.selectRouteMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(routeMetricDays); + List collect = pageInfo.getList().stream().map(this::toResponse).collect(Collectors.toList()); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } catch (Exception e) { + return handelEx(e); + } finally { + // 记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.ROUTE_DAY.getCode(), isSuccess); + } + + } + + private RouteMetricDayRes toResponse(RouteMetricDay routeMetricDay) { + RouteMetricDayRes res = new RouteMetricDayRes(); + res.setLineCode(routeMetricDay.getLineCode()); + res.setLineName(routeMetricDay.getLineName()); + res.setUp(routeMetricDay.getUp()); + res.setLicensePlate(routeMetricDay.getLicensePlate()); + res.setDriverCode(routeMetricDay.getDriverCode()); + res.setStartStation(routeMetricDay.getStartStation()); + res.setStartTime(routeMetricDay.getStartTime()); + res.setEndStation(routeMetricDay.getEndStation()); + res.setArrivalTime(routeMetricDay.getArrivalTime()); + res.setWaybillType(routeMetricDay.getWaybillType()); + res.setMetricDate(routeMetricDay.getMetricDate()); + res.setMetricValue(routeMetricDay.getMetricValue()); + res.setLineNo(routeMetricDay.getLineNo()); + res.setId(routeMetricDay.getId()); + res.setCreateTime(routeMetricDay.getCreateTime()); + return res; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricDayController.java new file mode 100644 index 00000000..f680092c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricDayController.java @@ -0,0 +1,112 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqMetricDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日常乘客客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController + +public class StationFreqMetricDayController extends BaseController implements StationFreqMetricDayApi { + + @Resource + private IStationFreqMetricDayService stationFreqMetricDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqMetricDayReq request) { + StationFreqMetricDay req = new StationFreqMetricDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + startPage(request,"metricDate"); + List stationFreqMetricDays = stationFreqMetricDayService.selectStationFreqMetricDayList(req); + + PageInfo pageInfo = new PageInfo<>(stationFreqMetricDays); + List collect = getFreqMetricDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqDayRequest request) { + + boolean isSuccess = true; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqMetricDay req = new StationFreqMetricDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List stationFreqMetricDays = stationFreqMetricDayService.selectStationFreqMetricDayList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqMetricDays); + List collect = getFreqMetricDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_DAY.getCode(),isSuccess); + } + + } + + private static List getFreqMetricDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqMetricDayRes vo = new StationFreqMetricDayRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setLineStatus(x.getLineStatus()); + vo.setMetricDate(x.getMetricDate()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricMonthController.java new file mode 100644 index 00000000..8304cb35 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqMetricMonthController.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqMetricMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqMetricMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点月换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class StationFreqMetricMonthController extends BaseController implements StationFreqMetricMonthApi { + + @Resource + private IStationFreqMetricMonthService stationFreqMetricMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqMetricMonthReq request) { + + StationFreqMetricMonth req = new StationFreqMetricMonth(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + req.setMetricMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth)); + } + startPage(request,"metricMonth"); + List stationFreqMetricMonths = stationFreqMetricMonthService.selectStationFreqMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqMetricMonths); + List collect = getFreqMetricMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqMonthRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqMetricMonth req = new StationFreqMetricMonth(); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + req.setMetricMonth(DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth)); + } + startPage(request,"id"); + List stationFreqMetricMonths = stationFreqMetricMonthService.selectStationFreqMetricMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqMetricMonths); + List collect = getFreqMetricMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_MONTH.getCode(),isSuccess); + } + + } + + private static List getFreqMetricMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqMetricMonthRes vo = new StationFreqMetricMonthRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setLineStatus(x.getLineStatus()); + vo.setMetricMonth(x.getMetricMonth()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransDayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransDayController.java new file mode 100644 index 00000000..4415a290 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransDayController.java @@ -0,0 +1,108 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqTransDayApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransDayRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransDayService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日常乘客换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class StationFreqTransDayController extends BaseController implements StationFreqTransDayApi { + + @Resource + private IStationFreqTransDayService stationFreqTransDayService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqTransDayReq request) { + StationFreqTransDay req = new StationFreqTransDay(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setMetricDate(request.getMetricDate()); + req.setExchangeType(request.getExchangeType()); + startPage(request,"metricDate"); + List stationFreqTransDays = stationFreqTransDayService.selectStationFreqTransDayList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransDays); + List collect = getFreqTransDayRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqTransDayRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricDate(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqTransDay req = new StationFreqTransDay(); + req.setMetricDate(request.getMetricDate()); + startPage(request,"id"); + List stationFreqTransDays = stationFreqTransDayService.selectStationFreqTransDayList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransDays); + List collect = getFreqTransDayRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_TRANS_DAY.getCode(),isSuccess); + } + + } + + private static List getFreqTransDayRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqTransDayRes vo = new StationFreqTransDayRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricDate(x.getMetricDate()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransMonthController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransMonthController.java new file mode 100644 index 00000000..448406fa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/product/StationFreqTransMonthController.java @@ -0,0 +1,121 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.product; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.product.StationFreqTransMonthApi; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApicodeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.StationFreqTransMonthRes; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点日常乘客换乘客流量统计Controller + * + * @author shu_k + * @date 2023-09-19 + */ +@RestController +public class StationFreqTransMonthController extends BaseController implements StationFreqTransMonthApi { + + @Resource + private IStationFreqTransMonthService stationFreqTransMonthService; + @Resource + private IOrgConfigService orgConfigService; + @Resource + private AsyncTask asyncTask; + + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationFreqTransMonthReq request) { + + StationFreqTransMonth req = new StationFreqTransMonth(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setLevels(request.getLevels()); + req.setExchangeType(request.getExchangeType()); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + startPage(request,"metricMonth"); + List stationFreqTransMonths = stationFreqTransMonthService.selectStationFreqTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransMonths); + List collect = getTransMonthRes(pageInfo); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + @Override + public R> page(@RequestBody @Validated StationFreqTransMonthRequest request) { + boolean isSuccess = false; + try { + //判断时间范围 + boolean b = orgConfigService.checkDataRange(request.getMetricMonth(), request.getOrgNo()); + if (!b) { + return R.fail(ResultCode.DATA_TIME_NO_RIGHT); + } + StationFreqTransMonth req = new StationFreqTransMonth(); + Date metricMonth = request.getMetricMonth(); + if (metricMonth != null) { + String monthStr = DateUtils.parseDateToStr(DateUtils.YYYY_MM, metricMonth); + req.setMetricMonth(monthStr); + } + startPage(request,"id"); + List stationFreqTransMonths = stationFreqTransMonthService.selectStationFreqTransMonthList(req); + PageInfo pageInfo = new PageInfo<>(stationFreqTransMonths); + List collect = getTransMonthRes(pageInfo); + isSuccess = true; + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + }catch (Exception e){ + return handelEx(e); + }finally { + //记录日志 + asyncTask.doStatics(request.getOrgNo(), ApicodeEnum.STATION_FREQ_TRANS_MONTH.getCode(),isSuccess); + } + + } + + private static List getTransMonthRes(PageInfo pageInfo) { + return pageInfo.getList().stream().map(x -> { + StationFreqTransMonthRes vo = new StationFreqTransMonthRes(); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setUp(x.getUp()); + vo.setLevels(x.getLevels()); + vo.setExchangeType(x.getExchangeType()); + vo.setMetricMonth(x.getMetricMonth()); + vo.setMetricValue(x.getMetricValue()); + vo.setLineNo(x.getLineNo()); + vo.setLevelName(x.getLevelName()); + vo.setId(x.getId()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/CentimeDelayController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/CentimeDelayController.java new file mode 100644 index 00000000..79eb2c4d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/CentimeDelayController.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.quality.CentimeDelayApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.CentimeDelayRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.ICentimeDelayService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 延迟上送比率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class CentimeDelayController extends BaseController implements CentimeDelayApi { + + private final ICentimeDelayService centimeDelayService; + + public CentimeDelayController(ICentimeDelayService centimeDelayService) { + this.centimeDelayService = centimeDelayService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated CentimeDelayReq request) { + + CentimeDelay req = new CentimeDelay(); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List centimeDelays = centimeDelayService.selectCentimeDelayList(req); + PageInfo pageInfo = new PageInfo<>(centimeDelays); + List collect = pageInfo.getList().stream().map(x -> { + CentimeDelayRes vo = new CentimeDelayRes(); + vo.setId(x.getId()); + vo.setTimeRange(x.getTimeRange()); + vo.setDelayCount(x.getDelayCount()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/PosMatchRateController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/PosMatchRateController.java new file mode 100644 index 00000000..0c63e49d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/PosMatchRateController.java @@ -0,0 +1,66 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.PosMatchRateApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.PosMatchRateRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IPosMatchRateService; +import com.jiuyv.sptcc.agile.dataservice.utils.DifferUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * Pos匹配率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class PosMatchRateController extends BaseController implements PosMatchRateApi { + + private final IPosMatchRateService posMatchRateService; + + public PosMatchRateController(IPosMatchRateService posMatchRateService) { + this.posMatchRateService = posMatchRateService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated PosMatchRateReq request) { + + PosMatchRate req = new PosMatchRate(); + + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List posMatchRates = posMatchRateService.selectPosMatchRateList(req); + PageInfo pageInfo = new PageInfo<>(posMatchRates); + List collect = pageInfo.getList().stream().map(x -> { + PosMatchRateRes vo = new PosMatchRateRes(); + vo.setId(x.getId()); + vo.setTranNum(x.getTranNum()); + vo.setMatchNum(x.getMatchNum()); + vo.setMatchRate(x.getMatchRate()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + vo.setDifferNum(DifferUtil.differ(x.getMatchNum(),x.getTranNum())); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteDailyCountController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteDailyCountController.java new file mode 100644 index 00000000..4c40ca21 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteDailyCountController.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.RouteDailyCountApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteDailyRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 日营运线路条数Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class RouteDailyCountController extends BaseController implements RouteDailyCountApi { + + private final IRouteDailyCountService routeDailyCountService; + + public RouteDailyCountController(IRouteDailyCountService routeDailyCountService) { + this.routeDailyCountService = routeDailyCountService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteDailyReq request) { + + RouteDailyCount req = new RouteDailyCount(); + req.setCompanyName(request.getCompanyName()); + req.setTxnDate(request.getTxnDate()); + req.setCompanyCode(request.getCompanyCode()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List routeDailyCounts = routeDailyCountService.selectRouteDailyCountList(req); + PageInfo pageInfo = new PageInfo<>(routeDailyCounts); + List collect = pageInfo.getList().stream().map(x -> { + RouteDailyRes vo = new RouteDailyRes(); + vo.setId(x.getId()); + vo.setCompanyName(x.getCompanyName()); + vo.setRouteCount(x.getRouteCount()); + vo.setTxnDate(x.getTxnDate()); + vo.setCompanyCode(x.getCompanyCode()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteMissController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteMissController.java new file mode 100644 index 00000000..023104b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteMissController.java @@ -0,0 +1,66 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.RouteMissApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteMissRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DifferUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 班次缺失率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class RouteMissController extends BaseController implements RouteMissApi { + + private final IRouteMissService routeMissService; + + public RouteMissController(IRouteMissService routeMissService) { + this.routeMissService = routeMissService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteMissReq request) { + + RouteMiss req = new RouteMiss(); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + + startPage(request,"txnDate"); + List routeMisses = routeMissService.selectRouteMissList(req); + PageInfo pageInfo = new PageInfo<>(routeMisses); + List collect = pageInfo.getList().stream().map(x -> { + RouteMissRes vo = new RouteMissRes(); + vo.setId(x.getId()); + vo.setMissRate(x.getMissRate()); + vo.setTxnDate(x.getTxnDate()); + vo.setRouteCount(x.getRouteCount()); + vo.setBusStopCount(x.getBusStopCount()); + vo.setCreateTime(x.getCreateTime()); + vo.setDifferNum(DifferUtil.differ(x.getRouteCount(),x.getBusStopCount())); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteTurnoverTimeController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteTurnoverTimeController.java new file mode 100644 index 00000000..8a0684d6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/RouteTurnoverTimeController.java @@ -0,0 +1,67 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + +import com.github.pagehelper.PageInfo; +import com.jiuyv.sptcc.agile.dataservice.api.quality.RouteTurnoverTimeApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.RouteTurnoverRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteTurnoverTimeService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 班次周转时间Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class RouteTurnoverTimeController extends BaseController implements RouteTurnoverTimeApi { + + private final IRouteTurnoverTimeService routeTurnoverTimeService; + + public RouteTurnoverTimeController(IRouteTurnoverTimeService routeTurnoverTimeService) { + this.routeTurnoverTimeService = routeTurnoverTimeService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated RouteTurnoverReq request) { + RouteTurnoverTime req = new RouteTurnoverTime(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setHlowPeakName(request.getHlowPeakName()); + req.setWayBillType(request.getWayBillType()); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request, "txnDate"); + List routeTurnoverTimes = routeTurnoverTimeService.selectRouteTurnoverTimeList(req); + PageInfo pageInfo = new PageInfo<>(routeTurnoverTimes); + List collect = pageInfo.getList().stream().map(x -> { + RouteTurnoverRes vo = new RouteTurnoverRes(); + vo.setId(x.getId()); + vo.setLineCode(x.getLineCode()); + vo.setLineName(x.getLineName()); + vo.setTurnoverTime(x.getTurnoverTime()); + vo.setHlowPeakName(x.getHlowPeakName()); + vo.setWayBillType(x.getWayBillType()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/StationMissController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/StationMissController.java new file mode 100644 index 00000000..ef191597 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/StationMissController.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.quality.StationMissApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.StationMissRes; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IStationMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DifferUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 站点缺失率Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class StationMissController extends BaseController implements StationMissApi { + private final IStationMissService stationMissService; + + public StationMissController(IStationMissService stationMissService) { + this.stationMissService = stationMissService; + } + + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R> list(@RequestBody @Validated StationMissReq request) { + StationMiss req = new StationMiss(); + req.setLineCode(request.getLineCode()); + req.setLineName(request.getLineName()); + req.setUp(request.getUp()); + req.setWayBillType(request.getWayBillType()); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List stationMisses = stationMissService.selectStationMissList(req); + PageInfo pageInfo = new PageInfo<>(stationMisses); + List collect = pageInfo.getList().stream().map(this::toResponse).collect(Collectors.toList()); + return R.ok(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + } + + /** + * 获取列表信息 + * + * @param id + * @return + */ + @Override + public R detail(Long id) { + StationMiss stationMiss = stationMissService.selectStationMissById(id); + StationMissRes vo = toResponse(stationMiss); + return R.ok(vo); + } + + private StationMissRes toResponse(StationMiss stationMiss) { + if (stationMiss == null) { + return null; + } + StationMissRes vo = new StationMissRes(); + vo.setId(stationMiss.getId()); + vo.setLineCode(stationMiss.getLineCode()); + vo.setLineName(stationMiss.getLineName()); + vo.setLicensePlate(stationMiss.getLicensePlate()); + vo.setDriverCode(stationMiss.getDriverCode()); + vo.setStartTime(stationMiss.getStartTime()); + vo.setArrivalTime(stationMiss.getArrivalTime()); + vo.setStartStation(stationMiss.getStartStation()); + vo.setEndStation(stationMiss.getEndStation()); + vo.setUp(stationMiss.getUp()); + vo.setWayBillType(stationMiss.getWayBillType()); + vo.setStartStationLevels(stationMiss.getStartStationLevels()); + vo.setEndStationLevels(stationMiss.getEndStationLevels()); + vo.setLevelNum(stationMiss.getLevelNum()); + vo.setBusStopNum(stationMiss.getBusStopNum()); + vo.setTxnDate(stationMiss.getTxnDate()); + vo.setCreateTime(stationMiss.getCreateTime()); + vo.setMissRate(stationMiss.getMissRate()); + vo.setDifferNum(DifferUtil.differ(stationMiss.getLevelNum(),stationMiss.getBusStopNum())); + return vo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/VehicleDailyCountController.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/VehicleDailyCountController.java new file mode 100644 index 00000000..ecaf26ae --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/quality/VehicleDailyCountController.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.dataservice.controller.quality; + +import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; +import com.jiuyv.sptcc.agile.dataservice.api.quality.VehicleDailyApi; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDailyRes; +import com.jiuyv.sptcc.agile.dataservice.dto.response.quailty.VehicleDayResponse; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IVehicleDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * 日营运车辆数Controller + * + * @author shu_k + * @date 2023-09-20 + */ +@RestController +public class VehicleDailyCountController extends BaseController implements VehicleDailyApi { + + private final IVehicleDailyCountService vehicleDailyCountService; + + public VehicleDailyCountController(IVehicleDailyCountService vehicleDailyCountService) { + this.vehicleDailyCountService = vehicleDailyCountService; + } + + /** + * 获取列表信息 + * + * @param request + * @return + */ + @Override + public R list(@RequestBody @Validated VehicleDailyReq request) { + + VehicleDailyCount req = new VehicleDailyCount(); + req.setCompanyCode(request.getCompanyCode()); + req.setCompanyName(request.getCompanyName()); + req.setTxnDate(request.getTxnDate()); + req.setParams(ParamsUtil.range(request)); + startPage(request,"txnDate"); + List vehicleDailyCounts = vehicleDailyCountService.selectVehicleDailyCountList(req); + PageInfo pageInfo = new PageInfo<>(vehicleDailyCounts); + List collect = pageInfo.getList().stream().map(x -> { + VehicleDailyRes vo = new VehicleDailyRes(); + vo.setId(x.getId()); + vo.setCompanyCode(x.getCompanyCode()); + vo.setCompanyName(x.getCompanyName()); + vo.setVehicleCount(x.getVehicleCount()); + vo.setTxnDate(x.getTxnDate()); + vo.setCreateTime(x.getCreateTime()); + return vo; + }).collect(Collectors.toList()); + + VehicleDayResponse vehicleDayResponse = new VehicleDayResponse(); + vehicleDayResponse.setPage(PageResult.instance(pageInfo.getPageNum(), pageInfo.getPages(), pageInfo.getTotal(), collect)); + Long l = vehicleDailyCountService.countBus(req); + vehicleDayResponse.setTotalBus(l); + return R.ok(vehicleDayResponse); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/OrgApiAuthDao.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/OrgApiAuthDao.java new file mode 100644 index 00000000..bef0c2e9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/OrgApiAuthDao.java @@ -0,0 +1,61 @@ +package com.jiuyv.sptcc.agile.dataservice.dao; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgAuthEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 【机构接口权限表】(OrgApiAuth)表数据库访问层 + * + * @author makejava + * @since 2023-07-13 16:03:54 + */ +@Mapper +public interface OrgApiAuthDao { + + /** + * 查询【机构接口权限】列表 + * + * @param orgApiAuthEntity 【机构接口权限】 + * @return 【机构接口权限】集合 + */ + List selectList(OrgApiAuth orgApiAuthEntity); + + /** + * 新增数据 + */ + int insert(OrgApiAuth orgApiAuth); + + /** + * 通过ID查询单条数据 + * + * @param id 主键 + * @return 实例对象 + */ + OrgApiAuth queryById(Long id); + + /** + * 统计总行数 + * + * @param orgApiAuth 查询条件 + * @return 总行数 + */ + long count(OrgApiAuth orgApiAuth); + + /** + * 获取全部接口列表 + * @param req + */ + List selectAllApi(OrgAuthReq req); + + /** + * 根据机构删除数据 + * @param orgNo + * @return + */ + int deleteByOrgNo(String orgNo); +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiEntity.java new file mode 100644 index 00000000..60ee8493 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiEntity.java @@ -0,0 +1,250 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +import java.io.Serializable; + +/** + *

+ * 数据API信息表 + *

+ */ +public class ApiEntity extends BaseEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long apiId; + + + /** + * 状态(0不启用,1启用) + */ + private String status; + + + /** + * API名称 + */ + private String apiName; + + /** + * API版本 + */ + private String apiVersion; + + /** + * API路径 + */ + private String apiUrl; + + /** + * 请求类型 + */ + private String reqMethod; + + /** + * 返回格式 + */ + private String resType; + + /** + * IP黑名单多个,隔开 + */ + private String deny; + + /** + * 限流配置 + */ + private String rateLimit; + + /** + * 执行配置 + */ + private String executeConfig; + + /** + * 请求参数 + */ + private String reqParams; + + /** + * 返回字段 + */ + private String resParams; + + /** + * 创建人所属部门 + */ + private String createDept; + + /** + * 版本号 + */ + private Long version; + + /** + * 验证token + */ + private String recToken; + + /** + * 接口交易码 + */ + private String apiCode; + /** + * 类型:1敏捷API 2系统API + */ + private String apiType; + /** + * 数据源id + */ + private Long sourceId; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiVersion() { + return apiVersion; + } + + public void setApiVersion(String apiVersion) { + this.apiVersion = apiVersion; + } + + public String getApiUrl() { + return apiUrl; + } + + public void setApiUrl(String apiUrl) { + this.apiUrl = apiUrl; + } + + public String getReqMethod() { + return reqMethod; + } + + public void setReqMethod(String reqMethod) { + this.reqMethod = reqMethod; + } + + public String getResType() { + return resType; + } + + public void setResType(String resType) { + this.resType = resType; + } + + public String getDeny() { + return deny; + } + + public void setDeny(String deny) { + this.deny = deny; + } + + public String getRateLimit() { + return rateLimit; + } + + public void setRateLimit(String rateLimit) { + this.rateLimit = rateLimit; + } + + public String getExecuteConfig() { + return executeConfig; + } + + public void setExecuteConfig(String executeConfig) { + this.executeConfig = executeConfig; + } + + public String getReqParams() { + return reqParams; + } + + public void setReqParams(String reqParams) { + this.reqParams = reqParams; + } + + public String getResParams() { + return resParams; + } + + public void setResParams(String resParams) { + this.resParams = resParams; + } + + public String getCreateDept() { + return createDept; + } + + public void setCreateDept(String createDept) { + this.createDept = createDept; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getApiType() { + return apiType; + } + + public void setApiType(String apiType) { + this.apiType = apiType; + } + + public Long getSourceId() { + return sourceId; + } + + public void setSourceId(Long sourceId) { + this.sourceId = sourceId; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiLogEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiLogEntity.java new file mode 100644 index 00000000..97540eba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/ApiLogEntity.java @@ -0,0 +1,163 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 数据API日志表 + * + * @author yulei + */ +public class ApiLogEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long apiLogId; + /** + * 调用api + */ + private Long apiId; + /** + * api名称 + */ + private transient String apiName; + /** + * 调用者id + */ + private String callerId; + /** + * 调用者ip + */ + private String callerIp; + /** + * 调用url + */ + private String callerUrl; + /** + * 调用参数 + */ + private String callerParams; + /** + * 调用数据量 + */ + private Integer callerSize; + /** + * 调用耗时 + */ + private Long time; + /** + * 信息记录 + */ + private String msg; + /** + * 状态:0:失败,1:成功 + */ + private String status; + /** + * 调用时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date callerDate; + + public Long getApiLogId() { + return apiLogId; + } + + public void setApiLogId(Long apiLogId) { + this.apiLogId = apiLogId; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getCallerId() { + return callerId; + } + + public void setCallerId(String callerId) { + this.callerId = callerId; + } + + public String getCallerIp() { + return callerIp; + } + + public void setCallerIp(String callerIp) { + this.callerIp = callerIp; + } + + public String getCallerUrl() { + return callerUrl; + } + + public void setCallerUrl(String callerUrl) { + this.callerUrl = callerUrl; + } + + public String getCallerParams() { + return callerParams; + } + + public void setCallerParams(String callerParams) { + this.callerParams = callerParams; + } + + public Integer getCallerSize() { + return callerSize; + } + + public void setCallerSize(Integer callerSize) { + this.callerSize = callerSize; + } + + public Long getTime() { + return time; + } + + public void setTime(Long time) { + this.time = time; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Date getCallerDate() { + return callerDate; + } + + public void setCallerDate(Date callerDate) { + this.callerDate = callerDate; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/CentimeDelay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/CentimeDelay.java new file mode 100644 index 00000000..bffe74f9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/CentimeDelay.java @@ -0,0 +1,83 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 延迟上送比率对象 tbl_qa_centime_delay + * + * @author shu_k + * @date 2023-09-20 + */ +public class CentimeDelay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long id; + + /** + * 时间范围 + */ + private String timeRange; + + /** + * 延迟数量 + */ + private Long delayCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getTimeRange() { + return timeRange; + } + + public void setTimeRange(String timeRange) { + this.timeRange = timeRange; + } + + public Long getDelayCount() { + return delayCount; + } + + public void setDelayCount(Long delayCount) { + this.delayCount = delayCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("timeRange", getTimeRange()) + .append("delayCount", getDelayCount()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/DataConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/DataConfig.java new file mode 100644 index 00000000..8ca2830e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/DataConfig.java @@ -0,0 +1,131 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Size; + +/** + * 参数配置表 tbl_sys_config + * + * @author admin + */ +public class DataConfig extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 参数主键 + */ + private Long configId; + + /** + * 版本号 + */ + private Long versionNum; + /** + * token锁 + */ + private String recToken; + + /** + * 参数名称 + */ + private String configName; + + /** + * 参数键名 + */ + private String configKey; + + /** + * 参数键值 + */ + private String configValue; + + /** + * 系统内置(Y是 N否) + */ + private String configType; + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + @NotBlank(message = "参数名称不能为空") + @Size(min = 0, max = 100, message = "参数名称不能超过100个字符") + public String getConfigName() { + return configName; + } + + public void setConfigName(String configName) { + this.configName = configName; + } + + @NotBlank(message = "参数键名长度不能为空") + @Size(min = 0, max = 100, message = "参数键名长度不能超过100个字符") + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + @NotBlank(message = "参数键值不能为空") + @Size(min = 0, max = 500, message = "参数键值长度不能超过500个字符") + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public String getConfigType() { + return configType; + } + + public void setConfigType(String configType) { + this.configType = configType; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("configId", getConfigId()) + .append("versionNum", getVersionNum()) + .append("recToken", getRecToken()) + .append("configName", getConfigName()) + .append("configKey", getConfigKey()) + .append("configValue", getConfigValue()) + .append("configType", getConfigType()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .append("remark", getRemark()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineInfo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineInfo.java new file mode 100644 index 00000000..5dd0855d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineInfo.java @@ -0,0 +1,62 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 线路基础信息对象 tbl_prd_base_line + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 线路名称 */ + private String lineName; + + /** 6位线路编码 */ + private String lineCode; + + /** 五位线路编码 */ + private String lineNo; + + public void setLineName(String lineName) + { + this.lineName = lineName; + } + + public String getLineName() + { + return lineName; + } + public void setLineCode(String lineCode) + { + this.lineCode = lineCode; + } + + public String getLineCode() + { + return lineCode; + } + public void setLineNo(String lineNo) + { + this.lineNo = lineNo; + } + + public String getLineNo() + { + return lineNo; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("lineName", getLineName()) + .append("lineCode", getLineCode()) + .append("lineNo", getLineNo()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricDay.java new file mode 100644 index 00000000..d61220ea --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricDay.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 统计时间段内的线路客流量对象 tbl_prd_line_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("lineStatus", getLineStatus()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("serviceType", getServiceType()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHour.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHour.java new file mode 100644 index 00000000..6b5a4464 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHour.java @@ -0,0 +1,181 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 线路小时客流量统计对象 tbl_prd_line_metric_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricHour extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标小时 + */ + private Long metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * $column.columnComment + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Long getMetricHour() { + return metricHour; + } + + public void setMetricHour(Long metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("lineStatus", getLineStatus()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("serviceType", getServiceType()) + .append("metricHour", getMetricHour()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHourEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHourEntity.java new file mode 100644 index 00000000..c1771d3a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricHourEntity.java @@ -0,0 +1,125 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import java.io.Serializable; +import java.util.Date; + +/** + * 统计时间段内的线路客流量(LineMetricHour)实体类 + * + * @author makejava + * @since 2023-07-13 20:05:55 + */ +public class LineMetricHourEntity implements Serializable { + private static final long serialVersionUID = 699515881208701549L; + /** + * 六位线路编码 + */ + private String lineCode; + /** + * 线路名称 + */ + private String lineName; + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + /** + * 营运公司名称 + */ + private String companyName; + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + /** + * 指标小时 + */ + private Integer metricHour; + /** + * 指标日期 + */ + private Date metricDate; + /** + * 指标 + */ + private Integer metricValue; + + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Integer getMetricValue() { + return metricValue; + } + + public void setMetricValue(Integer metricValue) { + this.metricValue = metricValue; + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricMonth.java new file mode 100644 index 00000000..e073ec63 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineMetricMonth.java @@ -0,0 +1,162 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 线路月客流量统计对象 tbl_prd_line_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineMetricMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路状态 0表示暂停营运、1表示启用、2表示撤销 + */ + private String lineStatus; + + /** + * 公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司) + */ + private String companyCode; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 营运模式 1:高峰线、3:全日线、4:夜宵线 + */ + private String serviceType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public String getServiceType() { + return serviceType; + } + + public void setServiceType(String serviceType) { + this.serviceType = serviceType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("lineStatus", getLineStatus()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("serviceType", getServiceType()) + .append("metricMonth", getMetricMonth()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationInfo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationInfo.java new file mode 100644 index 00000000..17b054b5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationInfo.java @@ -0,0 +1,102 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang.builder.ToStringBuilder; +import org.apache.commons.lang.builder.ToStringStyle; + +/** + * 站点基础信息对象 tbl_prd_base_line_station + * + * @author ruoyi + * @date 2023-09-19 + */ +public class LineStationInfo extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 六位线路编码 */ + private String lineCode; + + /** 线路名称 */ + private String lineName; + + /** 方向 */ + private String up; + + /** 站序 */ + private Long levels; + + /** 站点名称 */ + private String levelName; + + /** 五位线路编码 */ + private String lineNo; + + public void setLineCode(String lineCode) + { + this.lineCode = lineCode; + } + + public String getLineCode() + { + return lineCode; + } + public void setLineName(String lineName) + { + this.lineName = lineName; + } + + public String getLineName() + { + return lineName; + } + public void setUp(String up) + { + this.up = up; + } + + public String getUp() + { + return up; + } + public void setLevels(Long levels) + { + this.levels = levels; + } + + public Long getLevels() + { + return levels; + } + public void setLevelName(String levelName) + { + this.levelName = levelName; + } + + public String getLevelName() + { + return levelName; + } + public void setLineNo(String lineNo) + { + this.lineNo = lineNo; + } + + public String getLineNo() + { + return lineNo; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("levelName", getLevelName()) + .append("lineNo", getLineNo()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricDay.java new file mode 100644 index 00000000..a40273e5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricDay.java @@ -0,0 +1,153 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 站点日客流量统计对象 tbl_prd_line_station_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levelName", getLevelName()) + .append("levels", getLevels()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricHour.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricHour.java new file mode 100644 index 00000000..833b9b67 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricHour.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 站点小时客流量统计对象 tbl_prd_line_station_metric_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationMetricHour extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 指标小时 + */ + private Integer metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("levelName", getLevelName()) + .append("metricHour", getMetricHour()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricMonth.java new file mode 100644 index 00000000..0bc36d2c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationMetricMonth.java @@ -0,0 +1,148 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 站点月客流量统计对象 tbl_prd_line_station_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationMetricMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("levelName", getLevelName()) + .append("metricMonth", getMetricMonth()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransDay.java new file mode 100644 index 00000000..509d7f13 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransDay.java @@ -0,0 +1,164 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日换乘客流量统计对象 tbl_prd_line_station_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationTransDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘类型 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "LineStationTransDay{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransHour.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransHour.java new file mode 100644 index 00000000..495b610a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransHour.java @@ -0,0 +1,178 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点小时换乘客流量统计对象 tbl_prd_line_station_trans_hour + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationTransHour extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标小时 + */ + private Integer metricHour; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Integer getMetricHour() { + return metricHour; + } + + public void setMetricHour(Integer metricHour) { + this.metricHour = metricHour; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "LineStationTransHour{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricHour=" + metricHour + + ", metricDate=" + metricDate + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransMonth.java new file mode 100644 index 00000000..932fc585 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/LineStationTransMonth.java @@ -0,0 +1,159 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +/** + * 站点月换乘客流量统计对象 tbl_prd_line_station_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class LineStationTransMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return "LineStationTransMonth{" + + "lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", up='" + up + '\'' + + ", levels=" + levels + + ", exchangeType='" + exchangeType + '\'' + + ", metricMonth='" + metricMonth + '\'' + + ", metricValue=" + metricValue + + ", lineNo='" + lineNo + '\'' + + ", levelName='" + levelName + '\'' + + ", id=" + id + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/MetadataSourceEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/MetadataSourceEntity.java new file mode 100644 index 00000000..7aefe454 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/MetadataSourceEntity.java @@ -0,0 +1,201 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + *

+ * 数据源信息表 + *

+ */ +public class MetadataSourceEntity implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private Long sourceId; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** + * 创建人 + */ + private String createBy; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** + * 更新人 + */ + private String updateBy; + + /** + * 状态(0不启用,1启用) + */ + private String status; + + /** + * 备注 + */ + private String remark; + + /** + * 数据源类型 + */ + private String dbType; + + /** + * 数据源名称 + */ + private String sourceName; + + /** + * 元数据同步(0否,1同步中, 2是) + */ + private String isSync; + + /** + * 数据源连接信息 + */ + private String dbSchema; + + /** + * 创建人所属部门 + */ + private String createDept; + + /** + * 版本号 + */ + private Long version; + + /** + * 验证token + */ + private String recToken; + + public Long getSourceId() { + return sourceId; + } + + public void setSourceId(Long sourceId) { + this.sourceId = sourceId; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getRemark() { + return remark; + } + + public void setRemark(String remark) { + this.remark = remark; + } + + public String getDbType() { + return dbType; + } + + public void setDbType(String dbType) { + this.dbType = dbType; + } + + public String getSourceName() { + return sourceName; + } + + public void setSourceName(String sourceName) { + this.sourceName = sourceName; + } + + public String getIsSync() { + return isSync; + } + + public void setIsSync(String isSync) { + this.isSync = isSync; + } + + public String getDbSchema() { + return dbSchema; + } + + public void setDbSchema(String dbSchema) { + this.dbSchema = dbSchema; + } + + public String getCreateDept() { + return createDept; + } + + public void setCreateDept(String createDept) { + this.createDept = createDept; + } + + public Long getVersion() { + return version; + } + + public void setVersion(Long version) { + this.version = version; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgApiAuth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgApiAuth.java new file mode 100644 index 00000000..c3e1304a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgApiAuth.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import java.io.Serializable; + +/** + * 【机构接口权限表】(OrgApiAuth)实体类 + * + * @author makejava + * @since 2023-07-13 16:03:55 + */ +public class OrgApiAuth implements Serializable { + private static final long serialVersionUID = -83419851209972540L; + /** + * 【ID】 + */ + private Long id; + /** + * 【机构号】 + */ + private String orgNo; + /** + * 【接口API ID】 + */ + private Long apiId; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgConfig.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgConfig.java new file mode 100644 index 00000000..8cc26433 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgConfig.java @@ -0,0 +1,152 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +/** + * 机构配置信息 + * + * @author yulei + **/ +public class OrgConfig extends BaseEntity { + + /** + * 主键ID + */ + private Long configId; + + /** + * 机构号 + */ + private String orgNo; + + /** + * data:config:start:time + * data:config:end:time + * 配置项 + */ + private String configKey; + + /** + * 配置说明 + */ + private String configDesc; + + /** + * 配置值 + */ + private String configValue; + /** + * 版本号 + */ + private Long versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 删除标识 + */ + private String delFlag; + + /** + * 状态 + */ + private String status; + + private String orgName; + + /** + * 会员号 + */ + private String memberId; + + public Long getConfigId() { + return configId; + } + + public void setConfigId(Long configId) { + this.configId = configId; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getConfigKey() { + return configKey; + } + + public void setConfigKey(String configKey) { + this.configKey = configKey; + } + + public String getConfigDesc() { + return configDesc; + } + + public void setConfigDesc(String configDesc) { + this.configDesc = configDesc; + } + + public String getConfigValue() { + return configValue; + } + + public void setConfigValue(String configValue) { + this.configValue = configValue; + } + + public Long getVersionNum() { + return versionNum; + } + + public void setVersionNum(Long versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgGatewayLog.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgGatewayLog.java new file mode 100644 index 00000000..bcf688e2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgGatewayLog.java @@ -0,0 +1,268 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.io.Serializable; +import java.util.Date; + +/** + * 网关访问日志对象 tbl_org_gateway_log + * + * @author yulei + * @date 2023-06-19 + */ +public class OrgGatewayLog implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 【主键】 + */ + private String logId; + + /** + * 【请求流水号】 + */ + private String reqNo; + + /** + * 【服务id】 + */ + private String apiId; + + /** + * 【服务名称】 + */ + private String apiName; + + /** + * 【服务编码】 + */ + private String apiCode; + + /** + * 【状态】 + */ + private String status; + + /** + * 【请求时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date reqTime; + + /** + * 【请求ip地址】 + */ + private String reqIp; + + /** + * 【请求报文】 + */ + private String reqJson; + + /** + * 【返回报文】 + */ + private String resJson; + + /** + * 【耗时】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date consumingTime; + + /** + * 【 创建用户】 + */ + private String createByName; + + /** + * 【更新用户】 + */ + private String updateByName; + + /** + * 【版本号】 + */ + private String versionNum; + + /** + * 【随机码】 + */ + private String recToken; + + /** + * 创建时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date createTime; + + /** + * 创建人 + */ + private String createBy; + + /** + * 更新时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date updateTime; + + /** + * 更新人 + */ + private String updateBy; + + public String getLogId() { + return logId; + } + + public void setLogId(String logId) { + this.logId = logId; + } + + public String getReqNo() { + return reqNo; + } + + public void setReqNo(String reqNo) { + this.reqNo = reqNo; + } + + public String getApiId() { + return apiId; + } + + public void setApiId(String apiId) { + this.apiId = apiId; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Date getReqTime() { + return reqTime; + } + + public void setReqTime(Date reqTime) { + this.reqTime = reqTime; + } + + public String getReqIp() { + return reqIp; + } + + public void setReqIp(String reqIp) { + this.reqIp = reqIp; + } + + public String getReqJson() { + return reqJson; + } + + public void setReqJson(String reqJson) { + this.reqJson = reqJson; + } + + public String getResJson() { + return resJson; + } + + public void setResJson(String resJson) { + this.resJson = resJson; + } + + public Date getConsumingTime() { + return consumingTime; + } + + public void setConsumingTime(Date consumingTime) { + this.consumingTime = consumingTime; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfo.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfo.java new file mode 100644 index 00000000..ca31f50f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfo.java @@ -0,0 +1,293 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import java.io.Serializable; +import java.util.Date; + +/** + * 【机构管理信息表】(OrgInfo)实体类 + * + * @author makejava + * @since 2023-07-13 16:03:58 + */ +public class OrgInfo implements Serializable { + private static final long serialVersionUID = -91946210011377620L; + /** + * 【机构号】 + */ + private String orgNo; + /** + * 【机构名称】 + */ + private String orgName; + /** + * 【机构类型】 + */ + private String orgType; + /** + * 【机构描述】 + */ + private String orgDesc; + /** + * 【加盐】 + */ + private String salt; + /** + * 【加密】 + */ + private String encrypt; + /** + * 【生效时间】 + */ + private Date startTime; + /** + * 【到期时间】 + */ + private Date endTime; + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + /** + * 【版本号】 + */ + private Integer versionNum; + /** + * 【随机码】 + */ + private String recToken; + /** + * 【创建者】 + */ + private String createBy; + /** + * 创建人 + */ + private String createByName; + /** + * 【创建时间】 + */ + private Date createTime; + /** + * 【更新者】 + */ + private String updateBy; + /** + * 更新人 + */ + private String updateByName; + /** + * 【更新时间】 + */ + private Date updateTime; + /** + * 【删除标志】0代表存在 2代表删除 + */ + private String delFlag; + /** + * 【ip白名单】 + */ + private String ip; + /** + * 【联系人电话】 + */ + private String contractTel; + /** + * 数据起始时间 + */ + private Date dataBegin; + /** + * 数据结束时间 + */ + private Date dataEnd; + /** + * 【用户ID】 + */ + private Long userId; + + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public Integer getVersionNum() { + return versionNum; + } + + public void setVersionNum(Integer versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getCreateBy() { + return createBy; + } + + public void setCreateBy(String createBy) { + this.createBy = createBy; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public Date getCreateTime() { + return createTime; + } + + public void setCreateTime(Date createTime) { + this.createTime = createTime; + } + + public String getUpdateBy() { + return updateBy; + } + + public void setUpdateBy(String updateBy) { + this.updateBy = updateBy; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public Date getUpdateTime() { + return updateTime; + } + + public void setUpdateTime(Date updateTime) { + this.updateTime = updateTime; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public Date getDataBegin() { + return dataBegin; + } + + public void setDataBegin(Date dataBegin) { + this.dataBegin = dataBegin; + } + + public Date getDataEnd() { + return dataEnd; + } + + public void setDataEnd(Date dataEnd) { + this.dataEnd = dataEnd; + } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfoEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfoEntity.java new file mode 100644 index 00000000..19295240 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgInfoEntity.java @@ -0,0 +1,269 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 【机构管理信息】对象 tbl_org_info + * + * @author yulei + * @date 2023-06-16 + */ +public class OrgInfoEntity extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 【机构号】 + */ + private String orgNo; + + /** + * 【机构名称】 + */ + private String orgName; + + /** + * 【机构类型】 + */ + private String orgType; + + /** + * 【机构描述】 + */ + private String orgDesc; + + /** + * 【加盐】 + */ + private String salt; + + /** + * 【加密】 + */ + private String encrypt; + + /** + * 【生效时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 【到期时间】 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date endTime; + + /** + * 【状态】0正常 1停用 2到期 + */ + private String status; + + /** + * 【版本号】 + */ + private String versionNum; + + /** + * 【随机码】 + */ + private String recToken; + + /** + * 创建人 + */ + private String createByName; + + /** + * 更新人 + */ + private String updateByName; + + /** + * 【删除标志】0代表存在 2代表删除 + */ + private String delFlag; + + + /** + * 【ip白名单】 + */ + private String ip; + + /** + * 【联系人电话】 + */ + private String contractTel; + + /** + * 数据起始时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date dataBegin; + + /** + * 数据结束时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date dataEnd; + + /** + * 会员Id + */ + private String memberId; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public String getOrgType() { + return orgType; + } + + public void setOrgType(String orgType) { + this.orgType = orgType; + } + + public String getOrgDesc() { + return orgDesc; + } + + public void setOrgDesc(String orgDesc) { + this.orgDesc = orgDesc; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } + + public String getEncrypt() { + return encrypt; + } + + public void setEncrypt(String encrypt) { + this.encrypt = encrypt; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getEndTime() { + return endTime; + } + + public void setEndTime(Date endTime) { + this.endTime = endTime; + } + + public String getStatus() { + return status; + } + + public void setStatus(String status) { + this.status = status; + } + + public String getVersionNum() { + return versionNum; + } + + public void setVersionNum(String versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getCreateByName() { + return createByName; + } + + public void setCreateByName(String createByName) { + this.createByName = createByName; + } + + public String getUpdateByName() { + return updateByName; + } + + public void setUpdateByName(String updateByName) { + this.updateByName = updateByName; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + public String getIp() { + return ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public String getContractTel() { + return contractTel; + } + + public void setContractTel(String contractTel) { + this.contractTel = contractTel; + } + + public Date getDataBegin() { + return dataBegin; + } + + public void setDataBegin(Date dataBegin) { + this.dataBegin = dataBegin; + } + + public Date getDataEnd() { + return dataEnd; + } + + public void setDataEnd(Date dataEnd) { + this.dataEnd = dataEnd; + } + + public String getMemberId() { + return memberId; + } + + public void setMemberId(String memberId) { + this.memberId = memberId; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgStatisticsEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgStatisticsEntity.java new file mode 100644 index 00000000..799e158e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/OrgStatisticsEntity.java @@ -0,0 +1,165 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 接口调用次数统计对象 tbl_org_statistics + * + * @author yulei + * @date 2023-06-16 + */ +public class OrgStatisticsEntity extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * id + */ + private Long id; + + /** + * 机构号 + */ + private String orgNo; + + /** + * 机构名 + */ + private String orgName; + + /** + * 接口id + */ + private Long apiId; + + /** + * 成功次数 + */ + private Integer successTotal; + + /** + * 失败次数 + */ + private Integer failTotal; + + /** + * 接口名称 + */ + private String apiName; + + /** + * 版本号 + */ + private Integer versionNum; + + /** + * 随机码 + */ + private String recToken; + + /** + * 是否删除【0否,1是】 + */ + private String delFlag; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } + + public String getOrgName() { + return orgName; + } + + public void setOrgName(String orgName) { + this.orgName = orgName; + } + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public Integer getSuccessTotal() { + return successTotal; + } + + public void setSuccessTotal(Integer successTotal) { + this.successTotal = successTotal; + } + + public Integer getFailTotal() { + return failTotal; + } + + public void setFailTotal(Integer failTotal) { + this.failTotal = failTotal; + } + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public Integer getVersionNum() { + return versionNum; + } + + public void setVersionNum(Integer versionNum) { + this.versionNum = versionNum; + } + + public String getRecToken() { + return recToken; + } + + public void setRecToken(String recToken) { + this.recToken = recToken; + } + + public String getDelFlag() { + return delFlag; + } + + public void setDelFlag(String delFlag) { + this.delFlag = delFlag; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("orgNo", getOrgNo()) + .append("orgName", getOrgName()) + .append("apiId", getApiId()) + .append("successTotal", getSuccessTotal()) + .append("failTotal", getFailTotal()) + .append("apiName", getApiName()) + .append("createTime", getCreateTime()) + .append("createBy", getCreateBy()) + .append("updateTime", getUpdateTime()) + .append("updateBy", getUpdateBy()) + .append("versionNum", getVersionNum()) + .append("recToken", getRecToken()) + .append("delFlag", getDelFlag()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/PosMatchRate.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/PosMatchRate.java new file mode 100644 index 00000000..a153ae8a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/PosMatchRate.java @@ -0,0 +1,98 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * Pos匹配率对象 tbl_qa_pos_match_rate + * + * @author shu_k + * @date 2023-09-20 + */ +public class PosMatchRate extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 交易数量 + */ + private Long tranNum; + + /** + * 匹配数量 + */ + private Long matchNum; + + /** + * 匹配率 + */ + private BigDecimal matchRate; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Long getTranNum() { + return tranNum; + } + + public void setTranNum(Long tranNum) { + this.tranNum = tranNum; + } + + public Long getMatchNum() { + return matchNum; + } + + public void setMatchNum(Long matchNum) { + this.matchNum = matchNum; + } + + public BigDecimal getMatchRate() { + return matchRate; + } + + public void setMatchRate(BigDecimal matchRate) { + this.matchRate = matchRate; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("tranNum", getTranNum()) + .append("matchNum", getMatchNum()) + .append("matchRate", getMatchRate()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteDailyCount.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteDailyCount.java new file mode 100644 index 00000000..7674629d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteDailyCount.java @@ -0,0 +1,97 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 日营运线路条数对象 tbl_qa_route_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteDailyCount extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 营运公司名称 + */ + private String companyName; + + /** + * 线路数量 + */ + private Long routeCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 运营公司编码 + */ + private String companyCode; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getRouteCount() { + return routeCount; + } + + public void setRouteCount(Long routeCount) { + this.routeCount = routeCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("companyName", getCompanyName()) + .append("routeCount", getRouteCount()) + .append("txnDate", getTxnDate()) + .append("companyCode", getCompanyCode()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMetricDay.java new file mode 100644 index 00000000..7c8eb280 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMetricDay.java @@ -0,0 +1,225 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 班次日客流量统计对象 tbl_prd_route_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class RouteMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 司机工号 + */ + private String driverCode; + + /** + * 起点 + */ + private String startStation; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date startTime; + + /** + * 终点 + */ + private String endStation; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD_HH_MM_SS,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 路单类型 + */ + private String waybillType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getWaybillType() { + return waybillType; + } + + public void setWaybillType(String waybillType) { + this.waybillType = waybillType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("licensePlate", getLicensePlate()) + .append("driverCode", getDriverCode()) + .append("startStation", getStartStation()) + .append("startTime", getStartTime()) + .append("endStation", getEndStation()) + .append("arrivalTime", getArrivalTime()) + .append("waybillType", getWaybillType()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMiss.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMiss.java new file mode 100644 index 00000000..b22cbb2b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteMiss.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 班次缺失率对象 tbl_qa_route_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteMiss extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** 主键Id */ + private Long id; + + /** 缺失率 */ + private BigDecimal missRate; + + /** 日期 */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** 电子路单数量班次 */ + private Long routeCount; + + /** 调离站班次数量 */ + private Long busStopCount; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + public void setMissRate(BigDecimal missRate) + { + this.missRate = missRate; + } + + public BigDecimal getMissRate() + { + return missRate; + } + public void setTxnDate(Date txnDate) + { + this.txnDate = txnDate; + } + + public Date getTxnDate() + { + return txnDate; + } + public void setRouteCount(Long routeCount) + { + this.routeCount = routeCount; + } + + public Long getRouteCount() + { + return routeCount; + } + public void setBusStopCount(Long busStopCount) + { + this.busStopCount = busStopCount; + } + + public Long getBusStopCount() + { + return busStopCount; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("missRate", getMissRate()) + .append("txnDate", getTxnDate()) + .append("routeCount", getRouteCount()) + .append("busStopCount", getBusStopCount()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteTurnoverTime.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteTurnoverTime.java new file mode 100644 index 00000000..c58fbb94 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/RouteTurnoverTime.java @@ -0,0 +1,125 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 班次周转时间对象 tbl_qa_route_turnover_time + * + * @author shu_k + * @date 2023-09-20 + */ +public class RouteTurnoverTime extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 平均周转时间 + */ + private Long turnoverTime; + + /** + * 早晚高峰名称 + */ + private String hlowPeakName; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public Long getTurnoverTime() { + return turnoverTime; + } + + public void setTurnoverTime(Long turnoverTime) { + this.turnoverTime = turnoverTime; + } + + public String getHlowPeakName() { + return hlowPeakName; + } + + public void setHlowPeakName(String hlowPeakName) { + this.hlowPeakName = hlowPeakName; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("turnoverTime", getTurnoverTime()) + .append("hlowPeakName", getHlowPeakName()) + .append("wayBillType", getWayBillType()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricDay.java new file mode 100644 index 00000000..74ac5d39 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricDay.java @@ -0,0 +1,167 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 站点日常乘客客流量统计对象 tbl_prd_station_freq_metric_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("lineStatus", getLineStatus()) + .append("metricDate", getMetricDate()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("levelName", getLevelName()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonth.java new file mode 100644 index 00000000..d947acc7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonth.java @@ -0,0 +1,162 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +/** + * 站点月换乘客流量统计对象 tbl_prd_station_freq_metric_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqMetricMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("lineCode", getLineCode()) + .append("lineName", getLineName()) + .append("up", getUp()) + .append("levels", getLevels()) + .append("lineStatus", getLineStatus()) + .append("metricMonth", getMetricMonth()) + .append("metricValue", getMetricValue()) + .append("createTime", getCreateTime()) + .append("lineNo", getLineNo()) + .append("levelName", getLevelName()) + .append("id", getId()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonthEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonthEntity.java new file mode 100644 index 00000000..7c292eaf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqMetricMonthEntity.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +/** + * @ClassName : StationFreqMetricMonthEntity + * @Description : + * @Author : sky + * @Date: 2023-07-13 11:00 + */ +public class StationFreqMetricMonthEntity { + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private int levels; + + /** + * 线路状态 + */ + private String lineStatus; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private int metricValue; + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLineName() { + return lineName; + } + + public void setUp(String up) { + this.up = up; + } + + public String getUp() { + return up; + } + + public void setLevels(int levels) { + this.levels = levels; + } + + public int getLevels() { + return levels; + } + + public void setLineStatus(String lineStatus) { + this.lineStatus = lineStatus; + } + + public String getLineStatus() { + return lineStatus; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricValue(int metricValue) { + this.metricValue = metricValue; + } + + public int getMetricValue() { + return metricValue; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransDay.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransDay.java new file mode 100644 index 00000000..66fcf6d0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransDay.java @@ -0,0 +1,149 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_day + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransDay extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 线路状态 + */ + private String exchangeType; + + /** + * 指标日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date metricDate; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public Date getMetricDate() { + return metricDate; + } + + public void setMetricDate(Date metricDate) { + this.metricDate = metricDate; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransMonth.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransMonth.java new file mode 100644 index 00000000..0bafa7e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationFreqTransMonth.java @@ -0,0 +1,144 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; + +/** + * 站点日常乘客换乘客流量统计对象 tbl_prd_station_freq_trans_month + * + * @author shu_k + * @date 2023-09-19 + */ +public class StationFreqTransMonth extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 六位线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 线路行车方向 上行为0 下行为1 + */ + private String up; + + /** + * 站级序号 + */ + private Long levels; + + /** + * 换乘标识 + */ + private String exchangeType; + + /** + * 指标月份 + */ + private String metricMonth; + + /** + * 指标 + */ + private Long metricValue; + + /** + * 五位线路编码 + */ + private String lineNo; + + /** + * 站级名称 + */ + private String levelName; + + /** + * 主键ID + */ + private Long id; + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public Long getLevels() { + return levels; + } + + public void setLevels(Long levels) { + this.levels = levels; + } + + public String getExchangeType() { + return exchangeType; + } + + public void setExchangeType(String exchangeType) { + this.exchangeType = exchangeType; + } + + public String getMetricMonth() { + return metricMonth; + } + + public void setMetricMonth(String metricMonth) { + this.metricMonth = metricMonth; + } + + public Long getMetricValue() { + return metricValue; + } + + public void setMetricValue(Long metricValue) { + this.metricValue = metricValue; + } + + public String getLineNo() { + return lineNo; + } + + public void setLineNo(String lineNo) { + this.lineNo = lineNo; + } + + public String getLevelName() { + return levelName; + } + + public void setLevelName(String levelName) { + this.levelName = levelName; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationMiss.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationMiss.java new file mode 100644 index 00000000..ce91c52c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/StationMiss.java @@ -0,0 +1,265 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 站点缺失率对象 tbl_qa_station_miss + * + * @author shu_k + * @date 2023-09-20 + */ +public class StationMiss extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 线路编码 + */ + private String lineCode; + + /** + * 线路名称 + */ + private String lineName; + + /** + * 车辆牌照 + */ + private String licensePlate; + + /** + * 驾驶员工号 + */ + private String driverCode; + + /** + * 发车时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date startTime; + + /** + * 到达时间 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date arrivalTime; + + /** + * 起点 + */ + private String startStation; + + /** + * 终点 + */ + private String endStation; + + /** + * 上下行 + */ + private String up; + + /** + * 路单类型 + */ + private String wayBillType; + + /** + * 起点站级 + */ + private Long startStationLevels; + + /** + * 终点站级 + */ + private Long endStationLevels; + + /** + * 班次站点数 + */ + private Long levelNum; + + /** + * 车辆到离站数 + */ + private Long busStopNum; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + /** + * 缺失率 + */ + private BigDecimal missRate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getLineCode() { + return lineCode; + } + + public void setLineCode(String lineCode) { + this.lineCode = lineCode; + } + + public String getLineName() { + return lineName; + } + + public void setLineName(String lineName) { + this.lineName = lineName; + } + + public String getLicensePlate() { + return licensePlate; + } + + public void setLicensePlate(String licensePlate) { + this.licensePlate = licensePlate; + } + + public String getDriverCode() { + return driverCode; + } + + public void setDriverCode(String driverCode) { + this.driverCode = driverCode; + } + + public Date getStartTime() { + return startTime; + } + + public void setStartTime(Date startTime) { + this.startTime = startTime; + } + + public Date getArrivalTime() { + return arrivalTime; + } + + public void setArrivalTime(Date arrivalTime) { + this.arrivalTime = arrivalTime; + } + + public String getStartStation() { + return startStation; + } + + public void setStartStation(String startStation) { + this.startStation = startStation; + } + + public String getEndStation() { + return endStation; + } + + public void setEndStation(String endStation) { + this.endStation = endStation; + } + + public String getUp() { + return up; + } + + public void setUp(String up) { + this.up = up; + } + + public String getWayBillType() { + return wayBillType; + } + + public void setWayBillType(String wayBillType) { + this.wayBillType = wayBillType; + } + + public Long getStartStationLevels() { + return startStationLevels; + } + + public void setStartStationLevels(Long startStationLevels) { + this.startStationLevels = startStationLevels; + } + + public Long getEndStationLevels() { + return endStationLevels; + } + + public void setEndStationLevels(Long endStationLevels) { + this.endStationLevels = endStationLevels; + } + + public Long getLevelNum() { + return levelNum; + } + + public void setLevelNum(Long levelNum) { + this.levelNum = levelNum; + } + + public Long getBusStopNum() { + return busStopNum; + } + + public void setBusStopNum(Long busStopNum) { + this.busStopNum = busStopNum; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + public BigDecimal getMissRate() { + return missRate; + } + + public void setMissRate(BigDecimal missRate) { + this.missRate = missRate; + } + + @Override + public String toString() { + return "StationMiss{" + + "id=" + id + + ", lineCode='" + lineCode + '\'' + + ", lineName='" + lineName + '\'' + + ", licensePlate='" + licensePlate + '\'' + + ", driverCode='" + driverCode + '\'' + + ", startTime=" + startTime + + ", arrivalTime=" + arrivalTime + + ", startStation='" + startStation + '\'' + + ", endStation='" + endStation + '\'' + + ", up='" + up + '\'' + + ", wayBillType='" + wayBillType + '\'' + + ", startStationLevels=" + startStationLevels + + ", endStationLevels=" + endStationLevels + + ", levelNum=" + levelNum + + ", busStopNum=" + busStopNum + + ", txnDate=" + txnDate + + ", missRate=" + missRate + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/SyncRecord.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/SyncRecord.java new file mode 100644 index 00000000..1373877e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/SyncRecord.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 客流表文件对象 tbl_prd_sync_record + * + * @author shu_kai + * @date 2023-09-26 + */ +public class SyncRecord extends BaseEntity { + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + private Long id; + + /** + * 相对路径-包含文件名 + */ + private String path; + + /** + * hive表名 + */ + private String tableName; + + /** + * 文件总记录数 + */ + private Long count; + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD, timezone = "GMT+8") + private Date txnData; + + private String dataStatus; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getPath() { + return path; + } + + public void setPath(String path) { + this.path = path; + } + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public Long getCount() { + return count; + } + + public void setCount(Long count) { + this.count = count; + } + + public Date getTxnData() { + return txnData; + } + + public void setTxnData(Date txnData) { + this.txnData = txnData; + } + + public String getDataStatus() { + return dataStatus; + } + + public void setDataStatus(String dataStatus) { + this.dataStatus = dataStatus; + } + + @Override + public String toString() { + return "SyncRecord{" + + "id=" + id + + ", path='" + path + '\'' + + ", tableName='" + tableName + '\'' + + ", count=" + count + + ", txnData=" + txnData + + ", dataStatus='" + dataStatus + '\'' + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/TblDataUserApi.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/TblDataUserApi.java new file mode 100644 index 00000000..026c140e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/TblDataUserApi.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; + + +/** + * 我的应用 - 用户API + * 四个表联合查询的结果 + * tbl_org_info + * tbl_org_api_auth + * tbl_org_config + * tbl_data_api + */ +public class TblDataUserApi extends DataApiResponse { + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/VehicleDailyCount.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/VehicleDailyCount.java new file mode 100644 index 00000000..a52eba4d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/VehicleDailyCount.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseEntity; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.util.Date; + +/** + * 日营运车辆数对象 tbl_qa_vehicle_daily_count + * + * @author shu_k + * @date 2023-09-20 + */ +public class VehicleDailyCount extends BaseEntity { + + /** + * 主键ID + */ + private Long id; + + /** + * 公司编码 + */ + private String companyCode; + + /** + * 公司名称 + */ + private String companyName; + + /** + * 车辆数 + */ + private Long vehicleCount; + + /** + * 日期 + */ + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD,timezone = "GMT+8") + private Date txnDate; + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getCompanyCode() { + return companyCode; + } + + public void setCompanyCode(String companyCode) { + this.companyCode = companyCode; + } + + public String getCompanyName() { + return companyName; + } + + public void setCompanyName(String companyName) { + this.companyName = companyName; + } + + public Long getVehicleCount() { + return vehicleCount; + } + + public void setVehicleCount(Long vehicleCount) { + this.vehicleCount = vehicleCount; + } + + public Date getTxnDate() { + return txnDate; + } + + public void setTxnDate(Date txnDate) { + this.txnDate = txnDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("companyCode", getCompanyCode()) + .append("companyName", getCompanyName()) + .append("vehicleCount", getVehicleCount()) + .append("txnDate", getTxnDate()) + .append("createTime", getCreateTime()) + .toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/ApiLogTime.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/ApiLogTime.java new file mode 100644 index 00000000..4a730bd7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/ApiLogTime.java @@ -0,0 +1,40 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity.extend; + +/** + * @ClassName : ApiLogTime + * @Description : 日志统计分布 + * @Author : sky + * @Date: 2023-09-05 19:18 + */ +public class ApiLogTime { + + private Long apiId; + + private Long count; + + private Long avgTime; + + public Long getApiId() { + return apiId; + } + + public void setApiId(Long apiId) { + this.apiId = apiId; + } + + public Long getCount() { + return count; + } + + public void setCount(Long count) { + this.count = count; + } + + public Long getAvgTime() { + return avgTime; + } + + public void setAvgTime(Long avgTime) { + this.avgTime = avgTime; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgApiEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgApiEntity.java new file mode 100644 index 00000000..fd3ff165 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgApiEntity.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity.extend; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; + +/** + * @ClassName : OrgApiEntity + * @Description : 机构接口权限列表 + * @Author : sky + * @Date: 2023-09-01 15:33 + */ +public class OrgApiEntity extends ApiEntity { + + private String orgNo; + + public String getOrgNo() { + return orgNo; + } + + public void setOrgNo(String orgNo) { + this.orgNo = orgNo; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgAuthEntity.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgAuthEntity.java new file mode 100644 index 00000000..845fb5b3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/entity/extend/OrgAuthEntity.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.entity.extend; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; + +/** + * @ClassName : OrgAuthEntity + * @Description : + * @Author : sky + * @Date: 2023-07-13 17:24 + */ +public class OrgAuthEntity extends OrgApiAuth { + + private String apiName; + + private String apiCode; + + public String getApiName() { + return apiName; + } + + public void setApiName(String apiName) { + this.apiName = apiName; + } + + public String getApiCode() { + return apiCode; + } + + public void setApiCode(String apiCode) { + this.apiCode = apiCode; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiLogMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiLogMapper.java new file mode 100644 index 00000000..5018f30e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiLogMapper.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.ApiLogTime; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * api调用日志 + */ +@Mapper +public interface ApiLogMapper { + + int insert(ApiLogEntity entity); + + List selectList(ApiLogEntity entity); + + ApiLogEntity getById(Long id); + + ApiLogTime countBy(ApiLogEntity entity); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiMapper.java new file mode 100644 index 00000000..5756ed23 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/ApiMapper.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgApiEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + *

+ * 数据API信息表 Mapper 接口 + *

+ */ +@Mapper +public interface ApiMapper { + + List selectListByStatus(String[] status); + + /** + * 查询结构的api列表 + * + * @param orgNo + * @return + */ + List selectOrgApi(String orgNo); + + int insert(ApiEntity apiEntity); + + int updateById(ApiEntity apiEntity); + + ApiEntity getById(Long id); + + int deleteById(ApiEntity entity); + + List selectList(ApiEntity entity); + + ApiEntity getByApiCode(String apiCode); + + /** + * 检测该api是否被引用 + * + * @param apiId + * @return + */ + int check(Long apiId); + + /** + * 获取会员API列表 + * + * @param memberId + * @return + */ + List getUserApi(String memberId); + + List getByIds(Long[] apiIds); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/BaseMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/BaseMapper.java new file mode 100644 index 00000000..e29f773f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/BaseMapper.java @@ -0,0 +1,28 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.common.core.BaseTime; +import org.apache.ibatis.annotations.Mapper; + +/** + * 统一序列接口,方便补全和拼接 + * + * @author zhouliang + */ +@Mapper +public interface BaseMapper { + + /** + * 获取序列-门户用户表 + * + * @return + */ + Long selectSeq(); + + /** + * 获取系统当前时间-yyyyMMddHHmmss + * + * @return + */ + BaseTime selectSysCurrentTime(); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/CentimeDelayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/CentimeDelayMapper.java new file mode 100644 index 00000000..1e463691 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/CentimeDelayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 延迟上送比率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface CentimeDelayMapper { + /** + * 查询延迟上送比率 + * + * @param id 延迟上送比率主键 + * @return 延迟上送比率 + */ + CentimeDelay selectCentimeDelayById(Long id); + + /** + * 查询延迟上送比率列表 + * + * @param centimeDelay 延迟上送比率 + * @return 延迟上送比率集合 + */ + List selectCentimeDelayList(CentimeDelay centimeDelay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/DataConfigMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/DataConfigMapper.java new file mode 100644 index 00000000..7be0329a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/DataConfigMapper.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.DataConfig; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 参数配置 数据层 + * + * @author admin + */ +@Mapper +public interface DataConfigMapper { + /** + * 查询参数配置信息 + * + * @param config 参数配置信息 + * @return 参数配置信息 + */ + DataConfig selectConfig(DataConfig config); + + /** + * 查询参数配置列表 + * + * @param config 参数配置信息 + * @return 参数配置集合 + */ + List selectConfigList(DataConfig config); + + /** + * 根据键名查询参数配置信息 + * + * @param configKey 参数键名 + * @return 参数配置信息 + */ + DataConfig checkConfigKeyUnique(String configKey); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineInfoMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineInfoMapper.java new file mode 100644 index 00000000..36604631 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineInfoMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineInfo; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路基础信息Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineInfoMapper { + /** + * 查询线路基础信息 + * + * @param lineName 线路基础信息主键 + * @return 线路基础信息 + */ + LineInfo selectLineInfoByLineName(String lineName); + + /** + * 查询线路基础信息列表 + * + * @param lineInfo 线路基础信息 + * @return 线路基础信息集合 + */ + List selectLineInfoList(LineInfo lineInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricDayMapper.java new file mode 100644 index 00000000..9b030156 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricDayMapper.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路每天客流宝量指标Mapper接口 + * + * @author shu_k + * @date 2023-09-18 + */ +@Mapper +public interface LineMetricDayMapper { + + /** + * 查询线路每天客流宝量指标列表 + * + * @param lineMetricDay 线路每天客流宝量指标 + * @return 线路每天客流宝量指标集合 + */ + List selectLineMetricDayList(LineMetricDay lineMetricDay); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricHourMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricHourMapper.java new file mode 100644 index 00000000..6dcca36e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricHourMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路小时客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineMetricHourMapper { + /** + * 查询线路小时客流量统计 + * + * @param id 线路小时客流量统计主键 + * @return 线路小时客流量统计 + */ + LineMetricHour selectlineMetricHourById(Long id); + + /** + * 查询线路小时客流量统计列表 + * + * @param lineMetricHour 线路小时客流量统计 + * @return 线路小时客流量统计集合 + */ + List selectlineMetricHourList(LineMetricHour lineMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricMonthMapper.java new file mode 100644 index 00000000..85917136 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineMetricMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 线路月客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineMetricMonthMapper { + /** + * 查询线路月客流量统计 + * + * @param id 线路月客流量统计主键 + * @return 线路月客流量统计 + */ + LineMetricMonth selectlineMetricMonthById(Long id); + + /** + * 查询线路月客流量统计列表 + * + * @param lineMetricMonth 线路月客流量统计 + * @return 线路月客流量统计集合 + */ + List selectlineMetricMonthList(LineMetricMonth lineMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationInfoMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationInfoMapper.java new file mode 100644 index 00000000..455a0485 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationInfoMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationInfo; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点基础信息Mapper接口 + * + * @author ruoyi + * @date 2023-09-19 + */ +@Mapper +public interface LineStationInfoMapper { + /** + * 查询站点基础信息 + * + * @param lineCode 站点基础信息主键 + * @return 站点基础信息 + */ + LineStationInfo selectLineStationInfoByLineCode(String lineCode); + + /** + * 查询站点基础信息列表 + * + * @param lineStationInfo 站点基础信息 + * @return 站点基础信息集合 + */ + List selectLineStationInfoList(LineStationInfo lineStationInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricDayMapper.java new file mode 100644 index 00000000..ebe4aa6c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationMetricDayMapper { + /** + * 查询站点日客流量统计 + * + * @param id 站点日客流量统计主键 + * @return 站点日客流量统计 + */ + LineStationMetricDay selectLineStationMetricDayById(Long id); + + /** + * 查询站点日客流量统计列表 + * + * @param lineStationMetricDay 站点日客流量统计 + * @return 站点日客流量统计集合 + */ + List selectLineStationMetricDayList(LineStationMetricDay lineStationMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricHourMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricHourMapper.java new file mode 100644 index 00000000..5bf0f44a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricHourMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点小时客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationMetricHourMapper { + /** + * 查询站点小时客流量统计 + * + * @param id 站点小时客流量统计主键 + * @return 站点小时客流量统计 + */ + LineStationMetricHour selectLineStationMetricHourById(Long id); + + /** + * 查询站点小时客流量统计列表 + * + * @param lineStationMetricHour 站点小时客流量统计 + * @return 站点小时客流量统计集合 + */ + List selectLineStationMetricHourList(LineStationMetricHour lineStationMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricMonthMapper.java new file mode 100644 index 00000000..b25d88f9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationMetricMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点月客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationMetricMonthMapper { + /** + * 查询站点月客流量统计 + * + * @param id 站点月客流量统计主键 + * @return 站点月客流量统计 + */ + LineStationMetricMonth selectLineStationMetricMonthById(Long id); + + /** + * 查询站点月客流量统计列表 + * + * @param lineStationMetricMonth 站点月客流量统计 + * @return 站点月客流量统计集合 + */ + List selectLineStationMetricMonthList(LineStationMetricMonth lineStationMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransDayMapper.java new file mode 100644 index 00000000..6eaaafe7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationTransDayMapper { + /** + * 查询站点日换乘客流量统计 + * + * @param id 站点日换乘客流量统计主键 + * @return 站点日换乘客流量统计 + */ + LineStationTransDay selectLineStationTransDayById(Long id); + + /** + * 查询站点日换乘客流量统计列表 + * + * @param lineStationTransDay 站点日换乘客流量统计 + * @return 站点日换乘客流量统计集合 + */ + List selectLineStationTransDayList(LineStationTransDay lineStationTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransHourMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransHourMapper.java new file mode 100644 index 00000000..f9fd6841 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransHourMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点小时换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationTransHourMapper { + /** + * 查询站点小时换乘客流量统计 + * + * @param id 站点小时换乘客流量统计主键 + * @return 站点小时换乘客流量统计 + */ + LineStationTransHour selectLineStationTransHourById(Long id); + + /** + * 查询站点小时换乘客流量统计列表 + * + * @param lineStationTransHour 站点小时换乘客流量统计 + * @return 站点小时换乘客流量统计集合 + */ + List selectLineStationTransHourList(LineStationTransHour lineStationTransHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransMonthMapper.java new file mode 100644 index 00000000..8426c6b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/LineStationTransMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点月换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface LineStationTransMonthMapper { + /** + * 查询站点月换乘客流量统计 + * + * @param id 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + LineStationTransMonth selectLineStationTransMonthById(Long id); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param lineStationTransMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectLineStationTransMonthList(LineStationTransMonth lineStationTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/MetadataSourceMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/MetadataSourceMapper.java new file mode 100644 index 00000000..89808865 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/MetadataSourceMapper.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; +import org.apache.ibatis.annotations.Mapper; + +/** + *

+ * 数据源信息表 Mapper 接口 + *

+ */ +@Mapper +public interface MetadataSourceMapper { + + MetadataSourceEntity getById(Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgConfigMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgConfigMapper.java new file mode 100644 index 00000000..16641eec --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgConfigMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 机构配置信息 + * + * @author yulei + **/ +@Mapper +public interface OrgConfigMapper { + + List getList(OrgConfig config); + + OrgConfig getById(Long configId); + + void insert(OrgConfig config); + + int updateById(OrgConfig config); + + void deleteById(Long configId); + + List getValueList(OrgConfig cfg); + + void deleteByEntity(OrgConfig config); + + void deleteByOrgNo(String orgNo); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgGatewayLogMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgGatewayLogMapper.java new file mode 100644 index 00000000..2847d9cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgGatewayLogMapper.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgGatewayLog; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 网关访问日志Mapper接口 + * + * @author yulei + * @date 2023-06-16 + */ +@Mapper +public interface OrgGatewayLogMapper { + /** + * 查询网关访问日志 + * + * @param logId 网关访问日志主键 + * @return 网关访问日志 + */ + OrgGatewayLog selectOrgGatewayLogByLogId(String logId); + + /** + * 查询网关访问日志列表 + * + * @param orgGatewayLog 网关访问日志 + * @return 网关访问日志集合 + */ + List selectOrgGatewayLogList(OrgGatewayLog orgGatewayLog); + + /** + * 新增网关访问日志 + * + * @param orgGatewayLog 网关访问日志 + * @return 结果 + */ + int insertOrgGatewayLog(OrgGatewayLog orgGatewayLog); + + /** + * 修改网关访问日志 + * + * @param orgGatewayLog 网关访问日志 + * @return 结果 + */ + int updateOrgGatewayLog(OrgGatewayLog orgGatewayLog); + + /** + * 删除网关访问日志 + * + * @param logId 网关访问日志主键 + * @return 结果 + */ + int deleteOrgGatewayLogByLogId(String logId); + + /** + * 批量删除网关访问日志 + * + * @param logIds 需要删除的数据主键集合 + * @return 结果 + */ + int deleteOrgGatewayLogByLogIds(String[] logIds); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgInfoMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgInfoMapper.java new file mode 100644 index 00000000..97c87c69 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgInfoMapper.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.Date; +import java.util.List; + +/** + * 【机构管理信息】Mapper接口 + * + * @author yulei + * @date 2023-06-16 + */ +@Mapper +public interface OrgInfoMapper { + /** + * 查询【机构管理信息】 + * + * @param orgNo 【机构管理信息】主键 + * @return 【机构管理信息】 + */ + OrgInfoEntity selectOrgInfoByOrgNo(String orgNo); + + /** + * 查询【机构管理信息】列表 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 【机构管理信息】集合 + */ + List selectOrgInfoList(OrgInfoEntity orgInfoEntity); + + /** + * 新增【机构管理信息】 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 结果 + */ + int insertOrgInfo(OrgInfoEntity orgInfoEntity); + + /** + * 修改【机构管理信息】 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 结果 + */ + int updateOrgInfo(OrgInfoEntity orgInfoEntity); + + /** + * 删除数据 + * + * @param infoEntity + */ + int delete(OrgInfoEntity infoEntity); + + /** + * 根据会员号获取机构信息 + * + * @param memberId + * @return + */ + OrgInfoEntity getByMemberId(String memberId); + + /** + * 获取到期时间 + * @param date + * @return + */ + List selectEndDate(String date); + + /** + * 获取到期时间之后的机构 + * @param date + * @return + */ + List afterEndDate(Date date); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgStatisticsMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgStatisticsMapper.java new file mode 100644 index 00000000..4fe24453 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/OrgStatisticsMapper.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 接口调用次数统计Mapper接口 + * + * @author yulei + * @date 2023-06-16 + */ +@Mapper +public interface OrgStatisticsMapper { + + /** + * 查询接口调用次数统计列表 + * + * @param orgStatistics 接口调用次数统计 + * @return 接口调用次数统计集合 + */ + List selectOrgStatisticsList(OrgStatisticsEntity orgStatistics); + + /** + * 新增接口调用次数统计 + * + * @param orgStatistics 接口调用次数统计 + * @return 结果 + */ + int insertOrgStatistics(OrgStatisticsEntity orgStatistics); + + /** + * 根据机构和apiId获取唯一机构号 + * @param vo + * @return + */ + OrgStatisticsEntity selectByApi(OrgStatisticsEntity vo); + + int increase(OrgStatisticsEntity orgStatistics); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/PosMatchRateMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/PosMatchRateMapper.java new file mode 100644 index 00000000..ea7248b3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/PosMatchRateMapper.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; +import org.apache.ibatis.annotations.Mapper; + +import java.math.BigDecimal; +import java.util.Date; +import java.util.List; + +/** + * Pos匹配率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface PosMatchRateMapper { + /** + * 查询Pos匹配率 + * + * @param id Pos匹配率主键 + * @return Pos匹配率 + */ + PosMatchRate selectPosMatchRateById(Long id); + + /** + * 查询Pos匹配率列表 + * + * @param posMatchRate Pos匹配率 + * @return Pos匹配率集合 + */ + List selectPosMatchRateList(PosMatchRate posMatchRate); + + + BigDecimal selectByDate(String txnDate); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteDailyCountMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteDailyCountMapper.java new file mode 100644 index 00000000..ffb7dff1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteDailyCountMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 日营运线路条数Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface RouteDailyCountMapper { + /** + * 查询日营运线路条数 + * + * @param id 日营运线路条数主键 + * @return 日营运线路条数 + */ + RouteDailyCount selectRouteDailyCountById(Long id); + + /** + * 查询日营运线路条数列表 + * + * @param routeDailyCount 日营运线路条数 + * @return 日营运线路条数集合 + */ + List selectRouteDailyCountList(RouteDailyCount routeDailyCount); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMetricDayMapper.java new file mode 100644 index 00000000..8196ad66 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMetricDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 班次日客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface RouteMetricDayMapper { + /** + * 查询班次日客流量统计 + * + * @param id 班次日客流量统计主键 + * @return 班次日客流量统计 + */ + RouteMetricDay selectRouteMetricDayById(Long id); + + /** + * 查询班次日客流量统计列表 + * + * @param routeMetricDay 班次日客流量统计 + * @return 班次日客流量统计集合 + */ + List selectRouteMetricDayList(RouteMetricDay routeMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMissMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMissMapper.java new file mode 100644 index 00000000..9696ff56 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteMissMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 班次缺失率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface RouteMissMapper { + /** + * 查询班次缺失率 + * + * @param id 班次缺失率主键 + * @return 班次缺失率 + */ + RouteMiss selectRouteMissById(Long id); + + /** + * 查询班次缺失率列表 + * + * @param routeMiss 班次缺失率 + * @return 班次缺失率集合 + */ + List selectRouteMissList(RouteMiss routeMiss); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteTurnoverTimeMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteTurnoverTimeMapper.java new file mode 100644 index 00000000..b3a91e00 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/RouteTurnoverTimeMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 班次周转时间Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface RouteTurnoverTimeMapper { + /** + * 查询班次周转时间 + * + * @param id 班次周转时间主键 + * @return 班次周转时间 + */ + RouteTurnoverTime selectRouteTurnoverTimeById(Long id); + + /** + * 查询班次周转时间列表 + * + * @param routeTurnoverTime 班次周转时间 + * @return 班次周转时间集合 + */ + List selectRouteTurnoverTimeList(RouteTurnoverTime routeTurnoverTime); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricDayMapper.java new file mode 100644 index 00000000..e14ae200 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日常乘客客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqMetricDayMapper { + /** + * 查询站点日常乘客客流量统计 + * + * @param id 站点日常乘客客流量统计主键 + * @return 站点日常乘客客流量统计 + */ + StationFreqMetricDay selectStationFreqMetricDayById(Long id); + + /** + * 查询站点日常乘客客流量统计列表 + * + * @param stationFreqMetricDay 站点日常乘客客流量统计 + * @return 站点日常乘客客流量统计集合 + */ + List selectStationFreqMetricDayList(StationFreqMetricDay stationFreqMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricMonthMapper.java new file mode 100644 index 00000000..83c823c0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqMetricMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点月换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqMetricMonthMapper { + /** + * 查询站点月换乘客流量统计 + * + * @param lineCode 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + StationFreqMetricMonth selectStationFreqMetricMonthByLineCode(String lineCode); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param stationFreqMetricMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectStationFreqMetricMonthList(StationFreqMetricMonth stationFreqMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransDayMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransDayMapper.java new file mode 100644 index 00000000..84b5cdb3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransDayMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqTransDayMapper { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransDay selectStationFreqTransDayById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransDay 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransDayList(StationFreqTransDay stationFreqTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransMonthMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransMonthMapper.java new file mode 100644 index 00000000..56e407bb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationFreqTransMonthMapper.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Mapper接口 + * + * @author shu_k + * @date 2023-09-19 + */ +@Mapper +public interface StationFreqTransMonthMapper { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransMonth selectStationFreqTransMonthById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransMonth 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransMonthList(StationFreqTransMonth stationFreqTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationMissMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationMissMapper.java new file mode 100644 index 00000000..7c63d095 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/StationMissMapper.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 站点缺失率Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface StationMissMapper { + /** + * 查询站点缺失率 + * + * @param id 站点缺失率主键 + * @return 站点缺失率 + */ + StationMiss selectStationMissById(Long id); + + /** + * 查询站点缺失率列表 + * + * @param stationMiss 站点缺失率 + * @return 站点缺失率集合 + */ + List selectStationMissList(StationMiss stationMiss); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/SyncRecordMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/SyncRecordMapper.java new file mode 100644 index 00000000..e14e4ed3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/SyncRecordMapper.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 客流表文件Mapper接口 + * + * @author shu_kai + * @date 2023-09-26 + */ +@Mapper +public interface SyncRecordMapper { + + /** + * 查询客流表文件列表 + * + * @param syncRecord 客流表文件 + * @return 客流表文件集合 + */ + List selectSyncRecordList(SyncRecord syncRecord); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/VehicleDailyCountMapper.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/VehicleDailyCountMapper.java new file mode 100644 index 00000000..bce99eab --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/dao/mapper/VehicleDailyCountMapper.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.dao.mapper; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 日营运车辆数Mapper接口 + * + * @author shu_k + * @date 2023-09-20 + */ +@Mapper +public interface VehicleDailyCountMapper { + /** + * 查询日营运车辆数 + * + * @param id 日营运车辆数主键 + * @return 日营运车辆数 + */ + VehicleDailyCount selectVehicleDailyCountById(Long id); + + /** + * 查询日营运车辆数列表 + * + * @param vehicleDailyCount 日营运车辆数 + * @return 日营运车辆数集合 + */ + List selectVehicleDailyCountList(VehicleDailyCount vehicleDailyCount); + + /** + * 统计车辆数 + * @param req + * @return + */ + Long countBus(VehicleDailyCount req); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DataSourceFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DataSourceFactory.java new file mode 100644 index 00000000..b0006174 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DataSourceFactory.java @@ -0,0 +1,12 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +public interface DataSourceFactory { + + /** + * 创建数据源实例 + * + * @param property + * @return + */ + DbQuery createDbQuery(DbQueryProperty property); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbColumn.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbColumn.java new file mode 100644 index 00000000..5ec1fb70 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbColumn.java @@ -0,0 +1,134 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +public class DbColumn { + + /** + * 列名 + */ + private String colName; + + /** + * 数据类型 + */ + private String dataType; + + /** + * 数据长度 + */ + private String dataLength; + + /** + * 数据精度 + */ + private String dataPrecision; + + /** + * 数据小数位 + */ + private String dataScale; + + /** + * 是否主键 + */ + private Boolean colKey; + + /** + * 是否允许为空 + */ + private Boolean nullable; + + /** + * 列的序号 + */ + private Integer colPosition; + + /** + * 列默认值 + */ + private String dataDefault; + + /** + * 列注释 + */ + private String colComment; + + public String getColName() { + return colName; + } + + public void setColName(String colName) { + this.colName = colName; + } + + public String getDataType() { + return dataType; + } + + public void setDataType(String dataType) { + this.dataType = dataType; + } + + public String getDataLength() { + return dataLength; + } + + public void setDataLength(String dataLength) { + this.dataLength = dataLength; + } + + public String getDataPrecision() { + return dataPrecision; + } + + public void setDataPrecision(String dataPrecision) { + this.dataPrecision = dataPrecision; + } + + public String getDataScale() { + return dataScale; + } + + public void setDataScale(String dataScale) { + this.dataScale = dataScale; + } + + public Boolean getColKey() { + return colKey; + } + + public void setColKey(Boolean colKey) { + this.colKey = colKey; + } + + public Boolean getNullable() { + return nullable; + } + + public void setNullable(Boolean nullable) { + this.nullable = nullable; + } + + public Integer getColPosition() { + return colPosition; + } + + public void setColPosition(Integer colPosition) { + this.colPosition = colPosition; + } + + public String getDataDefault() { + return dataDefault; + } + + public void setDataDefault(String dataDefault) { + this.dataDefault = dataDefault; + } + + public String getColComment() { + return colComment; + } + + public void setColComment(String colComment) { + this.colComment = colComment; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbDialect.java new file mode 100644 index 00000000..a7a5af5e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbDialect.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import org.springframework.jdbc.core.RowMapper; + +/** + * 表数据查询接口 + */ +public interface DbDialect { + + RowMapper tableMapper(); + + RowMapper columnMapper(); + + /** + * 获取指定表的所有列 + * + * @param dbName + * @param tableName + * @return + */ + String columns(String dbName, String tableName); + + /** + * 获取数据库下的 所有表 + * + * @param dbName + * @return + */ + String tables(String dbName); + + /** + * 构建 分页 sql + * + * @param sql + * @param offset + * @param count + * @return + */ + String buildPaginationSql(String sql, long offset, long count); + + /** + * 包装 count sql + * + * @param sql + * @return + */ + String count(String sql); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbMD5Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbMD5Util.java new file mode 100644 index 00000000..6a461049 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbMD5Util.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import java.security.MessageDigest; + +public class DbMD5Util { + + private static final char[] HEX_CHARS = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; + + /** + * MD5加密 + */ + public static String encrypt(String value){ + return encrypt(value.getBytes()); + } + + /** + * MD5加密 + */ + public static String encrypt(byte[] value){ + try { + byte[] bytes = MessageDigest.getInstance("MD5").digest(value); + char[] chars = new char[32]; + for (int i = 0; i < chars.length; i = i + 2) { + byte b = bytes[i / 2]; + chars[i] = HEX_CHARS[(b >>> 0x4) & 0xf]; + chars[i + 1] = HEX_CHARS[b & 0xf]; + } + return new String(chars); + } catch (Exception e) { + throw new RuntimeException("md5 encrypt error", e); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQuery.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQuery.java new file mode 100644 index 00000000..25e13e49 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQuery.java @@ -0,0 +1,115 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import com.jiuyv.sptccc.agile.common.core.page.PageResult; + +import java.sql.Connection; +import java.util.List; +import java.util.Map; + +/** + * 表数据查询接口 + */ +public interface DbQuery { + + /** + * 获取数据库连接 + */ + Connection getConnection(); + + /** + * 检测连通性 + */ + boolean valid(); + + /** + * 关闭数据源 + */ + void close(); + + /** + * 获取指定表 具有的所有字段列表 + * @param dbName + * @param tableName + * @return + */ + List getTableColumns(String dbName, String tableName); + + /** + * 获取指定数据库下 所有的表信息 + * + * @param dbName + * @return + */ + List getTables(String dbName); + + /** + * 获取总数 + * + * @param sql + * @return + */ + Long count(String sql); + + /** + * 获取总数带查询参数 + * + * @param sql + * @return + */ + Long count(String sql, Object[] args); + + /** + * 获取总数带查询参数 NamedParameterJdbcTemplate + * + * @param sql + * @return + */ + Long count(String sql, Map params); + + /** + * 查询结果列表 + * + * @param sql + * @return + */ + List> queryList(String sql); + + /** + * 查询结果列表带查询参数 + * + * @param sql + * @param args + * @return + */ + List> queryList(String sql, Object[] args); + + /** + * 查询结果分页 + * + * @param sql + * @param offset + * @param size + * @return + */ + PageResult> queryByPage(String sql, long offset, long size); + + /** + * 查询结果分页带查询参数 + * @param sql + * @param args + * @param offset + * @param size + * @return + */ + PageResult> queryByPage(String sql, Object[] args, long offset, long size); + + /** + * 查询结果分页带查询参数 NamedParameterJdbcTemplate + * @param sql + * @param params + * @param offset + * @param size + * @return + */ + PageResult> queryByPage(String sql, Map params, long offset, long size); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQueryProperty.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQueryProperty.java new file mode 100644 index 00000000..c964efe6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbQueryProperty.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import org.apache.commons.lang3.StringUtils; + +import java.io.Serializable; + +//@AllArgsConstructor +public class DbQueryProperty implements Serializable { + + private static final long serialVersionUID = 1L; + + private String dbType; + private String host; + private String username; + private String password; + private Integer port; + private String dbName; + private String sid; + + /** + * 参数合法性校验 + */ + public void viald() { + if (StringUtils.isEmpty(dbType) || StringUtils.isEmpty(host) || + StringUtils.isEmpty(username) || StringUtils.isEmpty(password) || + port == null) { + throw new RuntimeException("参数不完整"); + } + if (DbType.OTHER.getDb().equals(dbType)) { + throw new RuntimeException("不支持的数据库类型"); + } + } + + public DbQueryProperty(String dbType, String host, String username, String password, Integer port, String dbName, String sid) { + this.dbType = dbType; + this.host = host; + this.username = username; + this.password = password; + this.port = port; + this.dbName = dbName; + this.sid = sid; + } + + public String getDbType() { + return dbType; + } + + public void setDbType(String dbType) { + this.dbType = dbType; + } + + public String getHost() { + return host; + } + + public void setHost(String host) { + this.host = host; + } + + public String getUsername() { + return username; + } + + public void setUsername(String username) { + this.username = username; + } + + public String getPassword() { + return password; + } + + public void setPassword(String password) { + this.password = password; + } + + public Integer getPort() { + return port; + } + + public void setPort(Integer port) { + this.port = port; + } + + public String getDbName() { + return dbName; + } + + public void setDbName(String dbName) { + this.dbName = dbName; + } + + public String getSid() { + return sid; + } + + public void setSid(String sid) { + this.sid = sid; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbTable.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbTable.java new file mode 100644 index 00000000..2f2dfd77 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbTable.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +public class DbTable { + + /** + * 表名 + */ + private String tableName; + + /** + * 表注释 + */ + private String tableComment; + + public String getTableName() { + return tableName; + } + + public void setTableName(String tableName) { + this.tableName = tableName; + } + + public String getTableComment() { + return tableComment; + } + + public void setTableComment(String tableComment) { + this.tableComment = tableComment; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbType.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbType.java new file mode 100644 index 00000000..398c51a8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DbType.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +/** + * 数据库类型 + */ +public enum DbType { + + /** + * MYSQL + */ + MYSQL("1", "MySql数据库", "jdbc:mysql://${host}:${port}/${dbName}?serverTimezone=GMT%2B8&characterEncoding=UTF-8&useUnicode=true&useSSL=false"), + /** + * MARIADB + */ + MARIADB("2", "MariaDB数据库", "jdbc:mariadb://${host}:${port}/${dbName}"), + /** + * ORACLE + */ + ORACLE("3", "Oracle11g及以下数据库", "jdbc:oracle:thin:@${host}:${port}:${sid}"), + /** + * oracle12c new pagination + */ + ORACLE_12C("4", "Oracle12c+数据库", "jdbc:oracle:thin:@${host}:${port}:${sid}"), + /** + * POSTGRESQL + */ + POSTGRE_SQL("5", "PostgreSql数据库", "jdbc:postgresql://${host}:${port}/${dbName}"), + /** + * SQLSERVER2005 + */ + SQL_SERVER2008("6", "SQLServer2008及以下数据库", "jdbc:sqlserver://${host}:${port};DatabaseName=${dbName}"), + /** + * SQLSERVER + */ + SQL_SERVER("7", "SQLServer2012+数据库", "jdbc:sqlserver://${host}:${port};DatabaseName=${dbName}"), + /** + * UNKONWN DB + */ + OTHER("8", "其他数据库", ""); + + /** + * 数据库名称 + */ + private final String db; + + /** + * 描述 + */ + private final String desc; + + /** + * url + */ + private final String url; + + public String getDb() { + return this.db; + } + + public String getDesc() { + return this.desc; + } + + public String getUrl() { + return this.url; + } + + DbType(String db, String desc, String url) { + this.db = db; + this.desc = desc; + this.url = url; + } + + /** + * 获取数据库类型 + * + * @param dbType 数据库类型字符串 + */ + public static DbType getDbType(String dbType) { + for (DbType type : DbType.values()) { + if (type.db.equals(dbType)) { + return type; + } + } + return OTHER; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DialectFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DialectFactory.java new file mode 100644 index 00000000..e0fb78ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/DialectFactory.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.database; + +import com.jiuyv.sptcc.agile.dataservice.database.dialect.DialectRegistry; + +/** + * 方言工厂类 + */ +public class DialectFactory { + + private static final DialectRegistry DIALECT_REGISTRY = new DialectRegistry(); + + public static DbDialect getDialect(DbType dbType) { + return DIALECT_REGISTRY.getDialect(dbType); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/PageResult.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/PageResult.java new file mode 100644 index 00000000..852771e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/PageResult.java @@ -0,0 +1,63 @@ +//package com.jiuyv.sptcc.agile.dataservice.database; +// +// +//import java.io.Serializable; +//import java.util.List; +// +////@Accessors(chain = true) +//public class PageResult implements Serializable { +// +// private static final long serialVersionUID = 1L; +// +// private Integer pageNum; +// private Integer pageSize; +// private Integer total; +// private List data; +// +// private Long time; +// +// public PageResult(Integer total, List data) { +// this.total = total; +// this.data = data; +// } +// +// public Integer getPageNum() { +// return pageNum; +// } +// +// public void setPageNum(Integer pageNum) { +// this.pageNum = pageNum; +// } +// +// public Integer getPageSize() { +// return pageSize; +// } +// +// public void setPageSize(Integer pageSize) { +// this.pageSize = pageSize; +// } +// +// public Integer getTotal() { +// return total; +// } +// +// public void setTotal(Integer total) { +// this.total = total; +// } +// +// public List getData() { +// return data; +// } +// +// public void setData(List data) { +// this.data = data; +// } +// +// public Long getTime() { +// return time; +// } +// +// public void setTime(Long time) { +// this.time = time; +// } +//} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/DefaultSqlCache.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/DefaultSqlCache.java new file mode 100644 index 00000000..5cbc8db7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/DefaultSqlCache.java @@ -0,0 +1,124 @@ +package com.jiuyv.sptcc.agile.dataservice.database.cache; + +import java.util.Iterator; +import java.util.LinkedHashMap; +import java.util.Map; +import java.util.concurrent.locks.ReentrantReadWriteLock; + +public class DefaultSqlCache extends LinkedHashMap> implements SqlCache { + + private final int capacity; + + private final long expire; + + private final ReentrantReadWriteLock lock = new ReentrantReadWriteLock(); + + public DefaultSqlCache(int capacity, long expire) { + super((int) Math.ceil(capacity / 0.75) + 1, 0.75f, true); + // 容量 + this.capacity = capacity; + // 固定过期时间 + this.expire = expire; + } + + @Override + public void put(String key, Object value, long ttl) { + long expireTime = Long.MAX_VALUE; + if (ttl >= 0) { + expireTime = System.currentTimeMillis() + (ttl == 0 ? this.expire : ttl); + } + lock.writeLock().lock(); + try { + // 封装成过期时间节点 + put(key, new ExpireNode<>(expireTime, value)); + } finally { + lock.writeLock().unlock(); + } + } + + @Override + public Object get(String key) { + lock.readLock().lock(); + ExpireNode expireNode; + try { + expireNode = super.get(key); + } finally { + lock.readLock().unlock(); + } + if (expireNode == null) { + return null; + } + // 惰性删除过期的 + if (this.expire > -1L && expireNode.expire < System.currentTimeMillis()) { + try { + lock.writeLock().lock(); + super.remove(key); + } finally { + lock.writeLock().unlock(); + } + return null; + } + return expireNode.value; + } + + @Override + public void delete(String key) { + try { + lock.writeLock().lock(); + Iterator>> iterator = super.entrySet().iterator(); + // 清除key的缓存 + while (iterator.hasNext()) { + Map.Entry> entry = iterator.next(); + if (entry.getKey().equals(key)) { + iterator.remove(); + } + } + } finally { + lock.writeLock().unlock(); + } + } + + + @Override + protected boolean removeEldestEntry(Map.Entry> eldest) { + if (this.expire > -1L && size() > capacity) { + clean(); + } + // lru淘汰 + return size() > this.capacity; + } + + /** + * 清理已过期的数据 + */ + private void clean() { + try { + lock.writeLock().lock(); + Iterator>> iterator = super.entrySet().iterator(); + long now = System.currentTimeMillis(); + while (iterator.hasNext()) { + Map.Entry> next = iterator.next(); + // 判断是否过期 + if (next.getValue().expire < now) { + iterator.remove(); + } + } + } finally { + lock.writeLock().unlock(); + } + } + + + /** + * 过期时间节点 + */ + static class ExpireNode { + long expire; + Object value; + + public ExpireNode(long expire, Object value) { + this.expire = expire; + this.value = value; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/SqlCache.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/SqlCache.java new file mode 100644 index 00000000..541bd377 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/cache/SqlCache.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.database.cache; + +import com.jiuyv.sptcc.agile.dataservice.database.DbMD5Util; + +import java.util.Arrays; + +/** + * SQL缓存接口 + */ +public interface SqlCache { + + /** + * 计算key + */ + default String buildSqlCacheKey(String sql, Object[] args) { + return DbMD5Util.encrypt(sql + ":" + Arrays.toString(args)); + } + + /** + * 存入缓存 + * @param key key + * @param value 值 + */ + void put(String key, Object value, long ttl); + + /** + * 获取缓存 + * @param key key + * @return + */ + T get(String key); + + /** + * 删除缓存 + * @param key key + */ + void delete(String key); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/AbstractDataSourceFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/AbstractDataSourceFactory.java new file mode 100644 index 00000000..ef78cae4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/AbstractDataSourceFactory.java @@ -0,0 +1,57 @@ +package com.jiuyv.sptcc.agile.dataservice.database.datasource; + +import com.jiuyv.sptcc.agile.dataservice.database.*; +import com.jiuyv.sptcc.agile.dataservice.database.query.AbstractDbQueryFactory; +import com.jiuyv.sptcc.agile.dataservice.database.query.CacheDbQueryFactoryBean; +import com.zaxxer.hikari.HikariDataSource; +import org.apache.commons.lang3.StringUtils; +import org.springframework.jdbc.core.JdbcTemplate; + +import javax.sql.DataSource; + +public abstract class AbstractDataSourceFactory implements DataSourceFactory { + + @Override + public DbQuery createDbQuery(DbQueryProperty property) { + property.viald(); + DbType dbType = DbType.getDbType(property.getDbType()); + DataSource dataSource = createDataSource(property); + DbQuery dbQuery = createDbQuery(dataSource, dbType); + return dbQuery; + } + + public DbQuery createDbQuery(DataSource dataSource, DbType dbType) { + DbDialect dbDialect = DialectFactory.getDialect(dbType); + if(dbDialect == null){ + throw new RuntimeException("该数据库类型正在开发中"); + } + AbstractDbQueryFactory dbQuery = new CacheDbQueryFactoryBean(); + dbQuery.setDataSource(dataSource); + dbQuery.setJdbcTemplate(new JdbcTemplate(dataSource)); + dbQuery.setDbDialect(dbDialect); + return dbQuery; + } + + public DataSource createDataSource(DbQueryProperty property) { + HikariDataSource dataSource = new HikariDataSource(); + dataSource.setJdbcUrl(trainToJdbcUrl(property)); + dataSource.setUsername(property.getUsername()); + dataSource.setPassword(property.getPassword()); + return dataSource; + } + + protected String trainToJdbcUrl(DbQueryProperty property) { + String url = DbType.getDbType(property.getDbType()).getUrl(); + if (StringUtils.isEmpty(url)) { + throw new RuntimeException("无效数据库类型!"); + } + url = url.replace("${host}", property.getHost()); + url = url.replace("${port}", String.valueOf(property.getPort())); + if (DbType.ORACLE.getDb().equals(property.getDbType()) || DbType.ORACLE_12C.getDb().equals(property.getDbType())) { + url = url.replace("${sid}", property.getSid()); + } else { + url = url.replace("${dbName}", property.getDbName()); + } + return url; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/CacheDataSourceFactoryBean.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/CacheDataSourceFactoryBean.java new file mode 100644 index 00000000..194b29e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/CacheDataSourceFactoryBean.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.database.datasource; + + +import com.jiuyv.sptcc.agile.dataservice.database.DbQueryProperty; +import org.springframework.stereotype.Component; + +import javax.sql.DataSource; +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +@Component +public class CacheDataSourceFactoryBean extends AbstractDataSourceFactory { + + /** + * 数据源缓存 + */ + private static Map dataSourceMap = new ConcurrentHashMap<>(); + + @Override + public DataSource createDataSource(DbQueryProperty property) { + String key = property.getHost() + ":" + property.getPort() + ":" + property.getUsername() + ":" + property.getDbName(); + String s = compress(key); + DataSource dataSource = dataSourceMap.get(s); + if (null == dataSource) { + synchronized (CacheDataSourceFactoryBean.class) { + dataSource = super.createDataSource(property); + dataSourceMap.put(s, dataSource); + } + } + return dataSource; + } + + // 压缩 + public static String compress(String str) { + if (str == null || str.length() == 0) { + return str; + } + MessageDigest md = null; + try { + md = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException e) { + e.printStackTrace(); + } + if (md != null) { + md.update(str.getBytes()); + byte[] b = md.digest(); + int i; + StringBuffer buf = new StringBuffer(); + for (byte value : b) { + i = value; + if (i < 0) + i += 256; + if (i < 16) + buf.append("0"); + buf.append(Integer.toHexString(i)); + } + str = buf.toString().substring(8, 24).toUpperCase(); + } + return str; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/DefaultDataSourceFactoryBean.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/DefaultDataSourceFactoryBean.java new file mode 100644 index 00000000..2c75bebe --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/datasource/DefaultDataSourceFactoryBean.java @@ -0,0 +1,4 @@ +package com.jiuyv.sptcc.agile.dataservice.database.datasource; + +public class DefaultDataSourceFactoryBean extends AbstractDataSourceFactory{ +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/AbstractDbDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/AbstractDbDialect.java new file mode 100644 index 00000000..8cf42908 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/AbstractDbDialect.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbDialect; + +/** + * 方言抽象类 + */ +public abstract class AbstractDbDialect implements DbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select column_name AS COLNAME, ordinal_position AS COLPOSITION, column_default AS DATADEFAULT, is_nullable AS NULLABLE, data_type AS DATATYPE, " + + "character_maximum_length AS DATALENGTH, numeric_precision AS DATAPRECISION, numeric_scale AS DATASCALE, column_key AS COLKEY, column_comment AS COLCOMMENT " + + "from information_schema.columns where table_schema = '" + dbName + "' and table_name = '" + tableName + "' order by ordinal_position "; + } + + @Override + public String tables(String dbName) { + return "SELECT table_name AS TABLENAME, table_comment AS TABLECOMMENT FROM information_schema.tables where table_schema = '" + dbName + "' "; + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + // 获取 分页实际条数 + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" LIMIT ").append(offset).append(" , ").append(count); + return sqlBuilder.toString(); + } + + @Override + public String count(String sql) { + return "SELECT COUNT(*) FROM ( " + sql + " ) TEMP"; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/DialectRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/DialectRegistry.java new file mode 100644 index 00000000..b9e665ad --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/DialectRegistry.java @@ -0,0 +1,27 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbDialect; +import com.jiuyv.sptcc.agile.dataservice.database.DbType; + +import java.util.EnumMap; +import java.util.Map; + +public class DialectRegistry { + + private final Map dialect_enum_map = new EnumMap<>(DbType.class); + + public DialectRegistry() { + dialect_enum_map.put(DbType.MARIADB, new MariaDBDialect()); + dialect_enum_map.put(DbType.MYSQL, new MySqlDialect()); + dialect_enum_map.put(DbType.ORACLE_12C, new Oracle12cDialect()); + dialect_enum_map.put(DbType.ORACLE, new OracleDialect()); + dialect_enum_map.put(DbType.POSTGRE_SQL, new PostgreDialect()); + dialect_enum_map.put(DbType.SQL_SERVER2008, new SQLServer2008Dialect()); + dialect_enum_map.put(DbType.SQL_SERVER, new SQLServerDialect()); + dialect_enum_map.put(DbType.OTHER, new UnknownDialect()); + } + + public DbDialect getDialect(DbType dbType) { + return dialect_enum_map.get(dbType); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MariaDBDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MariaDBDialect.java new file mode 100644 index 00000000..bfbc752d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MariaDBDialect.java @@ -0,0 +1,7 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +/** + * MariaDB 数据库方言 + */ +public class MariaDBDialect extends MySqlDialect { +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MySqlDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MySqlDialect.java new file mode 100644 index 00000000..d3c551f1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/MySqlDialect.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * MySql 数据库方言 + */ +public class MySqlDialect extends AbstractDbDialect { + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("PRI".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("YES".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/Oracle12cDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/Oracle12cDialect.java new file mode 100644 index 00000000..5b6bb38f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/Oracle12cDialect.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +/** + * ORACLE Oracle12c+数据库方言 + */ +public class Oracle12cDialect extends OracleDialect { + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" OFFSET ").append(offset).append(" ROWS FETCH NEXT ").append(count).append(" ROWS ONLY "); + return sqlBuilder.toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/OracleDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/OracleDialect.java new file mode 100644 index 00000000..1c49d95f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/OracleDialect.java @@ -0,0 +1,69 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * Oracle Oracle11g及以下数据库方言 + */ +public class OracleDialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select columns.column_name AS colName, columns.data_type AS DATATYPE, columns.data_length AS DATALENGTH, columns.data_precision AS DATAPRECISION, " + + "columns.data_scale AS DATASCALE, columns.nullable AS NULLABLE, columns.column_id AS COLPOSITION, columns.data_default AS DATADEFAULT, comments.comments AS COLCOMMENT," + + "case when t.column_name is null then 0 else 1 end as COLKEY " + + "from sys.user_tab_columns columns LEFT JOIN sys.user_col_comments comments ON columns.table_name = comments.table_name AND columns.column_name = comments.column_name " + + "left join ( " + + "select col.column_name as column_name, con.table_name as table_name from user_constraints con, user_cons_columns col " + + "where con.constraint_name = col.constraint_name and con.constraint_type = 'P' " + + ") t on t.table_name = columns.table_name and columns.column_name = t.column_name " + + "where columns.table_name = UPPER('" + tableName + "') order by columns.column_id "; + } + + @Override + public String tables(String dbName) { + return "select tables.table_name AS TABLENAME, comments.comments AS TABLECOMMENT from sys.user_tables tables " + + "LEFT JOIN sys.user_tab_comments comments ON tables.table_name = comments.table_name "; + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(); + sqlBuilder.append("SELECT * FROM ( SELECT TMP.*, ROWNUM ROW_ID FROM ( "); + sqlBuilder.append(originalSql).append(" ) TMP WHERE ROWNUM <=").append((offset >= 1) ? (offset + count) : count); + sqlBuilder.append(") WHERE ROW_ID > ").append(offset); + return sqlBuilder.toString(); + } + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("1".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("Y".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/PostgreDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/PostgreDialect.java new file mode 100644 index 00000000..a48f18fd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/PostgreDialect.java @@ -0,0 +1,68 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * Postgre 数据库方言 + */ +public class PostgreDialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select col.column_name AS COLNAME, col.ordinal_position AS COLPOSITION, col.column_default AS DATADEFAULT, col.is_nullable AS NULLABLE, col.udt_name AS DATATYPE, " + + "col.character_maximum_length AS DATALENGTH, col.numeric_precision AS DATAPRECISION, col.numeric_scale AS DATASCALE, des.description AS COLCOMMENT, " + + "case when t.colname is null then 0 else 1 end as COLKEY " + + "from information_schema.columns col left join pg_description des on col.table_name::regclass = des.objoid and col.ordinal_position = des.objsubid " + + "left join ( " + + "select pg_attribute.attname as colname from pg_constraint inner join pg_class on pg_constraint.conrelid = pg_class.oid " + + "inner join pg_attribute on pg_attribute.attrelid = pg_class.oid and pg_attribute.attnum = any(pg_constraint.conkey) " + + "where pg_class.relname = '" + tableName + "' and pg_constraint.contype = 'p' " + + ") t on t.colname = col.column_name " + + "where col.table_catalog = '" + dbName + "' and col.table_schema = 'public' and col.table_name = '" + tableName + "' order by col.ordinal_position "; + } + + @Override + public String tables(String dbName) { + return "select relname AS TABLENAME, cast(obj_description(relfilenode, 'pg_class') as varchar) AS TABLECOMMENT from pg_class " + + "where relname in (select tablename from pg_tables where schemaname = 'public' and position('_2' in tablename) = 0) "; + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" LIMIT ").append(count).append(" offset ").append(offset); + return sqlBuilder.toString(); + } + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("1".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("YES".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServer2008Dialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServer2008Dialect.java new file mode 100644 index 00000000..aac929f4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServer2008Dialect.java @@ -0,0 +1,102 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.apache.commons.lang3.StringUtils; +import org.springframework.jdbc.core.RowMapper; + +import java.sql.ResultSet; + +/** + * SQLServer 2005 数据库方言 + */ +public class SQLServer2008Dialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + return "select columns.name AS colName, columns.column_id AS COLPOSITION, columns.max_length AS DATALENGTH, columns.precision AS DATAPRECISION, columns.scale AS DATASCALE, " + + "columns.is_nullable AS NULLABLE, types.name AS DATATYPE, CAST(ep.value AS NVARCHAR(128)) AS COLCOMMENT, e.text AS DATADEFAULT, " + + "(select top 1 ind.is_primary_key from sys.index_columns ic left join sys.indexes ind on ic.object_id = ind.object_id and ic.index_id = ind.index_id and ind.name like 'PK_%' where ic.object_id=columns.object_id and ic.column_id=columns.column_id) AS COLKEY " + + "from sys.columns columns LEFT JOIN sys.types types ON columns.system_type_id = types.system_type_id " + + "LEFT JOIN syscomments e ON columns.default_object_id= e.id " + + "LEFT JOIN sys.extended_properties ep ON ep.major_id = columns.object_id AND ep.minor_id = columns.column_id AND ep.name = 'MS_Description' " + + "where columns.object_id = object_id('" + tableName + "') order by columns.column_id "; + } + + @Override + public String tables(String dbName) { + return "select tables.name AS TABLENAME, CAST(ep.value AS NVARCHAR(128)) AS TABLECOMMENT " + + "from sys.tables tables LEFT JOIN sys.extended_properties ep ON ep.major_id = tables.object_id AND ep.minor_id = 0"; + } + + private static String getOrderByPart(String sql) { + String loweredString = sql.toLowerCase(); + int orderByIndex = loweredString.indexOf("order by"); + if (orderByIndex != -1) { + return sql.substring(orderByIndex); + } else { + return ""; + } + } + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder pagingBuilder = new StringBuilder(); + String orderby = getOrderByPart(originalSql); + String distinctStr = ""; + + String loweredString = originalSql.toLowerCase(); + String sqlPartString = originalSql; + if (loweredString.trim().startsWith("select")) { + int index = 6; + if (loweredString.startsWith("select distinct")) { + distinctStr = "DISTINCT "; + index = 15; + } + sqlPartString = sqlPartString.substring(index); + } + pagingBuilder.append(sqlPartString); + + // if no ORDER BY is specified use fake ORDER BY field to avoid errors + if (StringUtils.isEmpty(orderby)) { + orderby = "ORDER BY CURRENT_TIMESTAMP"; + } + StringBuilder sql = new StringBuilder(); + sql.append("WITH selectTemp AS (SELECT ").append(distinctStr).append("TOP 100 PERCENT ") + .append(" ROW_NUMBER() OVER (").append(orderby).append(") as __row_number__, ").append(pagingBuilder) + .append(") SELECT * FROM selectTemp WHERE __row_number__ BETWEEN ") + //FIX#299:原因:mysql中limit 10(offset,size) 是从第10开始(不包含10),;而这里用的BETWEEN是两边都包含,所以改为offset+1 + .append(offset + 1) + .append(" AND ") + .append(offset + count).append(" ORDER BY __row_number__"); + return sql.toString(); + } + + @Override + public RowMapper columnMapper() { + return (ResultSet rs, int rowNum) -> { + DbColumn entity = new DbColumn(); + entity.setColName(rs.getString("COLNAME")); + entity.setDataType(rs.getString("DATATYPE")); + entity.setDataLength(rs.getString("DATALENGTH")); + entity.setDataPrecision(rs.getString("DATAPRECISION")); + entity.setDataScale(rs.getString("DATASCALE")); + entity.setColKey("1".equals(rs.getString("COLKEY")) ? true : false); + entity.setNullable("1".equals(rs.getString("NULLABLE")) ? true : false); + entity.setColPosition(rs.getInt("COLPOSITION")); + entity.setDataDefault(rs.getString("DATADEFAULT")); + entity.setColComment(rs.getString("COLCOMMENT")); + return entity; + }; + } + + @Override + public RowMapper tableMapper() { + return (ResultSet rs, int rowNum) -> { + DbTable entity = new DbTable(); + entity.setTableName(rs.getString("TABLENAME")); + entity.setTableComment(rs.getString("TABLECOMMENT")); + return entity; + }; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServerDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServerDialect.java new file mode 100644 index 00000000..bc028521 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/SQLServerDialect.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +/** + * SQLServer 数据库方言 + */ +public class SQLServerDialect extends SQLServer2008Dialect { + + @Override + public String buildPaginationSql(String originalSql, long offset, long count) { + StringBuilder sqlBuilder = new StringBuilder(originalSql); + sqlBuilder.append(" OFFSET ").append(offset).append(" ROWS FETCH NEXT ").append(count).append(" ROWS ONLY "); + return sqlBuilder.toString(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/UnknownDialect.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/UnknownDialect.java new file mode 100644 index 00000000..1fbaf455 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/dialect/UnknownDialect.java @@ -0,0 +1,41 @@ +package com.jiuyv.sptcc.agile.dataservice.database.dialect; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import org.springframework.jdbc.core.RowMapper; + +/** + * 未知 数据库方言 + */ +public class UnknownDialect extends AbstractDbDialect { + + @Override + public String columns(String dbName, String tableName) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public String tables(String dbName) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public String buildPaginationSql(String sql, long offset, long count) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public String count(String sql) { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public RowMapper columnMapper() { + throw new RuntimeException("不支持的数据库类型"); + } + + @Override + public RowMapper tableMapper() { + throw new RuntimeException("不支持的数据库类型"); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/AbstractDbQueryFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/AbstractDbQueryFactory.java new file mode 100644 index 00000000..0ee37b7b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/AbstractDbQueryFactory.java @@ -0,0 +1,142 @@ +package com.jiuyv.sptcc.agile.dataservice.database.query; + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbDialect; +import com.jiuyv.sptcc.agile.dataservice.database.DbQuery; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import com.zaxxer.hikari.HikariDataSource; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate; + +import javax.sql.DataSource; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.List; +import java.util.Map; + +public abstract class AbstractDbQueryFactory implements DbQuery { + + private static final Logger log = LoggerFactory.getLogger(AbstractDbQueryFactory.class); + + protected DataSource dataSource; + + protected JdbcTemplate jdbcTemplate; + + protected DbDialect dbDialect; + + @Override + public Connection getConnection() { + try { + return dataSource.getConnection(); + } catch (SQLException e) { + throw new RuntimeException("获取数据库连接出错"); + } + } + + @Override + public boolean valid() { + Connection conn = null; + try { + conn = dataSource.getConnection(); + return conn.isValid(0); + } catch (SQLException e) { + throw new RuntimeException("检测连通性出错"); + } finally { + if (conn != null) { + try { + conn.close(); + } catch (SQLException e) { + log.error("链接关闭失败",e); + } + } + } + + } + + @Override + public void close() { + if (dataSource instanceof HikariDataSource) { + ((HikariDataSource) dataSource).close(); + } else { + throw new RuntimeException("不合法数据源类型"); + } + } + + @Override + public List getTableColumns(String dbName, String tableName) { + String sql = dbDialect.columns(dbName, tableName); + return jdbcTemplate.query(sql, dbDialect.columnMapper()); + } + + @Override + public List getTables(String dbName) { + String sql = dbDialect.tables(dbName); + return jdbcTemplate.query(sql, dbDialect.tableMapper()); + } + + @Override + public Long count(String sql) { + return jdbcTemplate.queryForObject(dbDialect.count(sql), Long.class); + } + + @Override + public Long count(String sql, Object[] args) { + return jdbcTemplate.queryForObject(dbDialect.count(sql), args, Long.class); + } + + @Override + public Long count(String sql, Map params) { + NamedParameterJdbcTemplate namedJdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate); + return namedJdbcTemplate.queryForObject(dbDialect.count(sql), params, Long.class); + } + + @Override + public List> queryList(String sql) { + return jdbcTemplate.queryForList(sql); + } + + @Override + public List> queryList(String sql, Object[] args) { + return jdbcTemplate.queryForList(sql, args); + } + + @Override + public PageResult> queryByPage(String sql, long offset, long size) { + Long total = count(sql); + String pageSql = dbDialect.buildPaginationSql(sql, offset, size); + List> records = jdbcTemplate.queryForList(pageSql); + return new PageResult<>(total, records); + } + + @Override + public PageResult> queryByPage(String sql, Object[] args, long offset, long size) { + Long total = count(sql, args); + String pageSql = dbDialect.buildPaginationSql(sql, offset, size); + List> records = jdbcTemplate.queryForList(pageSql, args); + return new PageResult<>(total, records); + } + + @Override + public PageResult> queryByPage(String sql, Map params, long offset, long size) { + Long total = count(sql, params); + String pageSql = dbDialect.buildPaginationSql(sql, offset, size); + NamedParameterJdbcTemplate namedJdbcTemplate = new NamedParameterJdbcTemplate(jdbcTemplate); + List> records = namedJdbcTemplate.queryForList(pageSql, params); + return new PageResult(total, records); + } + + public void setDataSource(DataSource dataSource) { + this.dataSource = dataSource; + } + + public void setJdbcTemplate(JdbcTemplate jdbcTemplate) { + this.jdbcTemplate = jdbcTemplate; + } + + public void setDbDialect(DbDialect dbDialect) { + this.dbDialect = dbDialect; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/CacheDbQueryFactoryBean.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/CacheDbQueryFactoryBean.java new file mode 100644 index 00000000..f002a5e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/database/query/CacheDbQueryFactoryBean.java @@ -0,0 +1,105 @@ +package com.jiuyv.sptcc.agile.dataservice.database.query; + + +import com.jiuyv.sptcc.agile.dataservice.database.DbColumn; +import com.jiuyv.sptcc.agile.dataservice.database.DbTable; +import com.jiuyv.sptcc.agile.dataservice.database.cache.DefaultSqlCache; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; + +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.Optional; + +public class CacheDbQueryFactoryBean extends AbstractDbQueryFactory { + + /** + * 默认缓存5分钟 + */ + private static final long DEFAULT_EXPIRE = 5 * 60 * 1000L; + private static final DefaultSqlCache sqlCache = new DefaultSqlCache(100, DEFAULT_EXPIRE); + + private T putCacheValue(String key, T value, long ttl) { + sqlCache.put(key, value, ttl); + return value; + } + + @Override + public List getTableColumns(String dbName, String tableName) { + Object[] args = new Object[]{dbName, tableName}; + Optional o = Optional.ofNullable(sqlCache.get(sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":getTableColumns", args))); + return super.getTableColumns(dbName, tableName); + } + + @Override + public List getTables(String dbName) { + Object[] args = new Object[]{dbName}; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":getTables", args); + return (List) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.getTables(dbName), DEFAULT_EXPIRE)); + } + + @Override + public Long count(String sql) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, null); + return (Long) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.count(sql), DEFAULT_EXPIRE)); + } + + @Override + public Long count(String sql, Object[] args) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, args); + return (Long) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.count(sql, args), DEFAULT_EXPIRE)); + } + + @Override + public Long count(String sql, Map params) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, params.values().toArray()); + return (Long) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.count(sql, params), DEFAULT_EXPIRE)); + } + + @Override + public List> queryList(String sql) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, null); + return (List>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryList(sql), DEFAULT_EXPIRE)); + } + + @Override + public List> queryList(String sql, Object[] args) { + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, args); + return (List>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryList(sql, args), DEFAULT_EXPIRE)); + } + + @Override + public PageResult> queryByPage(String sql, long offset, long size) { + Object[] args = new Object[]{offset, size}; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, args); + return (PageResult>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryByPage(sql, offset, size), DEFAULT_EXPIRE)); + } + + @Override + public PageResult> queryByPage(String sql, Object[] args, long offset, long size) { + Object[] objects = Arrays.copyOf(args, args.length + 2); + objects[args.length] = offset; + objects[args.length + 1] = size; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, objects); + return (PageResult>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryByPage(sql, args, offset, size), DEFAULT_EXPIRE)); + } + + @Override + public PageResult> queryByPage(String sql, Map params, long offset, long size) { + Object[] args = params.values().toArray(); + Object[] objects = Arrays.copyOf(args, args.length + 2); + objects[args.length] = offset; + objects[args.length + 1] = size; + String cacheKey = sqlCache.buildSqlCacheKey(super.dataSource.toString() + ":" + sql, objects); + return (PageResult>) Optional.ofNullable(sqlCache.get(cacheKey)) + .orElse(putCacheValue(cacheKey, super.queryByPage(sql, params, offset, size), DEFAULT_EXPIRE)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AbstractFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AbstractFactory.java new file mode 100644 index 00000000..f8a9d221 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AbstractFactory.java @@ -0,0 +1,8 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; + +public abstract class AbstractFactory { + + public abstract Crypto getCrypto(String type); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AlgorithmFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AlgorithmFactory.java new file mode 100644 index 00000000..4ce9e2a0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/AlgorithmFactory.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.AlgorithmCrypto; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.AlgorithmRegistry; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; + +public class AlgorithmFactory extends AbstractFactory { + + private static final AlgorithmRegistry ALGORITHM_REGISTRY = new AlgorithmRegistry(); + + @Override + public Crypto getCrypto(String type) { + AlgorithmCrypto crypto = AlgorithmCrypto.getAlgorithmCrypto(type); + return ALGORITHM_REGISTRY.getAlgorithm(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/FactoryProducer.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/FactoryProducer.java new file mode 100644 index 00000000..a901a8b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/FactoryProducer.java @@ -0,0 +1,17 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; + +public class FactoryProducer { + + public static AbstractFactory getFactory(String type){ + DataApiEnum.CipherType cipherType = DataApiEnum.CipherType.getCipherType(type); + switch (cipherType) { + case REGEX: + return new RegexFactory(); + case ALGORITHM: + return new AlgorithmFactory(); + } + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/RegexFactory.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/RegexFactory.java new file mode 100644 index 00000000..c40b6f7d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/RegexFactory.java @@ -0,0 +1,16 @@ +package com.jiuyv.sptcc.agile.dataservice.factory; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.RegexCrypto; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.RegexRegistry; + +public class RegexFactory extends AbstractFactory { + + private static final RegexRegistry REGEX_REGISTRY = new RegexRegistry(); + + @Override + public Crypto getCrypto(String type) { + RegexCrypto crypto = RegexCrypto.getRegexCrypto(type); + return REGEX_REGISTRY.getRegex(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/ADDRESSCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/ADDRESSCrypto.java new file mode 100644 index 00000000..9689c6f9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/ADDRESSCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [地址] 只显示前六位,不显示详细地址;我们要对个人信息增强保护<例子:北京市海淀区****> + */ +public class ADDRESSCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.rightPad(StringUtils.left(content, 6), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java new file mode 100644 index 00000000..2192661c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.crypto.Cipher; +import javax.crypto.KeyGenerator; +import javax.crypto.SecretKey; +import javax.crypto.spec.SecretKeySpec; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.util.Base64; + +public class AESCrypto implements Crypto { + + + public static final Logger log = LoggerFactory.getLogger(AESCrypto.class); + + private static final String TRANSFORMATION = "AES/GCM/NoPadding"; + + private static final String ALGORITHM = "AES"; + public static final String SecretKey = "6dUhsytWsgiMVZ8UeT3TzQ=="; + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + //1.构造密钥生成器,指定为AES算法,不区分大小写 + SecretKeySpec key = initSecretKey(); + //6.根据指定算法AES生成密码器 + Cipher cipher = Cipher.getInstance(TRANSFORMATION); + //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密解密(Decrypt_mode)操作,第二个参数为使用的KEY + cipher.init(Cipher.ENCRYPT_MODE, key); + //8.根据密码器的初始化方式--加密:将数据加密 + byte[] AES_encrypt = cipher.doFinal(content.getBytes(CHARSET_UTF8)); + //9.将字符串返回 + return Base64.getEncoder().encodeToString(AES_encrypt); + } catch (Exception e) { + log.error("AES加密失败",e); + } + return null; + } + + @Override + public String decrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + //1.构造密钥生成器,指定为AES算法,不区分大小写 + SecretKeySpec key = initSecretKey(); + //6.根据指定算法AES生成密码器 + Cipher cipher = Cipher.getInstance(TRANSFORMATION); + //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密解密(Decrypt_mode)操作,第二个参数为使用的KEY + cipher.init(Cipher.DECRYPT_MODE, key);// 初始化 + //8.根据密码器的初始化方式--加密:将数据加密 + byte[] AES_decode = cipher.doFinal(Base64.getDecoder().decode(content)); + return new String(AES_decode, CHARSET_UTF8); + } catch (Exception e) { + log.error("AES解密失败",e); + } + return null; + } + + private String getKey() throws NoSuchAlgorithmException { + KeyGenerator kGen = KeyGenerator.getInstance(ALGORITHM); + SecureRandom random = SecureRandom.getInstance(SHA1PRNG); + random.setSeed(SLAT.getBytes()); + //2.根据 RULES 规则初始化密钥生成器,根据传入的字节数组生成一个128位的随机源 + kGen.init(128, random); + //3.产生原始对称密钥 + SecretKey secretKey = kGen.generateKey(); + //4.获得原始对称密钥的字节数组 + byte[] enCodeFormat = secretKey.getEncoded(); + return Base64.getEncoder().encodeToString(enCodeFormat); + } + + private SecretKeySpec initSecretKey() { + return new SecretKeySpec(Base64.getDecoder().decode(AESCrypto.SecretKey), "AES"); + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java new file mode 100644 index 00000000..0fd824f8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java @@ -0,0 +1,23 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.AlgorithmCrypto; + +import java.util.EnumMap; +import java.util.Map; + +public class AlgorithmRegistry { + + private final Map algorithm_enum_map = new EnumMap<>(AlgorithmCrypto.class); + + public AlgorithmRegistry() { + algorithm_enum_map.put(AlgorithmCrypto.BASE64, new BASE64Crypto()); + algorithm_enum_map.put(AlgorithmCrypto.AES, new AESCrypto()); + algorithm_enum_map.put(AlgorithmCrypto.MD5, new MD5Crypto()); + algorithm_enum_map.put(AlgorithmCrypto.SHA_1, new SHA1Crypto()); + algorithm_enum_map.put(AlgorithmCrypto.SHA_256, new SHA256Crypto()); + } + + public Crypto getAlgorithm(AlgorithmCrypto crypto) { + return algorithm_enum_map.get(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BANKCARDCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BANKCARDCrypto.java new file mode 100644 index 00000000..d431db84 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BANKCARDCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [银行卡号] 前六位,后四位,其他用星号隐藏每位1个星号<例子:6222600**********1234> + */ +public class BANKCARDCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.left(content, 6).concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"), "******")); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BASE64Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BASE64Crypto.java new file mode 100644 index 00000000..c3746d75 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/BASE64Crypto.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.util.Base64; + +public class BASE64Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + byte[] encode = Base64.getEncoder().encode(content.getBytes(CHARSET_UTF8)); + return new String(encode, CHARSET_UTF8); + } catch (Exception e) { + } + return null; + } + + @Override + public String decrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + try { + byte[] decode = Base64.getDecoder().decode(content.getBytes(CHARSET_UTF8)); + return new String(decode, CHARSET_UTF8); + } catch (Exception e) { + } + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CHINESENAMECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CHINESENAMECrypto.java new file mode 100644 index 00000000..6961548a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CHINESENAMECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [中文姓名] 只显示第一个汉字,其他隐藏为星号<例子:李**> + */ +public class CHINESENAMECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.rightPad(StringUtils.left(content, 1), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CNAPSCODECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CNAPSCODECrypto.java new file mode 100644 index 00000000..2013ddce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/CNAPSCODECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [公司开户银行联号] 公司开户银行联行号,显示前四位,其他用星号隐藏,每位1个星号<例子:1234********> + */ +public class CNAPSCODECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.rightPad(StringUtils.left(content, 4), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/Crypto.java new file mode 100644 index 00000000..6f62bf41 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/Crypto.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +public interface Crypto { + + /** + * 字符编码 + */ + String CHARSET_UTF8 = "UTF-8"; + /** + * 密码盐 + */ + String SLAT = "DATAX:20200101"; + + String SHA1PRNG = "SHA1PRNG"; + + String encrypt(String content); + + String decrypt(String content); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java new file mode 100644 index 00000000..253c39ce --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java @@ -0,0 +1,77 @@ +// package com.jiuyv.sptcc.agile.dataservice.factory.crypto; +// +// import org.apache.commons.lang3.StringUtils; +// import org.slf4j.Logger; +// import org.slf4j.LoggerFactory; +// +// import javax.crypto.Cipher; +// import javax.crypto.KeyGenerator; +// import javax.crypto.SecretKey; +// import javax.crypto.spec.SecretKeySpec; +// import java.nio.charset.StandardCharsets; +// import java.security.NoSuchAlgorithmException; +// import java.security.SecureRandom; +// import java.util.Base64; +// +// public class DESCrypto implements Crypto { +// +// private static final Logger log = LoggerFactory.getLogger(DESCrypto.class); +// private static final String DES ="DES"; +// private static final String KEY = "DES/ECB/PKCS5Padding"; +// +// private static final String SLAT = "jiuyv"; +// +// +// @Override +// public String encrypt(String content) { +// if (StringUtils.isBlank(content)) { +// return null; +// } +// try { +// SecretKeySpec key = getKey(); +// Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding"); +// cipher.init(Cipher.ENCRYPT_MODE, key); +// byte[] DES_encrypt = cipher.doFinal(content.getBytes(StandardCharsets.UTF_8)); +// return Base64.getEncoder().encodeToString(DES_encrypt); +// } catch (Exception e) { +// log.error("des encrypt 失败", e); +// } +// return null; +// } +// +// +// private SecretKeySpec getKey() throws NoSuchAlgorithmException { +// KeyGenerator kGen = KeyGenerator.getInstance(DES); +// SecureRandom random = SecureRandom.getInstance(SHA1PRNG); +// random.setSeed(SLAT.getBytes()); +// kGen.init(56,random); +// SecretKey secretKey = kGen.generateKey(); +// return new SecretKeySpec(secretKey.getEncoded(), DES); +// } +// +// @Override +// public String decrypt(String content) { +// if (StringUtils.isBlank(content)) { +// return null; +// } +// try { +// SecretKeySpec key = getKey(); +// Cipher cipher = Cipher.getInstance(KEY); +// cipher.init(Cipher.DECRYPT_MODE, key); +// byte[] DES_decrypt = cipher.doFinal(Base64.getDecoder().decode(content)); +// return new String(DES_decrypt, StandardCharsets.UTF_8); +// } catch (Exception e) { +// log.error("des encrypt 失败", e); +// } +// return null; +// } +// +// public static void main(String[] args) { +// DESCrypto desCrypto = new DESCrypto(); +// String encrypt = desCrypto.encrypt("123456"); +// System.out.println(encrypt); +// System.out.println(desCrypto.decrypt(encrypt)); +// } +// +// +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/EMAILCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/EMAILCrypto.java new file mode 100644 index 00000000..48fa94d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/EMAILCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [电子邮箱] 只显示前三后显示邮箱后缀,其他隐藏为星号<例子:312****@qq.com> + */ +public class EMAILCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return content.replaceAll("(\\w{3}).*@(\\w+)", "$1****@$2"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/FIXEDPHONECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/FIXEDPHONECrypto.java new file mode 100644 index 00000000..42df6931 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/FIXEDPHONECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [固定电话] 后四位,其他隐藏<例子:****1234> + */ +public class FIXEDPHONECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/IDCARDCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/IDCARDCrypto.java new file mode 100644 index 00000000..548b58e2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/IDCARDCrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [身份证号] 显示最后四位,其他隐藏。共计18位或者15位。<例子:*************5762> + */ +public class IDCARDCrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MD5Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MD5Crypto.java new file mode 100644 index 00000000..6dc40327 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MD5Crypto.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.security.MessageDigest; +import java.util.Base64; + +public class MD5Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + MessageDigest md5 = null; + try { + md5 = MessageDigest.getInstance("MD5"); + md5.update(content.getBytes(CHARSET_UTF8)); + md5.update(SLAT.getBytes(CHARSET_UTF8)); + } catch (Exception ignored) { + } + if (md5 != null) { + return Base64.getEncoder().encodeToString(md5.digest()); + } + return null; + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MOBILEPHONECrypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MOBILEPHONECrypto.java new file mode 100644 index 00000000..204b6be9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/MOBILEPHONECrypto.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +/** + * [手机号码] 前三位,后四位,其他隐藏<例子:138******1234> + */ +public class MOBILEPHONECrypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + return StringUtils.left(content, 3).concat(StringUtils.removeStart(StringUtils.leftPad(StringUtils.right(content, 4), StringUtils.length(content), "*"), "***")); + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/RegexRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/RegexRegistry.java new file mode 100644 index 00000000..c45ef8ee --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/RegexRegistry.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.RegexCrypto; + +import java.util.EnumMap; +import java.util.Map; + +public class RegexRegistry { + + private final Map regex_enum_map = new EnumMap<>(RegexCrypto.class); + + public RegexRegistry() { + regex_enum_map.put(RegexCrypto.CHINESE_NAME, new CHINESENAMECrypto()); + regex_enum_map.put(RegexCrypto.ID_CARD, new IDCARDCrypto()); + regex_enum_map.put(RegexCrypto.FIXED_PHONE, new FIXEDPHONECrypto()); + regex_enum_map.put(RegexCrypto.MOBILE_PHONE, new MOBILEPHONECrypto()); + regex_enum_map.put(RegexCrypto.ADDRESS, new ADDRESSCrypto()); + regex_enum_map.put(RegexCrypto.EMAIL, new EMAILCrypto()); + regex_enum_map.put(RegexCrypto.BANK_CARD, new BANKCARDCrypto()); + regex_enum_map.put(RegexCrypto.CNAPS_CODE, new CNAPSCODECrypto()); + } + + public Crypto getRegex(RegexCrypto crypto) { + return regex_enum_map.get(crypto); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA1Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA1Crypto.java new file mode 100644 index 00000000..ed7577a8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA1Crypto.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.security.MessageDigest; +import java.util.Base64; + +public class SHA1Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + MessageDigest md5 = null; + try { + md5 = MessageDigest.getInstance("SHA-1"); + md5.update(content.getBytes(CHARSET_UTF8)); + md5.update(SLAT.getBytes(CHARSET_UTF8)); + } catch (Exception ignored) { + } + if (md5 != null) { + return Base64.getEncoder().encodeToString(md5.digest()); + } + return null; + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA256Crypto.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA256Crypto.java new file mode 100644 index 00000000..873508c4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/SHA256Crypto.java @@ -0,0 +1,32 @@ +package com.jiuyv.sptcc.agile.dataservice.factory.crypto; + +import org.apache.commons.lang3.StringUtils; + +import java.security.MessageDigest; +import java.util.Base64; + +public class SHA256Crypto implements Crypto { + + @Override + public String encrypt(String content) { + if (StringUtils.isBlank(content)) { + return null; + } + MessageDigest md5 = null; + try { + md5 = MessageDigest.getInstance("SHA-256"); + md5.update(content.getBytes(CHARSET_UTF8)); + md5.update(SLAT.getBytes(CHARSET_UTF8)); + } catch (Exception ignored) { + } + if (md5 != null) { + return Base64.getEncoder().encodeToString(md5.digest()); + } + return null; + } + + @Override + public String decrypt(String content) { + return null; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/feign/MessageFeign.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/feign/MessageFeign.java new file mode 100644 index 00000000..8d4270e6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/feign/MessageFeign.java @@ -0,0 +1,8 @@ +package com.jiuyv.sptcc.agile.dataservice.feign; + +import com.jiuyv.sptccc.agile.api.fegin.PublicPhoneMsgLogFeignApi; +import org.springframework.cloud.openfeign.FeignClient; + +@FeignClient(name = "message-service",contextId = "sendMassage") +public interface MessageFeign extends PublicPhoneMsgLogFeignApi { +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/GolabExceptionHandler.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/GolabExceptionHandler.java new file mode 100644 index 00000000..324d2cc4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/GolabExceptionHandler.java @@ -0,0 +1,75 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.validation.BindException; +import org.springframework.validation.FieldError; +import org.springframework.validation.ObjectError; +import org.springframework.web.bind.MissingServletRequestParameterException; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; +import org.springframework.web.servlet.NoHandlerFoundException; + +import javax.servlet.http.HttpServletRequest; +import javax.validation.ValidationException; +import java.util.List; + +/** + * @author shu_k + * @Description: 全局异常处理 + * @date 2022年1月5日 下午1:54:37 + */ +@RestControllerAdvice +public class GolabExceptionHandler { + + private static final Logger logger = LoggerFactory.getLogger(GolabExceptionHandler.class); + + @ExceptionHandler(BaseException.class) + public R handlerNoFoundException(BaseException e) { + logger.info("自定义异常,code: {},message: {}", e.getCode(), e.getDefaultMessage()); + return R.fail(e.getCode(), e.getDefaultMessage()); + } + + @ExceptionHandler(ValidationException.class) + public R validedBindException(ValidationException e) { + logger.warn("校验报错", e); + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), e.getMessage()); + } + + + @ExceptionHandler(BindException.class) + public R bindException(BindException e) { + logger.info("参数校验错误 {}", e.getMessage()); + List list = e.getBindingResult().getAllErrors(); + StringBuilder builder = new StringBuilder(); + for (ObjectError objectError : list) { + FieldError fieldError = (FieldError) objectError; + builder.append(fieldError.getField()).append(":").append(fieldError.getDefaultMessage()).append(";"); + } + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), builder.toString()); + } + + @ExceptionHandler(NoHandlerFoundException.class) + public R handlerNoFoundException(NoHandlerFoundException e) { + logger.warn(e.getMessage(), e); + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), "路径不存在,请检查路径是否正确"); + } + + + /** + * 访问接口参数不全 + * + * @param request + * @param pe + * @return + */ + @ExceptionHandler(MissingServletRequestParameterException.class) + public R missingServletRequestParameterException(HttpServletRequest request, MissingServletRequestParameterException pe) { + logger.info("请求地址:{},\n异常: {}", request.getRequestURI(), pe); + return R.fail(ResultCode.INPUT_NOT_VALID.getCode(), pe.getMessage()); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/MappingHandlerMapping.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/MappingHandlerMapping.java new file mode 100644 index 00000000..49982e09 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/MappingHandlerMapping.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.context.request.NativeWebRequest; +import org.springframework.web.context.request.RequestAttributes; +import org.springframework.web.context.request.ServletWebRequest; +import org.springframework.web.servlet.HandlerMapping; +import org.springframework.web.servlet.mvc.method.RequestMappingInfo; +import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.lang.reflect.Method; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; + +public class MappingHandlerMapping { + + private static final Logger LOGGER = LoggerFactory.getLogger(MappingHandlerMapping.class); + + /** + * 记录当前机器一注册api + */ + private static final Map MAPPINGS = new ConcurrentHashMap<>(); + private static final Method method; + + static { + try { + method = RequestHandler.class.getDeclaredMethod("invoke", HttpServletRequest.class, HttpServletResponse.class, Map.class, Map.class, Map.class); + } catch (NoSuchMethodException e) { + throw new UnsupportedOperationException(e); + } + } + + private RequestMappingHandlerMapping requestMappingHandlerMapping; + private RequestHandler handler; + private String prefix = "v1.0.0"; + + public static ApiEntity getMappingApiInfo(HttpServletRequest request) { + NativeWebRequest webRequest = new ServletWebRequest(request); + String requestMapping = (String) webRequest.getAttribute(HandlerMapping.BEST_MATCHING_PATTERN_ATTRIBUTE, RequestAttributes.SCOPE_REQUEST); + return getMappingApiInfo(buildMappingKey(request.getMethod(), requestMapping)); + } + + public static ApiEntity getMappingApiInfo(String key) { + return MAPPINGS.get(key); + } + + public static String buildMappingKey(String requestMethod, String requestMapping) { + return requestMethod.toUpperCase() + ":" + requestMapping; + } + + public void setRequestMappingHandlerMapping(RequestMappingHandlerMapping requestMappingHandlerMapping) { + this.requestMappingHandlerMapping = requestMappingHandlerMapping; + } + + public void setHandler(RequestHandler handler) { + this.handler = handler; + } + + /** + * 注册请求映射 + * + * @param api + */ + public void registerMapping(ApiEntity api) { + String mappingKey = getMappingKey(api); + if (MAPPINGS.containsKey(mappingKey)) { + // 取消注册 + MAPPINGS.remove(mappingKey); + requestMappingHandlerMapping.unregisterMapping(getRequestMapping(api)); + } + LOGGER.info("注册接口:{}:{}", api.getApiName(), mappingKey); + RequestMappingInfo requestMapping = getRequestMapping(api); + MAPPINGS.put(mappingKey, api); + requestMappingHandlerMapping.registerMapping(requestMapping, handler, method); + } + + /** + * 取消注册请求映射 + * + * @param api + */ + public void unregisterMapping(ApiEntity api) { + String mappingKey = getMappingKey(api); + if (MAPPINGS.containsKey(mappingKey)) { + // 取消注册 + MAPPINGS.remove(mappingKey); + requestMappingHandlerMapping.unregisterMapping(getRequestMapping(api)); + } + LOGGER.info("取消注册接口:{}:{}", api.getApiName(), mappingKey); + } + + private String getMappingKey(ApiEntity api) { + return buildMappingKey(api.getReqMethod().toUpperCase(), api.getApiUrl()); + } + + private RequestMappingInfo getRequestMapping(ApiEntity api) { + return RequestMappingInfo.paths(api.getApiUrl()).methods(RequestMethod.valueOf(api.getReqMethod().toUpperCase())).build(); + } + + /** + * 调用接口 /services/v1.0.0/user/1 + * + * @param version + * @param path + * @return + */ + // private String getRequestPath(String version, String path) { + // if (version != null) { + // prefix = version; + // } + // return Constants.PREFIX + SEPARATOR + prefix + (path.startsWith(SEPARATOR) ? path : (SEPARATOR + path)); + // } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestHandler.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestHandler.java new file mode 100644 index 00000000..ef626a27 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestHandler.java @@ -0,0 +1,109 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.service.api.impl.ApiMappingEngine; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.ResponseBody; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.HashMap; +import java.util.Map; + +public class RequestHandler { + + private static final Logger LOGGER = LoggerFactory.getLogger(RequestHandler.class); + + private RequestInterceptor requestInterceptor; + + private ApiMappingEngine apiMappingEngine; + + private ObjectMapper objectMapper; + + private AsyncTask asyncTask; + + public void setRequestInterceptor(RequestInterceptor requestInterceptor) { + this.requestInterceptor = requestInterceptor; + } + + public void setApiMappingEngine(ApiMappingEngine apiMappingEngine) { + this.apiMappingEngine = apiMappingEngine; + } + + public void setObjectMapper(ObjectMapper objectMapper) { + this.objectMapper = objectMapper; + } + + public void setAsyncTask(AsyncTask asyncTask) { + this.asyncTask = asyncTask; + } + + @ResponseBody + public R>> invoke(HttpServletRequest request, HttpServletResponse response, + @PathVariable(required = false) Map pathVariables, + @RequestParam(required = false) Map requestParams, + @RequestBody(required = false) Map requestBodys) { + + ApiEntity api = MappingHandlerMapping.getMappingApiInfo(request); + PageResult> value = null; + boolean isSuccess = false; + try { + Map params = new HashMap<>(); + if (null != pathVariables && !pathVariables.isEmpty()) { + LOGGER.info("pathVariables:{}", pathVariables); + params.putAll(pathVariables); + } + if (null != requestParams && !requestParams.isEmpty()) { + LOGGER.info("requestParams:{}", requestParams); + params.putAll(requestParams); + } + if (null != requestBodys && !requestBodys.isEmpty()) { + LOGGER.info("requestBodys:{}", requestBodys); + params.putAll(requestBodys); + } + // 执行前置拦截器 + requestInterceptor.preHandle(request, response, api, params); + Long startTime = System.currentTimeMillis(); + value = apiMappingEngine.execute(api, params); + Long endTime = System.currentTimeMillis(); + // 执行后置拦截器 + requestInterceptor.postHandle(request, response, api, params,value, asyncTask,(endTime-startTime)); + isSuccess = true; + return R.ok(value); + } catch (BaseException e) { + return R.fail(e.getCode(),e.getMessage()); + } catch (Exception e){ + if(LOGGER.isDebugEnabled()){ + LOGGER.error("执行api任务失败",e); + }else{ + LOGGER.error("execute api error ,message is :{}",e.getMessage()); + } + return R.fail(ResultCode.FAILED.getCode(), e.getMessage()); + }finally { + statistics(api.getApiCode(),request,isSuccess); + } + } + + /** + * 统计接口调用次数 + * @param apiCode + * @param request + * @param isSuccess + */ + private void statistics(String apiCode, HttpServletRequest request, Boolean isSuccess) { + String orgNo = request.getHeader("orgNo"); + if(orgNo != null){ + asyncTask.doStatics(orgNo,apiCode,isSuccess); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestInterceptor.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestInterceptor.java new file mode 100644 index 00000000..99b3f9e8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/handler/RequestInterceptor.java @@ -0,0 +1,95 @@ +package com.jiuyv.sptcc.agile.dataservice.handler; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.config.async.AsyncTask; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.EnableState; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.utils.IPUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.List; +import java.util.Map; + +public class RequestInterceptor { + + private static final Logger LOGGER = LoggerFactory.getLogger(RequestInterceptor.class); + + private static final String SYSTEM_CONSOLE = "SYSTEM_CONSOLE"; + + /** + * 请求之前执行 + * + * @return 当返回对象时,直接将此对象返回到页面,返回null时,继续执行后续操作 + * @throws Exception + */ + public void preHandle(HttpServletRequest request, HttpServletResponse response, ApiEntity api, Map params) throws JsonProcessingException { + LOGGER.info("************ApiInterceptor preHandle executed**********"); + String uri = request.getRequestURI(); + LOGGER.info("getRequestURI的值:{}" ,uri); + String ipAddr = IPUtil.getIpAddr(request); + LOGGER.info("ipAddr的值:{}" , ipAddr); + + LOGGER.info("request body {}",JacksonUtil.obj2String(params)); + + // 参数校验 + if (ApiCrypto.ApiState.WAIT.getCode().equals(api.getStatus())){ + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + ObjectMapper objectMapper = new ObjectMapper(); + TypeReference> typeReference = new TypeReference>(){}; + List list = objectMapper.readValue(api.getReqParams(), typeReference); + if (null != params && !params.isEmpty()) { + list.forEach(param -> { + if (params.containsKey(param.getParamName())) { + // 参数类型是否正确 + try { + Object parse = DataApiEnum.ParamType.parse(DataApiEnum.ParamType.getParamType(param.getParamType()), params.get(param.getParamName())); + params.put(param.getParamName(),parse); + } catch (Exception e) { + throw new BaseException(ResultCode.INPUT_NOT_VALID.getCode(),param.getParamName()); + } + } + }); + } + + } + + /** + * 执行完毕之后执行 + * + * @throws Exception + */ + public void postHandle(HttpServletRequest request, HttpServletResponse response, ApiEntity api, Map params, Object value, AsyncTask asyncTask,Long time) { + LOGGER.info("response body {}",value); + // 如果是测试接口饿话,记录日志 + String header = request.getHeader(SYSTEM_CONSOLE); + if(StringUtils.isNotBlank(header)){ + ApiLogEntity log = new ApiLogEntity(); + log.setApiId(api.getApiId()); + String uri = request.getRequestURI(); + log.setCallerUrl(uri); + String ipAddr = IPUtil.getIpAddr(request); + log.setCallerIp(ipAddr); + log.setStatus(EnableState.ENABLE.getCode()); + log.setApiName(api.getApiName()); + log.setCallerParams(JacksonUtil.obj2String(params)); + log.setMsg(JacksonUtil.obj2String(value)); + log.setCallerId(null); + log.setTime(time); + asyncTask.doTask(log); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/ApiParams.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/ApiParams.java new file mode 100644 index 00000000..ffb1f54e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/ApiParams.java @@ -0,0 +1,21 @@ +package com.jiuyv.sptcc.agile.dataservice.parmasValidate; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.ApiDtoBase; + +/** + * @ClassName : ApiParams + * @Description : + * @Author : sky + * @Date: 2023-09-20 18:53 + */ +public class ApiParams implements Validate{ + + @Override + public void paramsVal(Object content) { + ApiDtoBase base = (ApiDtoBase) content; + String apiUrl = base.getApiUrl(); + //格式校验,要求 /*/* + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/Validate.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/Validate.java new file mode 100644 index 00000000..ef8bf26b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/parmasValidate/Validate.java @@ -0,0 +1,12 @@ +package com.jiuyv.sptcc.agile.dataservice.parmasValidate; + +/** + * @ClassName : Validate + * @Description : 参数校验 + * @Author : sky + * @Date: 2023-09-20 18:51 + */ +public interface Validate { + + void paramsVal(Object content); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/ISyncRecordService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/ISyncRecordService.java new file mode 100644 index 00000000..1e9cdb85 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/ISyncRecordService.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.dataservice.service; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; + +import java.util.Date; + +/** + * 客流表文件Service接口 + * + * @author shu_kai + * @date 2023-09-26 + */ +public interface ISyncRecordService { + /** + * 查询客流表文件列表 + * + * @param syncRecord 客流表文件 + * @return 客流表文件集合 + */ + SyncRecord selectSyncRecordList(String fileType, Date txnDate); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/AgileApiService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/AgileApiService.java new file mode 100644 index 00000000..e4443d09 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/AgileApiService.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api; + +import com.aspose.words.Document; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiDelRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiStatusRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; + +import java.util.List; + +/** + * 敏捷API + * + * @author yulei + */ +public interface AgileApiService { + + void releaseDataApi(); + + void cancelDataApi(); + + void saveDataApi(ApiEntity entity); + + void updateDataApi(ApiEntity entity); + + ApiEntity getDataApiById(Long id); + + void copyDataApi(Long id, String userName); + + /** + * 发布api接口 + * @param request + */ + void releaseDataApi(ApiStatusRequest request); + + List queryByList(ApiEntity entity); + + List buildApiTree(ApiEntity entity); + + void deleteDataApiById(ApiDelRequest request); + + void registerDataApi(ApiStatusRequest request); + + void cancelDataApi(ApiStatusRequest request); + + /** + * 下架api + * + * @param dto + */ + void downDataApi(ApiStatusRequest dto); + + /** + * 查询用户API列表 + * + * @param request + * @return + */ + List getUserApiList(ApiUserRequest request); + + /** + * 获取API接口统一路径 + * + * @return + */ + String getApiPrefixPath(); + + /** + * 接口文档生成 + * @param id + * @return + * @throws Exception + */ + Document wordDataApi(Long id); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/ApiLogService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/ApiLogService.java new file mode 100644 index 00000000..a401d37c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/ApiLogService.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; + +import java.util.List; + +public interface ApiLogService { + + ApiLogEntity saveApiLog(ApiLogEntity Entity); + + ApiLogEntity getApiLogById(Long id); + + List queryByList(ApiLogEntity entity); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/MetadataSourceService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/MetadataSourceService.java new file mode 100644 index 00000000..8d4eec67 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/MetadataSourceService.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; + +/** + *

+ * 数据源信息表 服务类 + *

+ */ +public interface MetadataSourceService { + + MetadataSourceEntity getMetadataSourceById(Long id); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/AgileApiServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/AgileApiServiceImpl.java new file mode 100644 index 00000000..7643b424 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/AgileApiServiceImpl.java @@ -0,0 +1,536 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.aspose.words.Document; +import com.aspose.words.MailMerge; +import com.aspose.words.net.System.Data.DataRow; +import com.aspose.words.net.System.Data.DataTable; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.node.ObjectNode; +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.dto.RespVo; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.common.exception.ServiceException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.TblDataUserApi; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.ApiLogTime; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiLogMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiDelRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiStatusRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.handler.MappingHandlerMapping; +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import com.jiuyv.sptcc.agile.dataservice.utils.AddressUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm3Util; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.word.WordUtil; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.core.io.ClassPathResource; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.io.InputStream; +import java.util.*; +import java.util.concurrent.ConcurrentHashMap; +import java.util.stream.Collectors; + +/** + * @author yulei + */ +@Service +public class AgileApiServiceImpl implements AgileApiService { + + private static final Logger LOGGER = LoggerFactory.getLogger(AgileApiServiceImpl.class); + + private static final Map mappings = new ConcurrentHashMap<>(); + + @Resource + private ApiMapper apiMapper; + @Resource + private BaseMapper baseMapper; + @Resource + private ObjectMapper objectMapper; + @Resource + private ApiLogMapper apiLogMapper; + @Resource + private MappingHandlerMapping mappingHandlerMapping; + @Value("${api.test.avgTime}") + private long avgTime; + @Value("${api.test.num}") + private int num; + /** + * 获取API接口统一路径 + * + * @return + */ + @Override + public String getApiPrefixPath() { + return Constants.PREFIX; + } + + @Override + public void releaseDataApi() { + + String[] status = {ApiCrypto.ApiState.RELEASE.getCode(), ApiCrypto.ApiState.REGISTER.getCode()}; + List list = apiMapper.selectListByStatus(status); + LOGGER.info("list size {}", list.size()); + if (!CollectionUtils.isEmpty(list)) { + list = list.stream().filter(x-> x.getApiType().equals(DataApiEnum.API_TYPE.AGILE.getCode())).collect(Collectors.toList()); + list.forEach(this::register); + } + } + + @Override + public void cancelDataApi() { + String[] status = {ApiCrypto.ApiState.WAIT.getCode()}; + List list = apiMapper.selectListByStatus(status); + if (!CollectionUtils.isEmpty(list)) { + list = list.stream().filter(x-> x.getApiType().equals(DataApiEnum.API_TYPE.AGILE.getCode())).collect(Collectors.toList()); + list.forEach(this::unRegister); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void saveDataApi(ApiEntity entity) { + + ApiEntity only = apiMapper.getByApiCode(entity.getApiCode()); + if (only != null) { + throw new BaseException(ResultCode.API_CODE_HAS_USED); + } + // 检测同一个地址是否被占用 + ApiEntity vo = new ApiEntity(); + vo.setApiUrl(entity.getApiUrl()); + vo.setReqMethod(entity.getReqMethod()); + List list = apiMapper.selectList(vo); + if (!CollectionUtils.isEmpty(list)) { + throw new BaseException(ResultCode.API_PATH_HAS_USED); + } + entity.setStatus(DataApiEnum.API_STATUS.WAIT.getCode()); + entity.setApiType(DataApiEnum.API_TYPE.AGILE.getCode()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setVersion(Constants.VERSION); + int insert = apiMapper.insert(entity); + if (insert != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void updateDataApi(ApiEntity entity) { + ApiEntity byId = apiMapper.getById(entity.getApiId()); + if (byId == null) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + ApiEntity only = apiMapper.getByApiCode(entity.getApiCode()); + if (only != null && !only.getApiId().equals(entity.getApiId())) { + throw new BaseException(ResultCode.API_CODE_HAS_USED); + } + + ApiEntity vo = new ApiEntity(); + vo.setApiUrl(entity.getApiUrl()); + vo.setReqMethod(entity.getReqMethod()); + List list = apiMapper.selectList(vo); + if (!CollectionUtils.isEmpty(list)) { + for (ApiEntity apiEntity : list) { + if(apiEntity.getReqMethod().equals(entity.getReqMethod()) + &&Objects.equals(apiEntity.getApiUrl(),entity.getApiUrl()) + &&!Objects.equals(apiEntity.getApiId(),entity.getApiId())){ + throw new BaseException(ResultCode.API_PATH_HAS_USED); + } + } + } + + entity.setApiType(DataApiEnum.API_TYPE.AGILE.getCode()); + int row = apiMapper.updateById(entity); + if (row != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + @Override + public ApiEntity getDataApiById(Long id) { + ApiEntity apiEntity = apiMapper.getById(id); + if (null == apiEntity) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + return apiEntity; + } + + @Override + public void deleteDataApiById(ApiDelRequest request) { + ApiEntity apiEntity = apiMapper.getById(request.getApiId()); + if (null == apiEntity) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + if (DataApiEnum.API_STATUS.DOWN.getCode().equals(apiEntity.getStatus())||apiEntity.getStatus().equals(DataApiEnum.API_STATUS.WAIT.getCode())) { + ApiEntity entity = new ApiEntity(); + entity.setApiId(request.getApiId()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setUpdateBy(request.getUserName()); + entity.setParams(ParamsUtil.idempotent(request.getRecToken(), null)); + int i = apiMapper.deleteById(entity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + }else{ + throw new BaseException(ResultCode.API_DELETE_ERROR); + } + + + } + + @Override + public void copyDataApi(Long id, String userName) { + ApiEntity apiEntity = Optional.ofNullable(apiMapper.getById(id)).orElseThrow(() -> new BaseException(ResultCode.DATE_NOT_EXIST)); + + ApiEntity copy = new ApiEntity(); + copy.setApiName(apiEntity.getApiName() + Constants.COPY ); + //原始API+时间戳作为新版本号 + String apiVersion = apiEntity.getApiVersion(); + apiVersion = apiVersion.concat(Constants.LINE).concat(baseMapper.selectSeq()+""); + copy.setApiVersion(apiVersion); + //获取原始用户API地址,组装新的地址 + String apiUrl = apiEntity.getApiUrl(); + String apiUrlAfter = AddressUtil.getApiUrl(apiUrl,apiEntity.getApiVersion()); + String newUrl = AddressUtil.getRequestPath(apiVersion,apiUrlAfter); + copy.setApiUrl(newUrl); + copy.setReqMethod(apiEntity.getReqMethod()); + copy.setResType(apiEntity.getResType()); + copy.setDeny(apiEntity.getDeny()); + copy.setRateLimit(apiEntity.getRateLimit()); + copy.setExecuteConfig(apiEntity.getExecuteConfig()); + copy.setReqParams(apiEntity.getReqParams()); + copy.setResParams(apiEntity.getResParams()); + copy.setStatus(DataApiEnum.API_STATUS.WAIT.getCode()); + copy.setCreateBy(userName); + copy.setSourceId(apiEntity.getSourceId()); + copy.setApiType(apiEntity.getApiType()); + copy.setApiCode(getNewApiCode()); + copy.setRecToken(IdUtils.getNewRecToken()); + int insert = apiMapper.insert(copy); + if (insert != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + /** + * @return + */ + public String getNewApiCode() { + Long seq = baseMapper.selectSeq(); + String seqStr = String.valueOf(seq); + return Constants.PRE_APICODE.concat(seqStr); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void registerDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.WAIT); + this.updateStatus(request, DataApiEnum.API_STATUS.REGISTER); + apiEntity.setStatus(DataApiEnum.API_STATUS.REGISTER.getCode()); + register(apiEntity); + } + + /** + * 注册API + * + * @param apiEntity + */ + private void register(ApiEntity apiEntity) { + if (!mappings.containsKey(apiEntity.getApiId().toString())) { + mappingHandlerMapping.registerMapping(apiEntity); + mappings.put(apiEntity.getApiId().toString(), apiEntity); + } + + } + + /** + * 取消注册API + * + * @param apiEntity + */ + private void unRegister(ApiEntity apiEntity) { + if (mappings.containsKey(apiEntity.getApiId().toString())) { + mappingHandlerMapping.unregisterMapping(apiEntity); + mappings.remove(apiEntity.getApiId().toString()); + } + } + + + @Transactional(rollbackFor = Exception.class) + @Override + public void cancelDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.REGISTER); + this.updateStatus(request, DataApiEnum.API_STATUS.WAIT); + unRegister(apiEntity); + } + + /** + * 下架api + * + * @param request + */ + @Transactional(rollbackFor = Exception.class) + @Override + public void downDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.RELEASE); + // 检查该API是否被使用 + int isUse = apiMapper.check(request.getApiId()); + if (isUse > 0) { + throw new BaseException(ResultCode.API_HAS_ORG); + } + this.updateStatus(request, DataApiEnum.API_STATUS.DOWN); + // 发布的API可以下架 + unRegister(apiEntity); + } + + /** + * 检查数据与状态 + * + * @param apiId 接口Id + * @param status 接口当前应该状态 + */ + public ApiEntity checkApi(Long apiId, DataApiEnum.API_STATUS status) { + ApiEntity apiEntity = apiMapper.getById(apiId); + if (apiEntity == null) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + if (!status.getCode().equals(apiEntity.getStatus())) { + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + return apiEntity; + } + + /** + * 更新API状态 + * + * @param request api基本参数 + * @param status 要更新的状态 + */ + public void updateStatus(ApiStatusRequest request, DataApiEnum.API_STATUS status) { + ApiEntity entity = new ApiEntity(); + entity.setApiId(request.getApiId()); + entity.setStatus(status.getCode()); + entity.setUpdateBy(request.getUserName()); + entity.setRecToken(IdUtils.getNewRecToken()); + entity.setParams(ParamsUtil.idempotent(request.getRecToken(), null)); + int i = apiMapper.updateById(entity); + if (i != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + + } + + /** + * 发布api接口 + * @param request + */ + @Override + public void releaseDataApi(ApiStatusRequest request) { + ApiEntity apiEntity = this.checkApi(request.getApiId(), DataApiEnum.API_STATUS.REGISTER); + + // 最后一次更新后,近10次的API接口测试数据 + ApiLogEntity logEntity = new ApiLogEntity(); + logEntity.setApiId(request.getApiId()); + logEntity.setCallerDate(apiEntity.getUpdateTime()); + ApiLogTime apiLogTime = apiLogMapper.countBy(logEntity); + + if (apiLogTime == null || apiLogTime.getCount() < num) { + throw new ServiceException("测试小于 10 次,不允许发布"); + } + if (apiLogTime.getAvgTime() > avgTime) { + throw new ServiceException("服务平均耗时大于10秒,不允许发布"); + } + // 发布 + this.updateStatus(request, DataApiEnum.API_STATUS.RELEASE); + + } + + @Override + public List queryByList(ApiEntity entity) { + return apiMapper.selectList(entity); + } + + @Override + public List buildApiTree(ApiEntity entity) { + entity.setStatus(DataApiEnum.API_STATUS.RELEASE.getCode()); + List selectList = apiMapper.selectList(entity); + if (!CollectionUtils.isEmpty(selectList)) { + Map> apiMap = selectList.stream().collect(Collectors.groupingBy(ApiEntity::getApiType)); + List treeSelectList = new ArrayList<>(); + Set keySet = apiMap.keySet(); + for (String s : keySet) { + TreeSelect treeSelect = new TreeSelect(); + String apiTypeName = DataApiEnum.API_TYPE.AGILE.getMsg(); + if (DataApiEnum.API_TYPE.SYSTEM.getCode().equals(s)) { + apiTypeName = DataApiEnum.API_TYPE.SYSTEM.getMsg(); + } + treeSelect.setLabel(apiTypeName); + List apiEntityList = apiMap.get(s); + List apiTreeList = new ArrayList<>(); + apiEntityList.stream().forEach(x -> { + TreeSelect tempTree = new TreeSelect(); + tempTree.setId(x.getApiId()); + tempTree.setLabel(x.getApiName()); + apiTreeList.add(tempTree); + }); + treeSelect.setChildren(apiTreeList); + treeSelectList.add(treeSelect); + } + return treeSelectList; + } + return new ArrayList<>(); + } + + /** + * 查询用户API列表 + * + * @param request + * @return + */ + @Override + public List getUserApiList(ApiUserRequest request) { + return apiMapper.getUserApi(request.getMemberId()); + } + + @Override + public Document wordDataApi(Long id){ + + ApiEntity dataApiEntity = apiMapper.getById(id); + if(dataApiEntity == null){ + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + Document doc = null; + try { + ClassPathResource classPathResource = new ClassPathResource("templates/api_1.0.1.docx"); + InputStream inputStream = classPathResource.getInputStream(); + doc = WordUtil.getInstance().getDocument(inputStream); + + // 提供字段 + String[] fieldNames = new String[]{"apiName", "apiVersion", "reqMethod", "resType", "apiUrl", "remark", "transCode", "secretkey"}; + Object[] fieldValues = new Object[]{dataApiEntity.getApiName(), dataApiEntity.getApiVersion(), dataApiEntity.getReqMethod(), dataApiEntity.getResType(), dataApiEntity.getApiUrl(), dataApiEntity.getRemark(), dataApiEntity.getApiCode() , "secretkey"}; + MailMerge mailMerge = doc.getMailMerge(); + mailMerge.execute(fieldNames, fieldValues); + // 请求参数 TableStart:ReqParamList TableEnd:ReqParamList + DataTable reqParamTable = new DataTable("ReqParamList"); + reqParamTable.getColumns().add("paramName"); + reqParamTable.getColumns().add("paramComment"); + reqParamTable.getColumns().add("paramType"); + reqParamTable.getColumns().add("nullable"); + reqParamTable.getColumns().add("exampleValue"); + List reqParamList = JacksonUtil.string2Obj(dataApiEntity.getReqParams(), new TypeReference>() {}); + //分页参数 + ReqParam pageNum = new ReqParam(); + pageNum.setParamName("pageNum"); + pageNum.setNullable("N"); + pageNum.setParamComment("分页页码"); + pageNum.setWhereType(DataApiEnum.WHERE_TYPE.EQUALS.getType()); + pageNum.setParamType(DataApiEnum.ParamType.INTEGER.getCode()); + pageNum.setExampleValue("默认是1"); + pageNum.setDefaultValue("1"); + + ReqParam pageSize = new ReqParam(); + pageSize.setParamName("pageSize"); + pageSize.setNullable("N"); + pageSize.setParamComment("分页大小"); + pageSize.setWhereType(DataApiEnum.WHERE_TYPE.EQUALS.getType()); + pageSize.setParamType(DataApiEnum.ParamType.INTEGER.getCode()); + pageSize.setExampleValue("默认是10"); + pageSize.setDefaultValue("10"); + + reqParamList = reqParamList == null? new ArrayList<>():reqParamList; + //分页参数 + reqParamList.add(pageNum); + reqParamList.add(pageSize); + + for (ReqParam reqParam : reqParamList) { + DataRow row = reqParamTable.newRow(); + row.set(0, reqParam.getParamName()); + row.set(1, reqParam.getParamComment()); + row.set(2,reqParam.getParamType()); + row.set(3, "1".equals(reqParam.getNullable()) ? "Y" : "N"); + row.set(4, reqParam.getExampleValue()); + reqParamTable.getRows().add(row); + } + + mailMerge.executeWithRegions(reqParamTable); + // 返回字段 TableStart:ResParamList TableEnd:ResParamList + DataTable resParamTable = new DataTable("ResParamList"); + resParamTable.getColumns().add("fieldName"); + resParamTable.getColumns().add("dataType"); + resParamTable.getColumns().add("fieldComment"); + resParamTable.getColumns().add("exampleValue"); + List resParamList = JacksonUtil.string2Obj(dataApiEntity.getResParams(), new TypeReference>() {}); + resParamList = resParamList ==null ?new ArrayList<>():resParamList; + for (ResParam resParam : resParamList) { + DataRow row = resParamTable.newRow(); + row.set(0, resParam.getFieldName()); + row.set(1, resParam.getDataType()); + row.set(2, resParam.getFieldComment()); + row.set(3, resParam.getExampleValue()); + resParamTable.getRows().add(row); + } + + mailMerge.executeWithRegions(resParamTable); + // 返回示例 reqExample resExample + ObjectNode objectNode = objectMapper.createObjectNode(); + for (ResParam param : resParamList) { + objectNode.put(param.getFieldName(), param.getExampleValue()); + } + + this.buildReturn(objectNode,mailMerge,dataApiEntity.getApiCode()); + WordUtil.getInstance().insertWatermarkText(doc, "jiuyv.sptcc.agile"); + return doc; + }catch (Exception e){ + LOGGER.error("生成接口文档异常",e); + } + return doc; + } + + void buildReturn(ObjectNode objectNode,MailMerge mailMerge,String transCode) throws Exception { + + LinkedList objectNodes = new LinkedList<>(); + objectNodes.add(objectNode); + PageResult pageResult = new PageResult<>(); + pageResult.setPageNum(1); + pageResult.setRows(objectNodes); + pageResult.setPageSize(20); + pageResult.setTotal(1L); + + RespVo respVo = new RespVo(); + respVo.setRespCode(ResultCode.SUCCESS.getCode()); + respVo.setRespDesc(ResultCode.SUCCESS.getCode()); + respVo.setRespSubCode(""); + respVo.setRespSubDesc(""); + respVo.setSeriNo(IdUtils.fastSimpleUUID()); + respVo.setOrgCode("JGH12222"); + respVo.setTimestamp(new Date()); + respVo.setTransCode(transCode); + respVo.setSign(Sm3Util.encrypt(respVo.toString())); + respVo.setBody(Sm4Util.encryptEcb("886f918cb40cb5a5014402a6c00cda74",JacksonUtil.obj2String(pageResult))); + + mailMerge.execute(new String[]{"reqExample", "resExample"}, new Object[]{ + objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(respVo), + objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(pageResult)}); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiLogServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiLogServiceImpl.java new file mode 100644 index 00000000..1e2bec03 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiLogServiceImpl.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiLogEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiLogMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.service.api.ApiLogService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class ApiLogServiceImpl implements ApiLogService { + + @Resource + private ApiLogMapper apiLogMapper; + + @Resource + private BaseMapper baseMapper; + + @Override + public ApiLogEntity saveApiLog(ApiLogEntity Entity) { + Entity.setCallerDate(baseMapper.selectSysCurrentTime().getDate()); + apiLogMapper.insert(Entity); + return Entity; + } + + @Override + public ApiLogEntity getApiLogById(Long id) { + return apiLogMapper.getById(id); + } + + @Override + public List queryByList(ApiLogEntity entity) { + return apiLogMapper.selectList(entity); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiMappingEngine.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiMappingEngine.java new file mode 100644 index 00000000..c4ddf022 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/ApiMappingEngine.java @@ -0,0 +1,105 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; +import com.jiuyv.sptcc.agile.dataservice.database.DataSourceFactory; +import com.jiuyv.sptcc.agile.dataservice.database.DbQuery; +import com.jiuyv.sptcc.agile.dataservice.database.DbQueryProperty; +import com.jiuyv.sptcc.agile.dataservice.dto.request.DbSchema; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ExecuteConfig; +import com.jiuyv.sptcc.agile.dataservice.dto.response.ResParam; +import com.jiuyv.sptcc.agile.dataservice.factory.AbstractFactory; +import com.jiuyv.sptcc.agile.dataservice.factory.FactoryProducer; +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; +import com.jiuyv.sptcc.agile.dataservice.service.api.MetadataSourceService; +import com.jiuyv.sptcc.agile.dataservice.utils.PageUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.SqlBuilderUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ThrowableUtil; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.List; +import java.util.Map; +import java.util.Optional; + +@Service +public class ApiMappingEngine { + + private static final Logger logger = LoggerFactory.getLogger(ApiMappingEngine.class); + + @Autowired + private DataSourceFactory dataSourceFactory; + + @Autowired + private MetadataSourceService metadataSourceService; + + public PageResult> execute(ApiEntity dataApi, Map params) throws JsonProcessingException { + ObjectMapper objectMapper = new ObjectMapper(); + ExecuteConfig executeConfig = objectMapper.readValue(dataApi.getExecuteConfig(), ExecuteConfig.class); + MetadataSourceEntity dataSource = Optional.ofNullable(metadataSourceService.getMetadataSourceById(executeConfig.getSourceId())).orElseThrow(() -> new RuntimeException("API调用查询数据源出错")); + DbSchema dbSchema = objectMapper.readValue(dataSource.getDbSchema(), DbSchema.class); + DbQueryProperty dbQueryProperty = new DbQueryProperty(dataSource.getDbType(), dbSchema.getHost(), + dbSchema.getUsername(), dbSchema.getPassword(), dbSchema.getPort(), dbSchema.getDbName(), dbSchema.getSid()); + DbQuery dbQuery = Optional.ofNullable(dataSourceFactory.createDbQuery(dbQueryProperty)).orElseThrow(() -> new RuntimeException("创建数据查询接口出错")); + // 参数 + Integer pageNum = Integer.parseInt(String.valueOf(params.getOrDefault("pageNum", 1))); + Integer pageSize = Integer.parseInt(String.valueOf(params.getOrDefault("pageSize", 10))); + PageUtil pageUtil = new PageUtil(pageNum, pageSize); + Integer offset = pageUtil.getOffset(); + SqlBuilderUtil.SqlFilterResult sqlFilterResult; + try { + sqlFilterResult = SqlBuilderUtil.getInstance().applyFilters(executeConfig.getSqlText(), params); + } catch (Exception e) { + logger.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new RuntimeException("API调用动态构造SQL语句出错"); + } + Map acceptedFilters = sqlFilterResult.getAcceptedFilters(); + + PageResult> pageResult; + try { + logger.info("执行的sql {},offset {},pageSize {} ", sqlFilterResult.getSql(), offset, pageSize); + pageResult = dbQuery.queryByPage(sqlFilterResult.getSql(), acceptedFilters, offset, pageSize); + } catch (Exception e) { + logger.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new RuntimeException("API调用查询结果集出错"); + } + // 数据脱敏 + TypeReference> typeReference = new TypeReference>() { + }; + try { + List resParams = objectMapper.readValue(dataApi.getResParams(), typeReference); + if (!CollectionUtils.isEmpty(resParams)) { + // 并行流处理脱敏 + pageResult.getRows().parallelStream().forEach(m -> { + resParams.stream().forEach(r -> { + if (m.containsKey(r.getFieldName())) { + Object obj = m.get(r.getFieldName()); + if (null != obj) { + if (StringUtils.isNotEmpty(r.getCipherType()) && StringUtils.isNotEmpty(r.getCryptType())) { + AbstractFactory factory = FactoryProducer.getFactory(r.getCipherType()); + Crypto crypto = factory.getCrypto(r.getCryptType()); + String encrypt = crypto.encrypt(String.valueOf(obj)); + m.put(r.getFieldName(), encrypt); + } + } + } + }); + }); + } + } catch (Exception e) { + logger.error("全局异常信息ex={}, StackTrace={}", e.getMessage(), ThrowableUtil.getStackTrace(e)); + throw new RuntimeException("API调用数据脱敏出错"); + } + pageResult.setPageNum(pageNum); + pageResult.setPageSize(pageSize); + return pageResult; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/MetadataSourceServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/MetadataSourceServiceImpl.java new file mode 100644 index 00000000..e2318d35 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/api/impl/MetadataSourceServiceImpl.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.dataservice.service.api.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.MetadataSourceEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.MetadataSourceMapper; +import com.jiuyv.sptcc.agile.dataservice.service.api.MetadataSourceService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + *

+ * 数据源信息表 服务实现类 + *

+ */ +@Service +public class MetadataSourceServiceImpl implements MetadataSourceService { + + @Autowired + private MetadataSourceMapper metadataSourceMapper; + + @Override + public MetadataSourceEntity getMetadataSourceById(Long id) { + MetadataSourceEntity metadataSourceEntity = metadataSourceMapper.getById(id); + return metadataSourceEntity; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/impl/SyncRecordServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/impl/SyncRecordServiceImpl.java new file mode 100644 index 00000000..b2c64142 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/impl/SyncRecordServiceImpl.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.service.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.SyncRecordMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataStatusEnum; +import com.jiuyv.sptcc.agile.dataservice.service.ISyncRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import java.util.Date; +import java.util.List; + +/** + * 客流表文件Service业务层处理 + * + * @author shu_kai + * @date 2023-09-26 + */ +@Service +public class SyncRecordServiceImpl implements ISyncRecordService { + @Autowired + private SyncRecordMapper syncRecordMapper; + + /** + * 查询客流表文件列表 + * @return 客流表文件 + */ + @Override + public SyncRecord selectSyncRecordList(String fileType, Date txnDate) { + SyncRecord syncRecord = new SyncRecord(); + syncRecord.setTableName(fileType); + syncRecord.setTxnData(txnDate); + syncRecord.setDataStatus(DataStatusEnum.SUCCESS.getCode()); + List syncRecords = syncRecordMapper.selectSyncRecordList(syncRecord); + if(CollectionUtils.isEmpty(syncRecords)){ + return null; + } + return syncRecords.get(0); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgConfigService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgConfigService.java new file mode 100644 index 00000000..1f578e99 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgConfigService.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; + +import java.util.Date; +import java.util.List; + +/** + * 机构配置信息 + * + * @author yulei + **/ +public interface IOrgConfigService { + + List queryList(OrgConfig config); + + OrgConfig queryDetail(Long configId); + + void addOrgConfig(OrgConfig config); + + void updateOrgConfig(OrgConfig config); + + void deleteById(Long configId); + + /** + * 检测数据日期是否在可允许范围 + * @param metricDate + * @return + */ + boolean checkDataRange(Date metricDate,String orgNo); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgInfoService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgInfoService.java new file mode 100644 index 00000000..45f0fec3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgInfoService.java @@ -0,0 +1,92 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgDelReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoAddReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoEditReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoStatusReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; + +import java.util.Date; +import java.util.List; + +/** + * 【机构管理信息】Service接口 + * + * @author yulei + * @date 2023-06-16 + */ +public interface IOrgInfoService { + /** + * 查询【机构管理信息】 + * + * @param orgNo 【机构管理信息】主键 + * @return 【机构管理信息】 + */ + OrgInfoEntity selectOrgInfoByOrgNo(String orgNo); + + /** + * 查询【机构管理信息】列表 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 【机构管理信息】集合 + */ + List selectOrgInfoList(OrgInfoEntity orgInfoEntity); + + + /** + * 授权 + * + * @param orgNo + * @param apiIds + */ + void orgApiAuth(OrgApiAuthRequest request); + + /** + * 列表 + * + * @param orgNo + * @return + */ + Long[] orgApiAuthList(String orgNo); + + /** + * 新增机构 + * + * @param addReq + */ + void add(OrgInfoAddReq addReq); + + /** + * 更新结构信息 + * + * @param request + */ + void update(OrgInfoEditReq request); + + /** + * 删除机构 + * + * @param request + */ + void delete(OrgDelReq request); + + /** + * 启动机构 + * + * @param request + */ + void run(OrgInfoStatusReq request); + + /** + * 停止机构 + * + * @param request + */ + void stop(OrgInfoStatusReq request); + + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgStatisticsService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgStatisticsService.java new file mode 100644 index 00000000..2f061a9f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/IOrgStatisticsService.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; + +import java.util.List; + +/** + * 接口调用次数统计Service接口 + * + * @author yulei + * @date 2023-06-16 + */ +public interface IOrgStatisticsService { + + /** + * 查询接口调用次数统计列表 + * + * @param orgStatistics 接口调用次数统计 + * @return 接口调用次数统计集合 + */ + List selectList(OrgStatisticsEntity orgStatistics); + + /** + * 新增接口调用次数统计 + * + * @param orgStatistics 接口调用次数统计 + * @return 结果 + */ + int insertOrgStatistics(OrgStatisticsEntity orgStatistics); + + /** + * 新增接口调用次数统计 + * @param orgNo + * @param apiCode + * @param isuceess + */ + void insertOrgStatistics(String orgNo, String apiCode,Boolean isuceess); + + /** + * 获取会员的接口统计情况 + * + * @param memberId + * @return + */ + List getUserInfo(String memberId); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgApiAuthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgApiAuthService.java new file mode 100644 index 00000000..ef8507f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgApiAuthService.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; + +import java.util.List; + +/** + * 【机构接口权限表】(OrgApiAuth)表服务接口 + * + * @author makejava + * @since 2023-07-13 16:03:56 + */ +public interface OrgApiAuthService { + + + /** + * 分页查询 + * + * @param orgApiAuth 筛选条件 + * @param orgApiAuth 分页对象 + * @return 查询结果 + */ + List queryByPage(OrgApiAuth orgApiAuth); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgAuthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgAuthService.java new file mode 100644 index 00000000..1c7edb82 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/OrgAuthService.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgAuthEntity; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; + +import java.util.List; + +/** + * 机构权限接口 + * + * @ClassName : OrgAuthService + * @Author : sky + * @Date: 2023-07-13 13:49 + */ +public interface OrgAuthService { + + + /** + * 获取机构权限列表 + * @param req + * @return + */ + OrgAuthResp getOrgAuth(OrgAuthReq req); + + List selectAllApi(OrgAuthReq req); + + /** + * 机构权限校验 + * @param request + */ + OrgKeyResponse check(OrgAuthRequest request); + + /** + * 活接密钥 + * @param orgCode + * @return + */ + OrgKeyResponse getKey(String orgCode); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgApiAuthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgApiAuthServiceImpl.java new file mode 100644 index 00000000..ca70660a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgApiAuthServiceImpl.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.OrgApiAuthDao; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; +import com.jiuyv.sptcc.agile.dataservice.service.org.OrgApiAuthService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 【机构接口权限表】(OrgApiAuth)表服务实现类 + * + * @author makejava + * @since 2023-07-13 16:03:56 + */ +@Service("orgApiAuthService") +public class OrgApiAuthServiceImpl implements OrgApiAuthService { + @Resource + private OrgApiAuthDao orgApiAuthDao; + + /** + * 分页查询 + * + * @param orgApiAuth 筛选条件 + * @return 查询结果 + */ + @Override + public List queryByPage(OrgApiAuth orgApiAuth) { + return orgApiAuthDao.selectList(orgApiAuth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java new file mode 100644 index 00000000..36378e17 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java @@ -0,0 +1,226 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.OrgApiAuthDao; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.extend.OrgAuthEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ApiCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.OrgAuthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.IpWhiteCheckUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.cache.annotation.Cacheable; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; + +/** + * @ClassName : OrgAuthServiceImpl + * @Description : + * @Author : sky + * @Date: 2023-07-13 16:39 + */ +@Service +public class OrgAuthServiceImpl implements OrgAuthService { + + private static final Logger LOGGER = LoggerFactory.getLogger(OrgAuthServiceImpl.class); + + @Resource + private OrgInfoMapper orgInfoDao; + @Resource + private OrgApiAuthDao orgApiAuthDao; + @Resource + private ApiMapper apiMapper; + @Resource + private OrgConfigMapper configMapper; + + + /** + * 获取机构权限列表 + * + * @param req + * @return + */ + @Override + public OrgAuthResp getOrgAuth(OrgAuthReq req) { + + OrgInfoEntity orgInfo = orgInfoDao.selectOrgInfoByOrgNo(req.getOrgCode()); + if (orgInfo == null) { + throw new BaseException(ResultCode.ORG_NOT_FOUND); + } + if (!OrgCrypto.OrgInfoStatusCrypto.UP.getKey().equals(orgInfo.getStatus())) { + throw new BaseException(ResultCode.API_IS_DOWN); + } + + OrgAuthResp orgAuthResp = new OrgAuthResp(); + orgAuthResp.setOrgCode(orgInfo.getOrgNo()); + orgAuthResp.setSubOrgCode(req.getSubOrgCode()); + orgAuthResp.setOrgName(orgInfo.getOrgName()); + orgAuthResp.setOrgType(orgInfo.getOrgType()); + + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); + + orgAuthResp.setSalt(deptSalt); + orgAuthResp.setEncrypt(deptEncrypt); + orgAuthResp.setIp(orgInfo.getIp()); + orgAuthResp.setDataBegin(orgInfo.getDataBegin()); + orgAuthResp.setDataEnd(orgInfo.getDataEnd()); + + List orgApiEntities = apiMapper.selectOrgApi(req.getOrgCode()); + if (CollectionUtils.isEmpty(orgApiEntities)) { + throw new BaseException(ResultCode.API_NOT_RIGHT); + } + List apis = new ArrayList<>(); + for (OrgApiEntity o : orgApiEntities) { + // 只有已发布的才有效 + if (ApiCrypto.ApiState.RELEASE.getCode().equals(o.getStatus())) { + OrgAuthResp.Api api = toApi(o); + apis.add(api); + + } + } + orgAuthResp.setApiList(apis); + return orgAuthResp; + } + + @Cacheable(value = "SECOND_CACHE", keyGenerator = "customKeyGenerator") + @Override + public List selectAllApi(OrgAuthReq req) { + return orgApiAuthDao.selectAllApi(req); + } + + @Override + public OrgKeyResponse check(OrgAuthRequest request) { + String orgCode = request.getOrgCode(); + LOGGER.info("机构校验 {}", orgCode); + OrgInfoEntity orgInfo = orgInfoDao.selectOrgInfoByOrgNo(orgCode); + if (orgInfo == null) { + throw new BaseException(ResultCode.ORG_NOT_FOUND); + } + if (!OrgCrypto.OrgInfoStatusCrypto.UP.getKey().equals(orgInfo.getStatus())) { + throw new BaseException(ResultCode.API_IS_DOWN); + } + OrgKeyResponse response = new OrgKeyResponse(); + + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); + response.setSalt(deptSalt); + response.setEncrypt(deptEncrypt); + // 该机构的授权接口 + List orgApiEntities = apiMapper.selectOrgApi(orgCode); + if (CollectionUtils.isEmpty(orgApiEntities)) { + throw new BaseException(ResultCode.API_NOT_RIGHT); + } + // 是否包含交易码 + String apiCode = request.getApiCode(); + LOGGER.info("交易码校验 {}", apiCode); + List collect = orgApiEntities.stream().filter(x -> Objects.equals(apiCode, x.getApiCode())).collect(Collectors.toList()); + if (CollectionUtils.isEmpty(collect)) { + throw new BaseException(ResultCode.API_NOT_RIGHT); + } + OrgApiEntity orgApiEntity = collect.get(0); + + OrgAuthResp.Api api= toApi(orgApiEntity); + response.setApi(api); + + /* + * "1.168.1.1" //设置单个IP的白名单 // + * "192.168.3.17-192.168.3.38" //设置一个IP范围 + * "192.168.4.0/24"; //設置一个网段 + * 三种格式允许并行 + */ + LOGGER.info("白名单校验 {},white list {}", request.getIp(), orgInfo.getIp()); + if (!IpWhiteCheckUtil.isPermited(request.getIp(), orgInfo.getIp())) { + throw new BaseException(ResultCode.ORG_IP_WHILE_LIST); + } + // 数据范围权限 + checkDataTime(request); + return response; + } + + private OrgAuthResp.Api toApi(OrgApiEntity orgApiEntity) { + OrgAuthResp.Api api = new OrgAuthResp.Api(); + api.setApiId(orgApiEntity.getApiId()); + api.setStatus(orgApiEntity.getStatus()); + api.setRemark(orgApiEntity.getRemark()); + api.setApiName(orgApiEntity.getApiName()); + api.setApiVersion(orgApiEntity.getApiVersion()); + api.setApiUrl(orgApiEntity.getApiUrl()); + api.setReqMethod(orgApiEntity.getReqMethod()); + api.setResType(orgApiEntity.getResType()); + api.setExecuteConfig(orgApiEntity.getExecuteConfig()); + api.setReqParams(orgApiEntity.getReqParams()); + api.setResParams(orgApiEntity.getResParams()); + api.setApiCode(orgApiEntity.getApiCode()); + api.setApiType(orgApiEntity.getApiType()); + return api; + } + + + /** + * 该接口很具有范围特性,接口必须是查询类接口,切必须带有查询时间限制 + * + * @param request + */ + private void checkDataTime(OrgAuthRequest request) { + Date dataDate = request.getDataDate(); + if (dataDate == null) { + return; + } + OrgConfig config = new OrgConfig(); + config.setOrgNo(request.getOrgCode()); + List list = configMapper.getList(config); + for (OrgConfig orgConfig : list) { + String configKey = orgConfig.getConfigKey(); + String configValue = orgConfig.getConfigValue(); + if (configKey.equals(ConfigCrypot.OrgCfnKeyEnum.DATA_BEGIN.getCode())) { + Date dataBegin = DateUtils.dateTime(DateUtils.YYYY_MM_DD, configValue); + if (dataDate.before(dataBegin)) { + throw new BaseException(ResultCode.DATA_TIME_NO_RIGHT); + } + } + if (configKey.equals(ConfigCrypot.OrgCfnKeyEnum.DATA_END.getCode())) { + Date dataEnd = DateUtils.dateTime(DateUtils.YYYY_MM_DD, configValue); + if (dataDate.after(dataEnd)) { + throw new BaseException(ResultCode.DATA_TIME_NO_RIGHT); + } + } + } + + } + + @Cacheable(value = "SECOND_CACHE", keyGenerator = "customKeyGenerator") + @Override + public OrgKeyResponse getKey(String orgCode) { + OrgInfoEntity orgInfo = orgInfoDao.selectOrgInfoByOrgNo(orgCode); + if (orgInfo == null) { + throw new BaseException(ResultCode.ORG_NOT_FOUND); + } + OrgKeyResponse response = new OrgKeyResponse(); + response.setSalt(orgInfo.getSalt()); + response.setEncrypt(orgInfo.getEncrypt()); + return response; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgConfigServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgConfigServiceImpl.java new file mode 100644 index 00000000..b0250db1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgConfigServiceImpl.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgConfigService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; + +/** + * 机构配置信息 + * + * @author yulei + **/ +@Service +public class OrgConfigServiceImpl implements IOrgConfigService { + + @Resource + private OrgConfigMapper orgConfigMapper; + + @Override + public List queryList(OrgConfig config) { + return orgConfigMapper.getList(config); + } + + @Override + public OrgConfig queryDetail(Long configId) { + return orgConfigMapper.getById(configId); + } + + @Override + public void addOrgConfig(OrgConfig config) { + orgConfigMapper.insert(config); + } + + @Override + public void updateOrgConfig(OrgConfig config) { + OrgConfig byId = orgConfigMapper.getById(config.getConfigId()); + if (byId == null) { + throw new BaseException("配置信息不存在"); + } + if (!byId.getOrgNo().equals(config.getOrgNo())) { + throw new BaseException("不允许切换机构"); + } + int row = orgConfigMapper.updateById(config); + if (row != 1) { + throw new BaseException(ResultCode.FAILED); + } + } + + @Override + public void deleteById(Long configId) { + orgConfigMapper.deleteById(configId); + } + + @Override + public boolean checkDataRange(Date metricDate,String orgNo) { + if(metricDate == null){ + return true; + } + OrgConfig config = new OrgConfig(); + config.setOrgNo(orgNo); + List list = orgConfigMapper.getList(config); + String dataBegin = null; + String dateEnd = null; + for (OrgConfig orgConfig : list) { + if(ConfigCrypot.OrgCfnKeyEnum.DATA_BEGIN.getCode().equals(orgConfig.getConfigKey())){ + dataBegin = orgConfig.getConfigValue(); + } + if(ConfigCrypot.OrgCfnKeyEnum.DATA_END.getCode().equals(orgConfig.getConfigKey())){ + dateEnd = orgConfig.getConfigValue(); + } + } + if(null != dataBegin){ + Date beginDate = DateUtils.parseDate(dataBegin); + if(metricDate.before(beginDate)){ + return false; + } + } + if(null != dateEnd){ + Date endDate = DateUtils.parseDate(dateEnd); + if(metricDate.after(endDate)){ + return false; + } + } + return true; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java new file mode 100644 index 00000000..162af5bd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java @@ -0,0 +1,346 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.core.BaseTime; +import com.jiuyv.sptcc.agile.dataservice.common.enums.DeleteEnum; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.OrgApiAuthDao; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgApiAuth; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.*; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.extend.OrgInfoBase; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgDelReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoAddReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoEditReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoStatusReq; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgInfoService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; + +/** + * 【机构管理信息】Service业务层处理 + * + * @author shu_k + * @date 2023-06-16 + */ +@Service +public class OrgInfoServiceImpl implements IOrgInfoService { + + @Resource + private OrgInfoMapper orgInfoMapper; + + @Resource + private OrgApiAuthDao orgApiAuthMapper; + + @Resource + private OrgConfigMapper configMapper; + @Resource + private ApiMapper apiMapper; + + @Resource + private BaseMapper baseMapper; + + /** + * 查询【机构管理信息】 + * + * @param orgNo 【机构管理信息】主键 + * @return 【机构管理信息】 + */ + @Override + public OrgInfoEntity selectOrgInfoByOrgNo(String orgNo) { + OrgInfoEntity orgInfo = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); + orgInfo.setSalt(deptSalt); + orgInfo.setEncrypt(deptEncrypt); + return orgInfo; + } + + /** + * 查询【机构管理信息】列表 + * + * @param orgInfoEntity 【机构管理信息】 + * @return 【机构管理信息】 + */ + @Override + public List selectOrgInfoList(OrgInfoEntity orgInfoEntity) { + return orgInfoMapper.selectOrgInfoList(orgInfoEntity); + } + + /** + * 机构授权 + * @param request + */ + @Transactional(rollbackFor = Exception.class) + @Override + public void orgApiAuth(OrgApiAuthRequest request) { + String orgNo = request.getOrgNo(); + Long[] apiIds = request.getApiIds(); + List apis = null; + if (apiIds.length != 0) { + //是否有效id + apis = apiMapper.getByIds(apiIds); + if (apis.size() != apiIds.length) { + throw new BaseException(ResultCode.DATE_NOT_EXIST.getCode(), "接口数据不匹配"); + } + } + + // 删除原绑定信息 + orgApiAuthMapper.deleteByOrgNo(orgNo); + for (Long apiId : apiIds) { + OrgApiAuth vo = new OrgApiAuth(); + vo.setOrgNo(orgNo); + vo.setApiId(apiId); + orgApiAuthMapper.insert(vo); + } + + //删除下载接口权限 + OrgConfig config = new OrgConfig(); + config.setOrgNo(orgNo); + config.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); + configMapper.deleteByEntity(config); + //如果该接口是下载接口,交易码是download,默认拥有全部下载权限 + if (apis == null) { + return ; + } + List collect = apis.stream().map(ApiEntity::getApiCode).collect(Collectors.toList()); + OrgInfoEntity orgInfoEntity = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + if (collect.contains(ApicodeEnum.DWONLOAD.getCode())) { + FileTypeEnum[] values = FileTypeEnum.values(); + for (FileTypeEnum value : values) { + OrgConfig vo = new OrgConfig(); + vo.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); + vo.setConfigValue(value.getCode()); + vo.setOrgNo(orgNo); + vo.setOrgName(orgInfoEntity.getOrgName()); + vo.setStatus(ConfigCrypot.ConfigStatus.NORMAL.getCode()); + vo.setConfigDesc(value.getMsg()); + vo.setDelFlag(DeleteEnum.NO.getCode()); + vo.setMemberId(orgInfoEntity.getMemberId()); + vo.setRecToken(IdUtils.getNewRecToken()); + vo.setVersionNum(Constants.VERSION); + vo.setCreateBy(request.getUserId().toString()); + vo.setCreateByName(request.getUserName()); + configMapper.insert(vo); + } + } + } + + @Override + public Long[] orgApiAuthList(String orgNo) { + OrgApiAuth authEntity = new OrgApiAuth(); + authEntity.setOrgNo(orgNo); + List authEntityList = orgApiAuthMapper.selectList(authEntity); + return authEntityList.stream().map(OrgApiAuth::getApiId).toArray(Long[]::new); + } + + /** + * 新增机构 + * + * @param addReq + */ + @Override + public void add(OrgInfoAddReq addReq) { + Long aLong = baseMapper.selectSeq(); + String orgNo = IdUtils.buildSeq(aLong, Constants.ORG_NO_PREFIX, Constants.ORG_NO_LENGTH); + String memberId = addReq.getMemberId(); + if(memberId != null){ + OrgInfoEntity entity = orgInfoMapper.getByMemberId(addReq.getMemberId()); + if (entity != null) { + throw new BaseException(ResultCode.PORTAL_USER_HAS_BINGED); + } + } + + OrgInfoEntity infoEntity = toEntity(addReq); + infoEntity.setOrgNo(orgNo); + infoEntity.setStatus(OrgCrypto.OrgStatus.STOP.getCode()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setCreateByName(addReq.getUserName()); + infoEntity.setCreateByName(addReq.getUserName()); + orgInfoMapper.insertOrgInfo(infoEntity); + } + + private OrgInfoEntity toEntity(OrgInfoBase base) { + OrgInfoEntity entity = new OrgInfoEntity(); + entity.setOrgName(base.getOrgName()); + entity.setOrgType(base.getOrgType()); + entity.setOrgDesc(base.getOrgDesc()); + //密钥数据库加密存储 + String encryptSalt = Sm4Util.encryptEcb(base.getSalt()); + String encryptEcpt = Sm4Util.encryptEcb(base.getEncrypt()); + entity.setSalt(encryptSalt); + entity.setEncrypt(encryptEcpt); + entity.setStartTime(base.getStartTime()); + entity.setEndTime(base.getEndTime()); + entity.setStatus(base.getStatus()); + entity.setCreateByName(base.getUserName()); + entity.setUpdateByName(base.getUserName()); + entity.setIp(base.getIp()); + entity.setContractTel(Sm4Util.encryptEcb(base.getContractTel())); + entity.setDataBegin(base.getStartTime()); + entity.setDataEnd(base.getEndTime()); + entity.setMemberId(base.getMemberId()); + entity.setCreateBy(String.valueOf(base.getUserId())); + entity.setRemark(base.getRemark()); + return entity; + } + + /** + * 更新结构信息 + * + * @param request + */ + @Override + public void update(OrgInfoEditReq request) { + + OrgInfoEntity validate = validate(request.getOrgNo(), OrgCrypto.OrgStatus.STOP); + + String memberId = request.getMemberId(); + if(memberId != null && !memberId.equals(validate.getMemberId())){ + OrgInfoEntity entity = orgInfoMapper.getByMemberId(memberId); + if (entity != null) { + throw new BaseException(ResultCode.PORTAL_USER_HAS_BINGED); + } + } + + OrgInfoEntity infoEntity = toEntity(request); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.updateOrgInfo(infoEntity); + if (i != 1) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + + } + + /** + * 删除机构 + * + * @param request + */ + @Override + public void delete(OrgDelReq request) { + + validate(request.getOrgNo(), OrgCrypto.OrgStatus.NORMAL, false); + + OrgInfoEntity infoEntity = new OrgInfoEntity(); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateBy("" + request.getUserId()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.delete(infoEntity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + //删除机构配置 + configMapper.deleteByOrgNo(request.getOrgNo()); + //删除机构绑定接口 + orgApiAuthMapper.deleteByOrgNo(request.getOrgNo()); + + } + + /** + * 启动机构 + * + * @param request + */ + @Override + public void run(OrgInfoStatusReq request) { + OrgInfoEntity vo = validate(request.getOrgNo(), OrgCrypto.OrgStatus.NORMAL, false); + + Date endTime = vo.getEndTime(); + BaseTime baseTime = baseMapper.selectSysCurrentTime(); + Date now = baseTime.getDate(); + //已经在到期时间之后 + if (now.after(endTime)) { + throw new BaseException(ResultCode.ORG_DATE_TIME_ERROR); + } + OrgInfoEntity infoEntity = new OrgInfoEntity(); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setStatus(OrgCrypto.OrgStatus.NORMAL.getCode()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateBy("" + request.getUserId()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.updateOrgInfo(infoEntity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + /** + * 停止机构 + * + * @param request + */ + @Override + public void stop(OrgInfoStatusReq request) { + validate(request.getOrgNo(), OrgCrypto.OrgStatus.NORMAL); + OrgInfoEntity infoEntity = new OrgInfoEntity(); + infoEntity.setOrgNo(request.getOrgNo()); + infoEntity.setStatus(OrgCrypto.OrgStatus.STOP.getCode()); + infoEntity.setRecToken(IdUtils.getNewRecToken()); + infoEntity.setUpdateBy("" + request.getUserId()); + infoEntity.setUpdateByName(request.getUserName()); + infoEntity.setParams(ParamsUtil.idempotent(request.getRecToken())); + int i = orgInfoMapper.updateOrgInfo(infoEntity); + if (1 != i) { + throw new BaseException(ResultCode.UPDATE_FAILED); + } + } + + /** + * @param orgNo 主键 + * @param status 不允许操作的状态 + */ + private OrgInfoEntity validate(String orgNo, OrgCrypto.OrgStatus status) { + return validate(orgNo, status, true); + } + + /** + * @param orgNo 主键 + * @param status 不允许操作的状态 + * @param isWish 是否希望的状态 + */ + private OrgInfoEntity validate(String orgNo, OrgCrypto.OrgStatus status, boolean isWish) { + OrgInfoEntity vo = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + if (vo == null) { + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + if (isWish) { + //期望的状态 + if (!status.getCode().equals(vo.getStatus())) { + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + } else { + //不期望的状态 + if (status.getCode().equals(vo.getStatus())) { + throw new BaseException(ResultCode.API_ERROR_STATUS); + } + } + return vo; + } + + + +} + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgStatisticsServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgStatisticsServiceImpl.java new file mode 100644 index 00000000..c10ea939 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgStatisticsServiceImpl.java @@ -0,0 +1,157 @@ +package com.jiuyv.sptcc.agile.dataservice.service.org.impl; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.enums.DeleteEnum; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgStatisticsEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.ApiMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.BaseMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgStatisticsMapper; +import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgStatisticsService; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import com.sun.org.apache.xpath.internal.operations.Bool; +import org.mybatis.spring.MyBatisSystemException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; + +/** + * 接口调用次数统计Service业务层处理 + * + * @author yulei + * @date 2023-06-16 + */ +@Service +public class OrgStatisticsServiceImpl implements IOrgStatisticsService { + + private static final Logger LOGGER = LoggerFactory.getLogger(OrgStatisticsServiceImpl.class); + @Resource + private OrgStatisticsMapper orgStatisticsMapper; + + @Resource + private OrgInfoMapper orgInfoMapper; + + @Resource + private ApiMapper apiMapper; + + @Resource + BaseMapper baseMapper; + /** + * 查询接口调用次数统计列表 + * + * @param orgStatistics 接口调用次数统计 + * @return 接口调用次数统计 + */ + @Override + public List selectList(OrgStatisticsEntity orgStatistics) { + return orgStatisticsMapper.selectOrgStatisticsList(orgStatistics); + } + + /** + * 新增接口调用次数统计 + * + * @param orgStatistics 接口调用次数统计 + * @return 结果 + */ + @Override + public int insertOrgStatistics(OrgStatisticsEntity orgStatistics) { + return orgStatisticsMapper.insertOrgStatistics(orgStatistics); + } + + @Override + public List getUserInfo(String memberId) { + + OrgInfoEntity orgInfoEntity = orgInfoMapper.getByMemberId(memberId); + if (orgInfoEntity == null) { + return new ArrayList<>(); + } + OrgStatisticsEntity orgStatistics = new OrgStatisticsEntity(); + orgStatistics.setOrgNo(orgInfoEntity.getOrgNo()); + return orgStatisticsMapper.selectOrgStatisticsList(orgStatistics); + } + + @Override + public void insertOrgStatistics(String orgNo, String apiCode, Boolean isSuccess) { + + if(orgNo ==null || apiCode == null ||isSuccess ==null){ + LOGGER.info("Statistics api ,orgNo {},apiCode {},isSuccess{}",orgNo,apiCode,isSuccess); + return; + } + OrgInfoEntity orgInfoEntity = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); + ApiEntity byApiCode = apiMapper.getByApiCode(apiCode); + if(orgInfoEntity ==null || byApiCode ==null){ + LOGGER.info("不合法的请求"); + return; + } + OrgStatisticsEntity vo = new OrgStatisticsEntity(); + vo.setApiId(byApiCode.getApiId()); + vo.setOrgNo(orgNo); + OrgStatisticsEntity orgStatistics = orgStatisticsMapper.selectByApi(vo); + if(orgStatistics ==null){ + //新增 + try { + doSave(orgNo, isSuccess, orgInfoEntity, byApiCode); + }catch (MyBatisSystemException e){ + //并发执行了,主键冲突 + orgStatistics = orgStatisticsMapper.selectByApi(vo); + doIncrease(isSuccess, orgStatistics); + } + + }else{ + //更新 + doIncrease(isSuccess, orgStatistics); + } + } + + /** + * 统计次数 + * @param isSuccess 是否成功 + * @param orgStatistics 统计信息 + */ + private void doIncrease(Boolean isSuccess, OrgStatisticsEntity orgStatistics) { + if(orgStatistics == null){ + LOGGER.warn(" unknown exception: orgStatistics is null"); + return ; + } + orgStatistics.setSuccessTotal(Boolean.TRUE.equals(isSuccess)?1:0); + orgStatistics.setFailTotal(Boolean.TRUE.equals(isSuccess)?0:1); + orgStatistics.setUpdateTime(baseMapper.selectSysCurrentTime().getDate()); + orgStatisticsMapper.increase(orgStatistics); + } + + /** + * 初始化数据 + * @param orgNo 机构 + * @param isSuccess 是否成功 + * @param orgInfoEntity 机构信息 + * @param byApiCode 编码 + */ + private void doSave(String orgNo, Boolean isSuccess, OrgInfoEntity orgInfoEntity, ApiEntity byApiCode) { + OrgStatisticsEntity orgStatisticsEntity = new OrgStatisticsEntity(); + orgStatisticsEntity.setOrgNo(orgNo); + orgStatisticsEntity.setOrgName(orgInfoEntity.getOrgName()); + orgStatisticsEntity.setApiId(byApiCode.getApiId()); + orgStatisticsEntity.setSuccessTotal(Boolean.TRUE.equals(isSuccess)?1:0); + orgStatisticsEntity.setFailTotal(Boolean.TRUE.equals(isSuccess)?0:1); + orgStatisticsEntity.setApiName(byApiCode.getApiName()); + orgStatisticsEntity.setVersionNum(0); + orgStatisticsEntity.setRecToken(IdUtils.getNewRecToken()); + orgStatisticsEntity.setCreateByName(Constants.SYSTEM_NAME); + orgStatisticsEntity.setUpdateByName(Constants.SYSTEM_NAME); + orgStatisticsEntity.setCreateBy(Constants.SYSTEM_NAME); + orgStatisticsEntity.setCreateTime(baseMapper.selectSysCurrentTime().getDate()); + orgStatisticsEntity.setUpdateBy(Constants.SYSTEM_NAME); + orgStatisticsEntity.setUpdateTime(baseMapper.selectSysCurrentTime().getDate()); + orgStatisticsEntity.setDelFlag(DeleteEnum.NO.getCode()); + orgStatisticsMapper.insertOrgStatistics(orgStatisticsEntity); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IFileService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IFileService.java new file mode 100644 index 00000000..cecfb5e6 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IFileService.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import feign.Response; +import org.springframework.http.ResponseEntity; + +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; + +/** + * @ClassName : IFileService + * @Description : 文件流 + * @Author : sky + * @Date: 2023-09-14 10:51 + */ +public interface IFileService { + + /** + * 文件下载 + * + * @param request + * @return + */ + Response downloadFile(DownLoadRequest request, HttpServletResponse response) throws IOException; + + + /** + * 文件下载 + * @return + */ + ResponseEntity download(); + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineInfoService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineInfoService.java new file mode 100644 index 00000000..39579200 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineInfoService.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineInfo; + +import java.util.List; + +/** + * 线路基础信息Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineInfoService +{ + /** + * 查询线路基础信息 + * + * @param lineName 线路基础信息主键 + * @return 线路基础信息 + */ + public LineInfo selectLineInfoByLineName(String lineName); + + /** + * 查询线路基础信息列表 + * + * @param lineInfo 线路基础信息 + * @return 线路基础信息集合 + */ + public List selectLineInfoList(LineInfo lineInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricDayService.java new file mode 100644 index 00000000..91c0d91d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricDayService.java @@ -0,0 +1,24 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; + +import java.util.List; + +/** + * 线路每天客流宝量指标Service接口 + * + * @author shu_k + * @date 2023-09-18 + */ +public interface ILineMetricDayService { + + + /** + * 查询线路每天客流宝量指标列表 + * + * @param lineMetricDay 线路每天客流宝量指标 + * @return 线路每天客流宝量指标集合 + */ + List selectLineMetricDayList(LineMetricDay lineMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricHourService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricHourService.java new file mode 100644 index 00000000..66f6d014 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricHourService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; + +import java.util.List; + +/** + * 线路小时客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineMetricHourService { + /** + * 查询线路小时客流量统计 + * + * @param id 线路小时客流量统计主键 + * @return 线路小时客流量统计 + */ + LineMetricHour selectlineMetricHourById(Long id); + + /** + * 查询线路小时客流量统计列表 + * + * @param lineMetricHour 线路小时客流量统计 + * @return 线路小时客流量统计集合 + */ + List selectlineMetricHourList(LineMetricHour lineMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricMonthService.java new file mode 100644 index 00000000..d0a75298 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineMetricMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; + +import java.util.List; + +/** + * 线路月客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineMetricMonthService { + /** + * 查询线路月客流量统计 + * + * @param id 线路月客流量统计主键 + * @return 线路月客流量统计 + */ + LineMetricMonth selectlineMetricMonthById(Long id); + + /** + * 查询线路月客流量统计列表 + * + * @param lineMetricMonth 线路月客流量统计 + * @return 线路月客流量统计集合 + */ + List selectlineMetricMonthList(LineMetricMonth lineMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationInfoService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationInfoService.java new file mode 100644 index 00000000..d750f4c9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationInfoService.java @@ -0,0 +1,31 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationInfo; + +import java.util.List; + +/** + * 站点基础信息Service接口 + * + * @author ruoyi + * @date 2023-09-19 + */ +public interface ILineStationInfoService +{ + /** + * 查询站点基础信息 + * + * @param lineCode 站点基础信息主键 + * @return 站点基础信息 + */ + public LineStationInfo selectLineStationInfoByLineCode(String lineCode); + + /** + * 查询站点基础信息列表 + * + * @param lineStationInfo 站点基础信息 + * @return 站点基础信息集合 + */ + public List selectLineStationInfoList(LineStationInfo lineStationInfo); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricDayService.java new file mode 100644 index 00000000..5ef95842 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; + +import java.util.List; + +/** + * 站点日客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationMetricDayService { + /** + * 查询站点日客流量统计 + * + * @param id 站点日客流量统计主键 + * @return 站点日客流量统计 + */ + LineStationMetricDay selectLineStationMetricDayById(Long id); + + /** + * 查询站点日客流量统计列表 + * + * @param lineStationMetricDay 站点日客流量统计 + * @return 站点日客流量统计集合 + */ + List selectLineStationMetricDayList(LineStationMetricDay lineStationMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricHourService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricHourService.java new file mode 100644 index 00000000..641d1da0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricHourService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; + +import java.util.List; + +/** + * 站点小时客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationMetricHourService { + /** + * 查询站点小时客流量统计 + * + * @param id 站点小时客流量统计主键 + * @return 站点小时客流量统计 + */ + LineStationMetricHour selectLineStationMetricHourById(Long id); + + /** + * 查询站点小时客流量统计列表 + * + * @param lineStationMetricHour 站点小时客流量统计 + * @return 站点小时客流量统计集合 + */ + List selectLineStationMetricHourList(LineStationMetricHour lineStationMetricHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricMonthService.java new file mode 100644 index 00000000..bd096b7e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationMetricMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; + +import java.util.List; + +/** + * 站点月客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationMetricMonthService { + /** + * 查询站点月客流量统计 + * + * @param id 站点月客流量统计主键 + * @return 站点月客流量统计 + */ + LineStationMetricMonth selectLineStationMetricMonthById(Long id); + + /** + * 查询站点月客流量统计列表 + * + * @param lineStationMetricMonth 站点月客流量统计 + * @return 站点月客流量统计集合 + */ + List selectLineStationMetricMonthList(LineStationMetricMonth lineStationMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransDayService.java new file mode 100644 index 00000000..e98bade2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; + +import java.util.List; + +/** + * 站点日换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationTransDayService { + /** + * 查询站点日换乘客流量统计 + * + * @param id 站点日换乘客流量统计主键 + * @return 站点日换乘客流量统计 + */ + LineStationTransDay selectLineStationTransDayById(Long id); + + /** + * 查询站点日换乘客流量统计列表 + * + * @param lineStationTransDay 站点日换乘客流量统计 + * @return 站点日换乘客流量统计集合 + */ + List selectLineStationTransDayList(LineStationTransDay lineStationTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransHourService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransHourService.java new file mode 100644 index 00000000..13d69615 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransHourService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; + +import java.util.List; + +/** + * 站点小时换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationTransHourService { + /** + * 查询站点小时换乘客流量统计 + * + * @param id 站点小时换乘客流量统计主键 + * @return 站点小时换乘客流量统计 + */ + LineStationTransHour selectLineStationTransHourById(Long id); + + /** + * 查询站点小时换乘客流量统计列表 + * + * @param lineStationTransHour 站点小时换乘客流量统计 + * @return 站点小时换乘客流量统计集合 + */ + List selectLineStationTransHourList(LineStationTransHour lineStationTransHour); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransMonthService.java new file mode 100644 index 00000000..5d3b9d45 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/ILineStationTransMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; + +import java.util.List; + +/** + * 站点月换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface ILineStationTransMonthService { + /** + * 查询站点月换乘客流量统计 + * + * @param id 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + LineStationTransMonth selectLineStationTransMonthById(Long id); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param lineStationTransMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectLineStationTransMonthList(LineStationTransMonth lineStationTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IRouteMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IRouteMetricDayService.java new file mode 100644 index 00000000..b8f50074 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IRouteMetricDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; + +import java.util.List; + +/** + * 班次日客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IRouteMetricDayService { + /** + * 查询班次日客流量统计 + * + * @param id 班次日客流量统计主键 + * @return 班次日客流量统计 + */ + RouteMetricDay selectRouteMetricDayById(Long id); + + /** + * 查询班次日客流量统计列表 + * + * @param routeMetricDay 班次日客流量统计 + * @return 班次日客流量统计集合 + */ + List selectRouteMetricDayList(RouteMetricDay routeMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricDayService.java new file mode 100644 index 00000000..aef48bb5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; + +import java.util.List; + +/** + * 站点日常乘客客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqMetricDayService { + /** + * 查询站点日常乘客客流量统计 + * + * @param id 站点日常乘客客流量统计主键 + * @return 站点日常乘客客流量统计 + */ + StationFreqMetricDay selectStationFreqMetricDayById(Long id); + + /** + * 查询站点日常乘客客流量统计列表 + * + * @param stationFreqMetricDay 站点日常乘客客流量统计 + * @return 站点日常乘客客流量统计集合 + */ + List selectStationFreqMetricDayList(StationFreqMetricDay stationFreqMetricDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricMonthService.java new file mode 100644 index 00000000..6478a8b8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqMetricMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; + +import java.util.List; + +/** + * 站点月换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqMetricMonthService { + /** + * 查询站点月换乘客流量统计 + * + * @param lineCode 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + StationFreqMetricMonth selectStationFreqMetricMonthByLineCode(String lineCode); + + /** + * 查询站点月换乘客流量统计列表 + * + * @param stationFreqMetricMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计集合 + */ + List selectStationFreqMetricMonthList(StationFreqMetricMonth stationFreqMetricMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransDayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransDayService.java new file mode 100644 index 00000000..f8f07f43 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransDayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqTransDayService { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransDay selectStationFreqTransDayById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransDay 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransDayList(StationFreqTransDay stationFreqTransDay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransMonthService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransMonthService.java new file mode 100644 index 00000000..309f63f7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/IStationFreqTransMonthService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; + +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service接口 + * + * @author shu_k + * @date 2023-09-19 + */ +public interface IStationFreqTransMonthService { + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + StationFreqTransMonth selectStationFreqTransMonthById(Long id); + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransMonth 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计集合 + */ + List selectStationFreqTransMonthList(StationFreqTransMonth stationFreqTransMonth); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/FileServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/FileServiceImpl.java new file mode 100644 index 00000000..54a5de2a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/FileServiceImpl.java @@ -0,0 +1,178 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jcraft.jsch.ChannelSftp; +import com.jcraft.jsch.SftpException; +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.config.sftp.SftpPool; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgConfig; +import com.jiuyv.sptcc.agile.dataservice.dao.entity.SyncRecord; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgConfigMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.ConfigCrypot; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataStatusEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import com.jiuyv.sptcc.agile.dataservice.service.ISyncRecordService; +import com.jiuyv.sptcc.agile.dataservice.service.product.IFileService; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; +import feign.Response; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.ContentDisposition; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import org.springframework.util.StreamUtils; + +import javax.annotation.Resource; +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.InputStream; +import java.io.UnsupportedEncodingException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.List; +import java.util.Vector; + +/** + * 文件下载 + * + * @Date: 2023-09-14 13:34 + */ +@Service +public class FileServiceImpl implements IFileService { + + private static final Logger logger = LoggerFactory.getLogger(FileServiceImpl.class); + @Resource + private SftpPool sftpPool; + @Resource + private ISyncRecordService syncRecordService; + @Resource + private OrgConfigMapper configMapper; + + @Value("${sftp.sdk.path}") + private String sdkPath; + + /** + * 文件下载 + * + * @param request + * @return + */ + @Override + public Response downloadFile(DownLoadRequest request, HttpServletResponse response) throws IOException { + + //文件是否有下载权限 + OrgConfig cfg = new OrgConfig(); + cfg.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); + cfg.setOrgNo(request.getOrgNo()); + List list = configMapper.getValueList(cfg); + if(CollectionUtils.isEmpty(list)|| !list.contains(request.getFileType())){ + throw new BaseException(ResultCode.FILE_DOWN_NO_RIGHT); + } + // 文件是否生成 + SyncRecord syncRecord = syncRecordService.selectSyncRecordList(request.getFileType(), request.getDate()); + if (syncRecord == null || !DataStatusEnum.SUCCESS.getCode().equals(syncRecord.getDataStatus())) { + logger.warn("文件不存在"); + throw new BaseException(ResultCode.FILE_DOWN_NO_EXIST); + } + + //文件下载 + String path = syncRecord.getPath(); + String fileName = path.substring(path.lastIndexOf(Constants.SEPARATOR) + 1); + String dir = path.substring(0, path.lastIndexOf(Constants.SEPARATOR)); + logger.info("文件地址:{},文件名: {}",path,fileName); + + response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE); + byte[] buff = new byte[1024]; + try (InputStream inputStream = getByteArray(dir, fileName); + ServletOutputStream outputStream = response.getOutputStream()) { + response.setHeader("Content-Disposition", "attachment;fileName=" + fileName + ";filename*=utf-8''" + URLEncoder.encode(fileName, "utf-8")); + int len = 0; + while ((len = inputStream.read(buff)) > 0) { + outputStream.write(buff, 0, len); + } + } catch (Exception e1) { + logger.error("encode error", e1); + throw new IOException(e1.getMessage()); + } + return null; + } + + @Override + public ResponseEntity download() { + int i = sdkPath.lastIndexOf(Constants.SEPARATOR); + String fileName = sdkPath.substring(i + 1); + String dir = sdkPath.substring(0, i); + InputStream inputStream = getByteArray(dir, fileName); + + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); + headers.setContentDisposition(ContentDisposition.attachment().filename(fileName).build()); + try { + return ResponseEntity.ok().headers(headers).body(StreamUtils.copyToByteArray(inputStream)); + } catch (IOException e) { + throw new BaseException(ResultCode.FILE_DOWN_FAIL); + } + } + + public String encoderURL(String str) { + try { + return URLEncoder.encode(str, StandardCharsets.UTF_8.toString()).replace("+", "%20"); + } catch (UnsupportedEncodingException e) { + logger.error("", e); + throw new BaseException(""); + } + } + + + private InputStream getByteArray(String targetPath, String fileName) { + ChannelSftp sftpChannel = null; + try { + logger.info("文件路径{},文件名称{}",targetPath,fileName); + sftpChannel = sftpPool.borrowObject(); + sftpChannel.cd(targetPath); + return sftpChannel.get(fileName); + } catch (Exception e) { + logger.error("文件[{},{}]获取失败", targetPath,fileName, e); + throw new BaseException("文件获取失败"); + } finally { + if (sftpChannel != null) { + sftpPool.returnObject(sftpChannel); + } + } + } + + /** + * 判断是否有该目录或文件 + * + * @param channel 通道 + * @param directory 主目录 + * @param resources 需要检测的目录或文件 + * @return 存在返回true 不存在返回false + */ + @SuppressWarnings("unchecked") + private boolean isResourceExist(ChannelSftp channel, String directory, String resources) { + // 获取目录下的文件和子目录列表 + Vector entries; + try { + + entries = channel.ls(directory); + } catch (SftpException e) { + logger.error("文件服务器异常", e); + throw new BaseException("No such file"); + } + if (entries == null) { + return false; + } + for (ChannelSftp.LsEntry entry : entries) { + if (entry.getFilename().equals(resources)) { + return true; + } + } + return false; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineInfoServiceImpl.java new file mode 100644 index 00000000..26cd4c8e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineInfoServiceImpl.java @@ -0,0 +1,44 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineInfo; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 线路基础信息Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineInfoServiceImpl implements ILineInfoService { + @Autowired + private LineInfoMapper lineInfoMapper; + + /** + * 查询线路基础信息 + * + * @param lineName 线路基础信息主键 + * @return 线路基础信息 + */ + @Override + public LineInfo selectLineInfoByLineName(String lineName) { + return lineInfoMapper.selectLineInfoByLineName(lineName); + } + + /** + * 查询线路基础信息列表 + * + * @param lineInfo 线路基础信息 + * @return 线路基础信息 + */ + @Override + public List selectLineInfoList(LineInfo lineInfo) { + return lineInfoMapper.selectLineInfoList(lineInfo); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricDayServiceImpl.java new file mode 100644 index 00000000..e9829f30 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricDayServiceImpl.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricDayService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 线路每天客流宝量指标Service业务层处理 + * + * @author shu_k + * @date 2023-09-18 + */ +@Service +public class LineMetricDayServiceImpl implements ILineMetricDayService { + + private final LineMetricDayMapper lineMetricDayMapper; + + @Autowired + public LineMetricDayServiceImpl(LineMetricDayMapper lineMetricDayMapper) { + this.lineMetricDayMapper = lineMetricDayMapper; + } + + /** + * 查询线路每天客流宝量指标列表 + * + * @param lineMetricDay 线路每天客流宝量指标 + * @return 线路每天客流宝量指标 + */ + @Override + public List selectLineMetricDayList(LineMetricDay lineMetricDay) { + return lineMetricDayMapper.selectLineMetricDayList(lineMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricHourServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricHourServiceImpl.java new file mode 100644 index 00000000..166fab1e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricHourServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineMetricHourMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 线路小时客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineMetricHourServiceImpl implements ILineMetricHourService { + @Resource + private LineMetricHourMapper lineMetricHourMapper; + + /** + * 查询线路小时客流量统计 + * + * @param id 线路小时客流量统计主键 + * @return 线路小时客流量统计 + */ + @Override + public LineMetricHour selectlineMetricHourById(Long id) { + return lineMetricHourMapper.selectlineMetricHourById(id); + } + + /** + * 查询线路小时客流量统计列表 + * + * @param lineMetricHour 线路小时客流量统计 + * @return 线路小时客流量统计 + */ + @Override + public List selectlineMetricHourList(LineMetricHour lineMetricHour) { + return lineMetricHourMapper.selectlineMetricHourList(lineMetricHour); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricMonthServiceImpl.java new file mode 100644 index 00000000..960aa4aa --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineMetricMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineMetricMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 线路月客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineMetricMonthServiceImpl implements ILineMetricMonthService { + @Resource + private LineMetricMonthMapper lineMetricMonthMapper; + + /** + * 查询线路月客流量统计 + * + * @param id 线路月客流量统计主键 + * @return 线路月客流量统计 + */ + @Override + public LineMetricMonth selectlineMetricMonthById(Long id) { + return lineMetricMonthMapper.selectlineMetricMonthById(id); + } + + /** + * 查询线路月客流量统计列表 + * + * @param lineMetricMonth 线路月客流量统计 + * @return 线路月客流量统计 + */ + @Override + public List selectlineMetricMonthList(LineMetricMonth lineMetricMonth) { + return lineMetricMonthMapper.selectlineMetricMonthList(lineMetricMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationInfoServiceImpl.java new file mode 100644 index 00000000..e03e15e4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationInfoServiceImpl.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationInfo; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationInfoService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 站点基础信息Service业务层处理 + * + * @author ruoyi + * @date 2023-09-19 + */ +@Service +public class LineStationInfoServiceImpl implements ILineStationInfoService +{ + @Autowired + private LineStationInfoMapper lineStationInfoMapper; + + /** + * 查询站点基础信息 + * + * @param lineCode 站点基础信息主键 + * @return 站点基础信息 + */ + @Override + public LineStationInfo selectLineStationInfoByLineCode(String lineCode) + { + return lineStationInfoMapper.selectLineStationInfoByLineCode(lineCode); + } + + /** + * 查询站点基础信息列表 + * + * @param lineStationInfo 站点基础信息 + * @return 站点基础信息 + */ + @Override + public List selectLineStationInfoList(LineStationInfo lineStationInfo) + { + return lineStationInfoMapper.selectLineStationInfoList(lineStationInfo); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricDayServiceImpl.java new file mode 100644 index 00000000..dd6eb8bb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationMetricDayServiceImpl implements ILineStationMetricDayService { + @Resource + private LineStationMetricDayMapper lineStationMetricDayMapper; + + /** + * 查询站点日客流量统计 + * + * @param id 站点日客流量统计主键 + * @return 站点日客流量统计 + */ + @Override + public LineStationMetricDay selectLineStationMetricDayById(Long id) { + return lineStationMetricDayMapper.selectLineStationMetricDayById(id); + } + + /** + * 查询站点日客流量统计列表 + * + * @param lineStationMetricDay 站点日客流量统计 + * @return 站点日客流量统计 + */ + @Override + public List selectLineStationMetricDayList(LineStationMetricDay lineStationMetricDay) { + return lineStationMetricDayMapper.selectLineStationMetricDayList(lineStationMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricHourServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricHourServiceImpl.java new file mode 100644 index 00000000..9b65f2ef --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricHourServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricHour; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationMetricHourMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricHourService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点小时客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationMetricHourServiceImpl implements ILineStationMetricHourService { + @Resource + private LineStationMetricHourMapper lineStationMetricHourMapper; + + /** + * 查询站点小时客流量统计 + * + * @param id 站点小时客流量统计主键 + * @return 站点小时客流量统计 + */ + @Override + public LineStationMetricHour selectLineStationMetricHourById(Long id) { + return lineStationMetricHourMapper.selectLineStationMetricHourById(id); + } + + /** + * 查询站点小时客流量统计列表 + * + * @param lineStationMetricHour 站点小时客流量统计 + * @return 站点小时客流量统计 + */ + @Override + public List selectLineStationMetricHourList(LineStationMetricHour lineStationMetricHour) { + return lineStationMetricHourMapper.selectLineStationMetricHourList(lineStationMetricHour); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricMonthServiceImpl.java new file mode 100644 index 00000000..11951016 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationMetricMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationMetricMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点月客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationMetricMonthServiceImpl implements ILineStationMetricMonthService { + @Resource + private LineStationMetricMonthMapper lineStationMetricMonthMapper; + + /** + * 查询站点月客流量统计 + * + * @param id 站点月客流量统计主键 + * @return 站点月客流量统计 + */ + @Override + public LineStationMetricMonth selectLineStationMetricMonthById(Long id) { + return lineStationMetricMonthMapper.selectLineStationMetricMonthById(id); + } + + /** + * 查询站点月客流量统计列表 + * + * @param lineStationMetricMonth 站点月客流量统计 + * @return 站点月客流量统计 + */ + @Override + public List selectLineStationMetricMonthList(LineStationMetricMonth lineStationMetricMonth) { + return lineStationMetricMonthMapper.selectLineStationMetricMonthList(lineStationMetricMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransDayServiceImpl.java new file mode 100644 index 00000000..8330b424 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationTransDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationTransDayServiceImpl implements ILineStationTransDayService { + @Resource + private LineStationTransDayMapper lineStationTransDayMapper; + + /** + * 查询站点日换乘客流量统计 + * + * @param id 站点日换乘客流量统计主键 + * @return 站点日换乘客流量统计 + */ + @Override + public LineStationTransDay selectLineStationTransDayById(Long id) { + return lineStationTransDayMapper.selectLineStationTransDayById(id); + } + + /** + * 查询站点日换乘客流量统计列表 + * + * @param lineStationTransDay 站点日换乘客流量统计 + * @return 站点日换乘客流量统计 + */ + @Override + public List selectLineStationTransDayList(LineStationTransDay lineStationTransDay) { + return lineStationTransDayMapper.selectLineStationTransDayList(lineStationTransDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransHourServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransHourServiceImpl.java new file mode 100644 index 00000000..be651446 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransHourServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransHour; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationTransHourMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransHourService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点小时换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationTransHourServiceImpl implements ILineStationTransHourService { + @Resource + private LineStationTransHourMapper lineStationTransHourMapper; + + /** + * 查询站点小时换乘客流量统计 + * + * @param id 站点小时换乘客流量统计主键 + * @return 站点小时换乘客流量统计 + */ + @Override + public LineStationTransHour selectLineStationTransHourById(Long id) { + return lineStationTransHourMapper.selectLineStationTransHourById(id); + } + + /** + * 查询站点小时换乘客流量统计列表 + * + * @param lineStationTransHour 站点小时换乘客流量统计 + * @return 站点小时换乘客流量统计 + */ + @Override + public List selectLineStationTransHourList(LineStationTransHour lineStationTransHour) { + return lineStationTransHourMapper.selectLineStationTransHourList(lineStationTransHour); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransMonthServiceImpl.java new file mode 100644 index 00000000..284d0bbc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/LineStationTransMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.LineStationTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.LineStationTransMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.ILineStationTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点月换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class LineStationTransMonthServiceImpl implements ILineStationTransMonthService { + @Resource + private LineStationTransMonthMapper lineStationTransMonthMapper; + + /** + * 查询站点月换乘客流量统计 + * + * @param id 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + @Override + public LineStationTransMonth selectLineStationTransMonthById(Long id) { + return lineStationTransMonthMapper.selectLineStationTransMonthById(id); + } + + /** + * 查询站点月换乘客流量统计列表 + * + * @param lineStationTransMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计 + */ + @Override + public List selectLineStationTransMonthList(LineStationTransMonth lineStationTransMonth) { + return lineStationTransMonthMapper.selectLineStationTransMonthList(lineStationTransMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/RouteMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/RouteMetricDayServiceImpl.java new file mode 100644 index 00000000..b016eaf9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/RouteMetricDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IRouteMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 班次日客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class RouteMetricDayServiceImpl implements IRouteMetricDayService { + @Resource + private RouteMetricDayMapper routeMetricDayMapper; + + /** + * 查询班次日客流量统计 + * + * @param id 班次日客流量统计主键 + * @return 班次日客流量统计 + */ + @Override + public RouteMetricDay selectRouteMetricDayById(Long id) { + return routeMetricDayMapper.selectRouteMetricDayById(id); + } + + /** + * 查询班次日客流量统计列表 + * + * @param routeMetricDay 班次日客流量统计 + * @return 班次日客流量统计 + */ + @Override + public List selectRouteMetricDayList(RouteMetricDay routeMetricDay) { + return routeMetricDayMapper.selectRouteMetricDayList(routeMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricDayServiceImpl.java new file mode 100644 index 00000000..1c74eeb9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqMetricDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日常乘客客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqMetricDayServiceImpl implements IStationFreqMetricDayService { + @Resource + private StationFreqMetricDayMapper stationFreqMetricDayMapper; + + /** + * 查询站点日常乘客客流量统计 + * + * @param id 站点日常乘客客流量统计主键 + * @return 站点日常乘客客流量统计 + */ + @Override + public StationFreqMetricDay selectStationFreqMetricDayById(Long id) { + return stationFreqMetricDayMapper.selectStationFreqMetricDayById(id); + } + + /** + * 查询站点日常乘客客流量统计列表 + * + * @param stationFreqMetricDay 站点日常乘客客流量统计 + * @return 站点日常乘客客流量统计 + */ + @Override + public List selectStationFreqMetricDayList(StationFreqMetricDay stationFreqMetricDay) { + return stationFreqMetricDayMapper.selectStationFreqMetricDayList(stationFreqMetricDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricMonthServiceImpl.java new file mode 100644 index 00000000..38a5f209 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqMetricMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqMetricMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqMetricMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqMetricMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点月换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqMetricMonthServiceImpl implements IStationFreqMetricMonthService { + @Resource + private StationFreqMetricMonthMapper stationFreqMetricMonthMapper; + + /** + * 查询站点月换乘客流量统计 + * + * @param lineCode 站点月换乘客流量统计主键 + * @return 站点月换乘客流量统计 + */ + @Override + public StationFreqMetricMonth selectStationFreqMetricMonthByLineCode(String lineCode) { + return stationFreqMetricMonthMapper.selectStationFreqMetricMonthByLineCode(lineCode); + } + + /** + * 查询站点月换乘客流量统计列表 + * + * @param stationFreqMetricMonth 站点月换乘客流量统计 + * @return 站点月换乘客流量统计 + */ + @Override + public List selectStationFreqMetricMonthList(StationFreqMetricMonth stationFreqMetricMonth) { + return stationFreqMetricMonthMapper.selectStationFreqMetricMonthList(stationFreqMetricMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransDayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransDayServiceImpl.java new file mode 100644 index 00000000..24b34e6c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransDayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransDay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqTransDayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransDayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqTransDayServiceImpl implements IStationFreqTransDayService { + @Resource + private StationFreqTransDayMapper stationFreqTransDayMapper; + + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public StationFreqTransDay selectStationFreqTransDayById(Long id) { + return stationFreqTransDayMapper.selectStationFreqTransDayById(id); + } + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransDay 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public List selectStationFreqTransDayList(StationFreqTransDay stationFreqTransDay) { + return stationFreqTransDayMapper.selectStationFreqTransDayList(stationFreqTransDay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransMonthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransMonthServiceImpl.java new file mode 100644 index 00000000..75e82f4a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/product/impl/StationFreqTransMonthServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.product.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationFreqTransMonth; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationFreqTransMonthMapper; +import com.jiuyv.sptcc.agile.dataservice.service.product.IStationFreqTransMonthService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 站点日常乘客换乘客流量统计Service业务层处理 + * + * @author shu_k + * @date 2023-09-19 + */ +@Service +public class StationFreqTransMonthServiceImpl implements IStationFreqTransMonthService { + @Resource + private StationFreqTransMonthMapper stationFreqTransMonthMapper; + + /** + * 查询站点日常乘客换乘客流量统计 + * + * @param id 站点日常乘客换乘客流量统计主键 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public StationFreqTransMonth selectStationFreqTransMonthById(Long id) { + return stationFreqTransMonthMapper.selectStationFreqTransMonthById(id); + } + + /** + * 查询站点日常乘客换乘客流量统计列表 + * + * @param stationFreqTransMonth 站点日常乘客换乘客流量统计 + * @return 站点日常乘客换乘客流量统计 + */ + @Override + public List selectStationFreqTransMonthList(StationFreqTransMonth stationFreqTransMonth) { + return stationFreqTransMonthMapper.selectStationFreqTransMonthList(stationFreqTransMonth); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/ICentimeDelayService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/ICentimeDelayService.java new file mode 100644 index 00000000..420dae8d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/ICentimeDelayService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; + +import java.util.List; + +/** + * 延迟上送比率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface ICentimeDelayService { + /** + * 查询延迟上送比率 + * + * @param id 延迟上送比率主键 + * @return 延迟上送比率 + */ + CentimeDelay selectCentimeDelayById(Long id); + + /** + * 查询延迟上送比率列表 + * + * @param centimeDelay 延迟上送比率 + * @return 延迟上送比率集合 + */ + List selectCentimeDelayList(CentimeDelay centimeDelay); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IPosMatchRateService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IPosMatchRateService.java new file mode 100644 index 00000000..70cabd44 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IPosMatchRateService.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; + +import java.util.Date; +import java.util.List; + +/** + * Pos匹配率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IPosMatchRateService { + /** + * 查询Pos匹配率 + * + * @param id Pos匹配率主键 + * @return Pos匹配率 + */ + PosMatchRate selectPosMatchRateById(Long id); + + /** + * 查询Pos匹配率列表 + * + * @param posMatchRate Pos匹配率 + * @return Pos匹配率集合 + */ + List selectPosMatchRateList(PosMatchRate posMatchRate); + + + /** + * pos匹配率异常告警 + * @param date + * @return + */ + boolean check(String date); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteDailyCountService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteDailyCountService.java new file mode 100644 index 00000000..21a9a884 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteDailyCountService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; + +import java.util.List; + +/** + * 日营运线路条数Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IRouteDailyCountService { + /** + * 查询日营运线路条数 + * + * @param id 日营运线路条数主键 + * @return 日营运线路条数 + */ + RouteDailyCount selectRouteDailyCountById(Long id); + + /** + * 查询日营运线路条数列表 + * + * @param routeDailyCount 日营运线路条数 + * @return 日营运线路条数集合 + */ + List selectRouteDailyCountList(RouteDailyCount routeDailyCount); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteMissService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteMissService.java new file mode 100644 index 00000000..e58b5b50 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteMissService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; + +import java.util.List; + +/** + * 班次缺失率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IRouteMissService { + /** + * 查询班次缺失率 + * + * @param id 班次缺失率主键 + * @return 班次缺失率 + */ + RouteMiss selectRouteMissById(Long id); + + /** + * 查询班次缺失率列表 + * + * @param routeMiss 班次缺失率 + * @return 班次缺失率集合 + */ + List selectRouteMissList(RouteMiss routeMiss); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteTurnoverTimeService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteTurnoverTimeService.java new file mode 100644 index 00000000..83a1b6be --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IRouteTurnoverTimeService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; + +import java.util.List; + +/** + * 班次周转时间Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IRouteTurnoverTimeService { + /** + * 查询班次周转时间 + * + * @param id 班次周转时间主键 + * @return 班次周转时间 + */ + RouteTurnoverTime selectRouteTurnoverTimeById(Long id); + + /** + * 查询班次周转时间列表 + * + * @param routeTurnoverTime 班次周转时间 + * @return 班次周转时间集合 + */ + List selectRouteTurnoverTimeList(RouteTurnoverTime routeTurnoverTime); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IStationMissService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IStationMissService.java new file mode 100644 index 00000000..4a415f21 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IStationMissService.java @@ -0,0 +1,30 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; + +import java.util.List; + +/** + * 站点缺失率Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IStationMissService { + /** + * 查询站点缺失率 + * + * @param id 站点缺失率主键 + * @return 站点缺失率 + */ + StationMiss selectStationMissById(Long id); + + /** + * 查询站点缺失率列表 + * + * @param stationMiss 站点缺失率 + * @return 站点缺失率集合 + */ + List selectStationMissList(StationMiss stationMiss); + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IVehicleDailyCountService.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IVehicleDailyCountService.java new file mode 100644 index 00000000..14779d4e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/IVehicleDailyCountService.java @@ -0,0 +1,36 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; + +import java.util.List; + +/** + * 日营运车辆数Service接口 + * + * @author shu_k + * @date 2023-09-20 + */ +public interface IVehicleDailyCountService { + /** + * 查询日营运车辆数 + * + * @param id 日营运车辆数主键 + * @return 日营运车辆数 + */ + VehicleDailyCount selectVehicleDailyCountById(Long id); + + /** + * 查询日营运车辆数列表 + * + * @param vehicleDailyCount 日营运车辆数 + * @return 日营运车辆数集合 + */ + List selectVehicleDailyCountList(VehicleDailyCount vehicleDailyCount); + + /** + * 根据条件统计车辆数 + * @param req + * @return + */ + Long countBus(VehicleDailyCount req); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/CentimeDelayServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/CentimeDelayServiceImpl.java new file mode 100644 index 00000000..2442dd6d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/CentimeDelayServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.CentimeDelay; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.CentimeDelayMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.ICentimeDelayService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 延迟上送比率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class CentimeDelayServiceImpl implements ICentimeDelayService { + @Autowired + private CentimeDelayMapper centimeDelayMapper; + + /** + * 查询延迟上送比率 + * + * @param id 延迟上送比率主键 + * @return 延迟上送比率 + */ + @Override + public CentimeDelay selectCentimeDelayById(Long id) { + return centimeDelayMapper.selectCentimeDelayById(id); + } + + /** + * 查询延迟上送比率列表 + * + * @param centimeDelay 延迟上送比率 + * @return 延迟上送比率 + */ + @Override + public List selectCentimeDelayList(CentimeDelay centimeDelay) { + return centimeDelayMapper.selectCentimeDelayList(centimeDelay); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/PosMatchRateServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/PosMatchRateServiceImpl.java new file mode 100644 index 00000000..c4a73b32 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/PosMatchRateServiceImpl.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.PosMatchRate; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.PosMatchRateMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IPosMatchRateService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.math.BigDecimal; +import java.util.List; + +/** + * Pos匹配率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class PosMatchRateServiceImpl implements IPosMatchRateService { + + /** + * 默认90%匹配率,如果当天的小于该值,短信告警 + */ + @Value("${agile.config.posRatePoint:0.9}") + private double posRatePoint; + @Resource + private PosMatchRateMapper posMatchRateMapper; + + /** + * 查询Pos匹配率 + * + * @param id Pos匹配率主键 + * @return Pos匹配率 + */ + @Override + public PosMatchRate selectPosMatchRateById(Long id) { + return posMatchRateMapper.selectPosMatchRateById(id); + } + + /** + * 查询Pos匹配率列表 + * + * @param posMatchRate Pos匹配率 + * @return Pos匹配率 + */ + @Override + public List selectPosMatchRateList(PosMatchRate posMatchRate) { + return posMatchRateMapper.selectPosMatchRateList(posMatchRate); + } + + + @Override + public boolean check(String date) { + BigDecimal bigDecimal = posMatchRateMapper.selectByDate(date); + if(bigDecimal ==null){ + return false; + } + return bigDecimal.doubleValue()>posRatePoint; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteDailyCountServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteDailyCountServiceImpl.java new file mode 100644 index 00000000..82780af1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteDailyCountServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteDailyCountMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 日营运线路条数Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class RouteDailyCountServiceImpl implements IRouteDailyCountService { + @Autowired + private RouteDailyCountMapper routeDailyCountMapper; + + /** + * 查询日营运线路条数 + * + * @param id 日营运线路条数主键 + * @return 日营运线路条数 + */ + @Override + public RouteDailyCount selectRouteDailyCountById(Long id) { + return routeDailyCountMapper.selectRouteDailyCountById(id); + } + + /** + * 查询日营运线路条数列表 + * + * @param routeDailyCount 日营运线路条数 + * @return 日营运线路条数 + */ + @Override + public List selectRouteDailyCountList(RouteDailyCount routeDailyCount) { + return routeDailyCountMapper.selectRouteDailyCountList(routeDailyCount); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteMissServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteMissServiceImpl.java new file mode 100644 index 00000000..c9c63d19 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteMissServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteMiss; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteMissMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 班次缺失率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class RouteMissServiceImpl implements IRouteMissService { + @Autowired + private RouteMissMapper routeMissMapper; + + /** + * 查询班次缺失率 + * + * @param id 班次缺失率主键 + * @return 班次缺失率 + */ + @Override + public RouteMiss selectRouteMissById(Long id) { + return routeMissMapper.selectRouteMissById(id); + } + + /** + * 查询班次缺失率列表 + * + * @param routeMiss 班次缺失率 + * @return 班次缺失率 + */ + @Override + public List selectRouteMissList(RouteMiss routeMiss) { + return routeMissMapper.selectRouteMissList(routeMiss); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteTurnoverTimeServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteTurnoverTimeServiceImpl.java new file mode 100644 index 00000000..740869a0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/RouteTurnoverTimeServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.RouteTurnoverTime; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.RouteTurnoverTimeMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IRouteTurnoverTimeService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 班次周转时间Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class RouteTurnoverTimeServiceImpl implements IRouteTurnoverTimeService { + @Autowired + private RouteTurnoverTimeMapper routeTurnoverTimeMapper; + + /** + * 查询班次周转时间 + * + * @param id 班次周转时间主键 + * @return 班次周转时间 + */ + @Override + public RouteTurnoverTime selectRouteTurnoverTimeById(Long id) { + return routeTurnoverTimeMapper.selectRouteTurnoverTimeById(id); + } + + /** + * 查询班次周转时间列表 + * + * @param routeTurnoverTime 班次周转时间 + * @return 班次周转时间 + */ + @Override + public List selectRouteTurnoverTimeList(RouteTurnoverTime routeTurnoverTime) { + return routeTurnoverTimeMapper.selectRouteTurnoverTimeList(routeTurnoverTime); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/StationMissServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/StationMissServiceImpl.java new file mode 100644 index 00000000..a7f1ef89 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/StationMissServiceImpl.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.StationMiss; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.StationMissMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IStationMissService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 站点缺失率Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class StationMissServiceImpl implements IStationMissService { + @Autowired + private StationMissMapper stationMissMapper; + + /** + * 查询站点缺失率 + * + * @param id 站点缺失率主键 + * @return 站点缺失率 + */ + @Override + public StationMiss selectStationMissById(Long id) { + return stationMissMapper.selectStationMissById(id); + } + + /** + * 查询站点缺失率列表 + * + * @param stationMiss 站点缺失率 + * @return 站点缺失率 + */ + @Override + public List selectStationMissList(StationMiss stationMiss) { + return stationMissMapper.selectStationMissList(stationMiss); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/VehicleDailyCountServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/VehicleDailyCountServiceImpl.java new file mode 100644 index 00000000..ecee629c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/quality/impl/VehicleDailyCountServiceImpl.java @@ -0,0 +1,49 @@ +package com.jiuyv.sptcc.agile.dataservice.service.quality.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.VehicleDailyCount; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.VehicleDailyCountMapper; +import com.jiuyv.sptcc.agile.dataservice.service.quality.IVehicleDailyCountService; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 日营运车辆数Service业务层处理 + * + * @author shu_k + * @date 2023-09-20 + */ +@Service +public class VehicleDailyCountServiceImpl implements IVehicleDailyCountService { + @Autowired + private VehicleDailyCountMapper vehicleDailyCountMapper; + + /** + * 查询日营运车辆数 + * + * @param id 日营运车辆数主键 + * @return 日营运车辆数 + */ + @Override + public VehicleDailyCount selectVehicleDailyCountById(Long id) { + return vehicleDailyCountMapper.selectVehicleDailyCountById(id); + } + + /** + * 查询日营运车辆数列表 + * + * @param vehicleDailyCount 日营运车辆数 + * @return 日营运车辆数 + */ + @Override + public List selectVehicleDailyCountList(VehicleDailyCount vehicleDailyCount) { + return vehicleDailyCountMapper.selectVehicleDailyCountList(vehicleDailyCount); + } + + @Override + public Long countBus(VehicleDailyCount req) { + return vehicleDailyCountMapper.countBus(req); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/IOrgTask.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/IOrgTask.java new file mode 100644 index 00000000..00b2f8f8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/IOrgTask.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.dataservice.service.task; + +import java.util.Date; + +public interface IOrgTask { + + /** + * 机构到期提醒 + * @param date + */ + Boolean expire(Date date); + + /** + * 机构到期下架 + * @param date + * @return Boolean + */ + Boolean down(Date date); +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/impl/OrgTaskImpl.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/impl/OrgTaskImpl.java new file mode 100644 index 00000000..e24a99bc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/task/impl/OrgTaskImpl.java @@ -0,0 +1,143 @@ +package com.jiuyv.sptcc.agile.dataservice.service.task.impl; + +import com.jiuyv.sptcc.agile.dataservice.dao.entity.OrgInfoEntity; +import com.jiuyv.sptcc.agile.dataservice.dao.mapper.OrgInfoMapper; +import com.jiuyv.sptcc.agile.dataservice.dto.enums.OrgCrypto; +import com.jiuyv.sptcc.agile.dataservice.feign.MessageFeign; +import com.jiuyv.sptcc.agile.dataservice.service.task.IOrgTask; +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptccc.agile.api.fegin.dto.publicPhoneMsgLog.ReqPublicPhoneMsgSendDTO; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +@Service +public class OrgTaskImpl implements IOrgTask { + + private static final Logger LOGGER = LoggerFactory.getLogger(OrgTaskImpl.class); + @Resource + private OrgInfoMapper orgInfoMapper; + @Resource + private MessageFeign messageFeign; + + @Value("${spring.application.name}") + private String systemName; + + /** + * 默认30,15,3天提前告警 + */ + @Value("${org.expire.interval.date:30,15,3}") + private String intervalDate; + + @Override + public Boolean expire(Date date) { + String[] split = intervalDate.split(","); + for (String interval : split) { + if (StringUtils.isNotBlank(interval)) { + // 计算到期日期符合到期提醒预期的 + int i = Integer.parseInt(interval.trim()); + Date endDate = DateUtils.addDays(date, i); + try { + expire(DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD,endDate), i); + } catch (Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("机构到期发送短信失败", e); + } else { + LOGGER.info("机构到期发送短信失败:{}", e.getMessage()); + } + } + } + } + return true; + } + + @Override + public Boolean down(Date date) { + List list = orgInfoMapper.afterEndDate(date); + if(CollectionUtils.isEmpty(list)){ + return true; + } + // 状态变更 + for (OrgInfoEntity orgInfoEntity : list) { + OrgInfoEntity orgInfo = new OrgInfoEntity(); + orgInfo.setOrgNo(orgInfoEntity.getOrgNo()); + orgInfo.setStatus(OrgCrypto.OrgStatus.END.getCode()); + orgInfo.setParams(ParamsUtil.idempotent(orgInfoEntity.getRecToken())); + orgInfo.setRecToken(IdUtils.getNewRecToken()); + int i = orgInfoMapper.updateOrgInfo(orgInfo); + // 乐观锁,更新失败 + if (1 != i) { + return false; + } + } + + try { + // 消息发送 + String phones = list.stream().map(x -> Sm4Util.decryptEcb(x.getContractTel())).collect(Collectors.joining(",")); + ReqPublicPhoneMsgSendDTO message = new ReqPublicPhoneMsgSendDTO(); + message.setPhoneNumber(phones); + message.setMsgTemplateCode("org_expire"); + message.setSysType(systemName); + message.setMsgMapParams(new HashMap<>()); + LOGGER.info("messageFeign request: {}", JacksonUtil.obj2String(message)); + R longR = messageFeign.sendPhoneMsg(message); + LOGGER.info("messageFeign response: {}", JacksonUtil.obj2String(longR)); + return true; + }catch (Exception e){ + if(LOGGER.isDebugEnabled()){ + LOGGER.error("短信提醒失败",e); + }else{ + LOGGER.info("短信提醒发送失败:{}",e.getMessage()); + } + } + return true; + + } + + /** + * @param date 到期时间 + * @param i 剩余天数 + */ + private void expire(String date, int i) { + List list = orgInfoMapper.selectEndDate(date); + if(CollectionUtils.isEmpty(list)){ + return ; + } + try{ + String phones = list.stream().map(x -> Sm4Util.decryptEcb(x.getContractTel())).collect(Collectors.joining(",")); + ReqPublicPhoneMsgSendDTO message = new ReqPublicPhoneMsgSendDTO(); + message.setPhoneNumber(phones); + message.setMsgTemplateCode("org_expire_reminder"); + message.setSysType(systemName); + Map param = new HashMap<>(); + param.put("expireDate", date); + param.put("days", String.valueOf(i)); + message.setMsgMapParams(param); + LOGGER.info("messageFeign request: {}", JacksonUtil.obj2String(message)); + R longR = messageFeign.sendPhoneMsg(message); + LOGGER.info("messageFeign response: {}", JacksonUtil.obj2String(longR)); + }catch (Exception e){ + if(LOGGER.isDebugEnabled()){ + LOGGER.error("短信提醒失败",e); + }else{ + LOGGER.info("短信提醒发送失败:{}",e.getMessage()); + } + } + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/task/AgileApiTask.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/task/AgileApiTask.java new file mode 100644 index 00000000..21fdd348 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/task/AgileApiTask.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.dataservice.task; + +import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.annotation.Scheduled; +import org.springframework.stereotype.Component; + +/** + * 敏捷API定时任务 + * + * @author yulei + */ +@Component +public class AgileApiTask { + + @Autowired + private AgileApiService apiService; + + /** + * 发布接口 + */ + @Scheduled(cron = "0/30 * * * * ? ") + public void releaseDataApi(){ + apiService.releaseDataApi(); + } + + /** + * 注销接口 + */ + @Scheduled(cron = "0/30 * * * * ? ") + public void cancelDataApi(){ + apiService.cancelDataApi(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/AddressUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/AddressUtil.java new file mode 100644 index 00000000..ef1a69a7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/AddressUtil.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; + +/** + * @ClassName : AdrressUtil + * @Description : 请求地址 + * @Author : sky + * @Date: 2023-09-20 18:18 + */ +public final class AddressUtil { + + private AddressUtil() { + throw new UnsupportedOperationException(); + } + + /** + * 调用接口 /services/v1.0.0/user/1 + * + * @param version + * @param path + * @return + */ + public static String getRequestPath(String version, String path) { + if (version == null) { + version = Constants.VERSION_DEFAULT; + } + String fullPath = Constants.PREFIX + Constants.SEPARATOR + + version + + Constants.SEPARATOR + + path; + return fullPath.replaceAll(Constants.SEPARATOR_DOUBLE, Constants.SEPARATOR); + } + + + /** + * 返回用户填写URL + * @param fullUrl /{prefix}/{version}/path + * @param version 站位符 + * @return path + */ + public static String getApiUrl(String fullUrl,String version){ + String noModule = fullUrl.replaceAll(Constants.PREFIX, Constants.SPACE); + String path = noModule.replaceAll(version, Constants.SPACE); + return path.replaceAll(Constants.SEPARATOR_DOUBLE, Constants.SEPARATOR); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DateUtils.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DateUtils.java new file mode 100644 index 00000000..9240d418 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DateUtils.java @@ -0,0 +1,157 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.lang.management.ManagementFactory; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.Calendar; +import java.util.Date; + +/** + * 时间工具类 + * + * @author admin + */ +public class DateUtils { + + private static final Logger LOGGER = LoggerFactory.getLogger(DateUtils.class); + + public static final String YYYY = "yyyy"; + + public static final String YYYY_MM = "yyyy-MM"; + + public static final String YYYY_MM_DD = "yyyy-MM-dd"; + + public static final String YYYYMMDD = "yyyyMMdd"; + + public static final String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; + + public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; + + public static final String HH_MM_SS = "HH:mm:ss"; + + private static final String[] parsePatterns = {YYYY_MM_DD, YYYY_MM_DD_HH_MM_SS, "yyyy-MM-dd HH:mm", YYYY_MM, YYYYMMDD, + "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", + "yyyy.MM.dd HH:mm", "yyyy.MM"}; + + /** + * 获取当前日期, 默认格式为yyyy-MM-dd + * + * @return String + */ + public static String getDate() { + return dateTimeNow(YYYY_MM_DD); + } + + public static String getTime() { + return dateTimeNow(YYYY_MM_DD_HH_MM_SS); + } + + public static String dateTimeNow() { + return dateTimeNow(YYYYMMDDHHMMSS); + } + + public static String dateTimeNow(final String format) { + return parseDateToStr(format, new Date()); + } + + public static String dateTime(final Date date) { + return parseDateToStr(YYYY_MM_DD, date); + } + + public static String parseDateToStr(final String format, final Date date) { + return new SimpleDateFormat(format).format(date); + } + + public static Date dateTime(final String format, final String ts) { + try { + return new SimpleDateFormat(format).parse(ts); + } catch (ParseException e) { + LOGGER.error("ParseException error :{}",e.getMessage()); + return null; + } + } + + public static Date dateTime(){ + Calendar calendar = Calendar.getInstance(); + int year = calendar.get(Calendar.YEAR); + int month = calendar.get(Calendar.MONTH); + int day = calendar.get(Calendar.DATE); + calendar.set(year,month,day,0,0,0); + return calendar.getTime(); + } + + + public static Date date(){ + return new Date(); + } + + /** + * 日期型字符串转化为日期 格式 + */ + public static Date parseDate(Object str) { + if (str == null) { + return null; + } + try { + return org.apache.commons.lang3.time.DateUtils.parseDate(str.toString(), parsePatterns); + } catch (ParseException e) { + LOGGER.error("ParseException error :{}",e.getMessage()); + return null; + } + } + + /** + * 日期天数加减 + * + * @param date + * @param days + * @return + */ + public static Date addDays(final Date date, int days) { + Calendar instance = Calendar.getInstance(); + instance.setTime(date); + instance.add(Calendar.DATE, days); + return instance.getTime(); + } + + /** + * 获取服务器启动时间 + */ + public static Date getServerStartDate() { + long time = ManagementFactory.getRuntimeMXBean().getStartTime(); + return new Date(time); + } + + /** + * 计算相差天数 + */ + public static int differentDaysByMillisecond(Date date1, Date date2) { + return Math.abs((int) ((date2.getTime() - date1.getTime()) / (1000 * 3600 * 24))); + } + + /** + * 计算两个时间差 + */ + public static String getDatePoor(Date endDate, Date nowDate) { + long nd = 1000 * 24 * 60 * 60L; + long nh = 1000 * 60 * 60L; + long nm = 1000 * 60L; + // long ns = 1000; + // 获得两个时间的毫秒时间差异 + long diff = endDate.getTime() - nowDate.getTime(); + // 计算差多少天 + long day = diff / nd; + // 计算差多少小时 + long hour = diff % nd / nh; + // 计算差多少分钟 + long min = diff % nd % nh / nm; + // 计算差多少秒//输出结果 + // long sec = diff % nd % nh % nm / ns; + return day + "天" + hour + "小时" + min + "分钟"; + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DifferUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DifferUtil.java new file mode 100644 index 00000000..26db5004 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/DifferUtil.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +public class DifferUtil { + + public static Long differ(Long except, Long actual){ + if(except == null ){ + except = 0L; + } + if(actual == null){ + actual = 0L; + } + return actual-except; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IPUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IPUtil.java new file mode 100644 index 00000000..d11c7ffd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IPUtil.java @@ -0,0 +1,63 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import javax.servlet.http.HttpServletRequest; +import java.net.*; +import java.util.Enumeration; + +public class IPUtil { + + public static String getLocalIP() throws SocketException { + String localIP = null; + Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces(); + InetAddress ip = null; + while (allNetInterfaces.hasMoreElements()) { + NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement(); + Enumeration addresses = netInterface.getInetAddresses(); + while (addresses.hasMoreElements()) { + ip = (InetAddress) addresses.nextElement(); + if (ip != null && ip instanceof Inet4Address) { + localIP = ip.getHostAddress(); + if (!"127.0.0.1".equalsIgnoreCase(localIP)) { + return localIP; + } + } + } + } + return localIP; + } + + /** + * 获取当前网络ip + * @param request + * @return + */ + public static String getIpAddr(HttpServletRequest request) { + String ipAddress = request.getHeader("x-forwarded-for"); + if (ipAddress == null || ipAddress.isEmpty() || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getHeader("Proxy-Client-IP"); + } + if (ipAddress == null || ipAddress.isEmpty() || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getHeader("WL-Proxy-Client-IP"); + } + if (ipAddress == null || ipAddress.isEmpty() || "unknown".equalsIgnoreCase(ipAddress)) { + ipAddress = request.getRemoteAddr(); + if (ipAddress.equals("127.0.0.1") || ipAddress.equals("0:0:0:0:0:0:0:1")) { + //根据网卡取本机配置的IP + InetAddress inet = null; + try { + inet = InetAddress.getLocalHost(); + } catch (UnknownHostException e) { + e.printStackTrace(); + } + ipAddress = inet != null ? inet.getHostAddress() : null; + } + } + //对于通过多个代理的情况,第一个IP为客户端真实IP,多个IP按照','分割 + if (ipAddress != null && ipAddress.length() > 15) { //"***.***.***.***".length() = 15 + if (ipAddress.contains(",")) { + ipAddress = ipAddress.substring(0, ipAddress.indexOf(",")); + } + } + return ipAddress; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IpWhiteCheckUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IpWhiteCheckUtil.java new file mode 100644 index 00000000..7c2b4192 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/IpWhiteCheckUtil.java @@ -0,0 +1,260 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.regex.Pattern; + +/** + * + * ip 白名单校验 + */ +public final class IpWhiteCheckUtil { + // IP的正则 + private static final Pattern pattern = Pattern + .compile("(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})\\." + "(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})\\." + + "(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})\\." + "(1\\d{1,2}|2[0-4]\\d|25[0-5]|\\d{1,2})"); + public static final String DEFAULT_ALLOW_ALL_FLAG = "*";// 允许所有ip标志位 + public static final String DEFAULT_DENY_ALL_FLAG = "0"; // 禁止所有ip标志位 + + /** + * + * getAvaliIpList:(根据IP白名单设置获取可用的IP列表). + * + * @date 2017-4-17 下午02:50:20 + * @param allowIp + * @return + */ + private static Set getAvaliIpList(String allowIp) { + String[] splitRex = allowIp.split(";");// 拆分出白名单正则 + Set ipList = new HashSet<>(splitRex.length); + for (String allow : splitRex) { + if (allow.contains("*")) {// 处理通配符 * + String[] ips = allow.split("\\."); + String[] from = new String[] { "0", "0", "0", "0" }; + String[] end = new String[] { "255", "255", "255", "255" }; + List tem = new ArrayList<>(); + for (int i = 0; i < ips.length; i++) + if (ips[i].contains("*")) { + tem = complete(ips[i]); + from[i] = null; + end[i] = null; + } else { + from[i] = ips[i]; + end[i] = ips[i]; + } + + StringBuilder fromIP = new StringBuilder(); + StringBuilder endIP = new StringBuilder(); + for (int i = 0; i < 4; i++) + if (from[i] != null) { + fromIP.append(from[i]).append("."); + endIP.append(end[i]).append("."); + } else { + fromIP.append("[*]."); + endIP.append("[*]."); + } + fromIP.deleteCharAt(fromIP.length() - 1); + endIP.deleteCharAt(endIP.length() - 1); + + for (String s : tem) { + String ip = fromIP.toString().replace("[*]", s.split(";")[0]) + "-" + + endIP.toString().replace("[*]", s.split(";")[1]); + if (validate(ip)) { + ipList.add(ip); + } + } + } else if (allow.contains("/")) {// 处理 网段 xxx.xxx.xxx./24 + ipList.add(allow); + } else {// 处理单个 ip 或者 范围 + if (validate(allow)) { + ipList.add(allow); + } + } + + } + + return ipList; + } + + /** + * 对单个IP节点进行范围限定 + * + * @param arg + * @return 返回限定后的IP范围,格式为List[10;19, 100;199] + */ + private static List complete(String arg) { + List com = new ArrayList<>(); + int len = arg.length(); + if (len == 1) { + com.add("0;255"); + } else if (len == 2) { + String s1 = complete(arg, 1); + if (s1 != null) + com.add(s1); + String s2 = complete(arg, 2); + if (s2 != null) + com.add(s2); + } else { + String s1 = complete(arg, 1); + if (s1 != null) + com.add(s1); + } + return com; + } + + private static String complete(String arg, int length) { + String from = ""; + String end = ""; + if (length == 1) { + from = arg.replace("*", "0"); + end = arg.replace("*", "9"); + } else { + from = arg.replace("*", "00"); + end = arg.replace("*", "99"); + } + if (Integer.valueOf(from) > 255) + return null; + if (Integer.valueOf(end) > 255) + end = "255"; + return from + ";" + end; + } + + /** + * 在添加至白名单时进行格式校验 + * + * @param ip + * @return + */ + private static boolean validate(String ip) { + String[] temp = ip.split("-"); + for (String s : temp) + if (!pattern.matcher(s).matches()) { + return false; + } + return true; + } + + /** + * + * isPermited:(根据IP,及可用Ip列表来判断ip是否包含在白名单之中). + * + * @date 2017-4-17 下午03:01:03 + * @param ip + * @param ipList + * @return + */ + private static boolean isPermited(String ip, Set ipList) { + if (ipList.isEmpty() || ipList.contains(ip)) + return true; + for (String allow : ipList) { + if (allow.contains("-")) {// 处理 类似 192.168.0.0-192.168.2.1 + String[] tempAllow = allow.split("-"); + String[] from = tempAllow[0].split("\\."); + String[] end = tempAllow[1].split("\\."); + String[] tag = ip.split("\\."); + boolean check = true; + for (int i = 0; i < 4; i++) {// 对IP从左到右进行逐段匹配 + int s = Integer.parseInt(from[i]); + int t = Integer.parseInt(tag[i]); + int e = Integer.parseInt(end[i]); + if (!(s <= t && t <= e)) { + check = false; + break; + } + } + if (check) + return true; + } else if (allow.contains("/")) {// 处理 网段 xxx.xxx.xxx./24 + int splitIndex = allow.indexOf("/"); + // 取出子网段 + String ipSegment = allow.substring(0, splitIndex); // 192.168.3.0 + // 子网数 + String netmask = allow.substring(splitIndex + 1);// 24 + // ip 转二进制 + long ipLong = ipToLong(ip); + //子网二进制 + long maskLong=(2L<<32 -1) -(2L << Integer.valueOf(32-Integer.valueOf(netmask))-1); + // ip与和子网相与 得到 网络地址 + String calcSegment = longToIP(ipLong & maskLong); + // 如果计算得出网络地址和库中网络地址相同 则合法 + if(ipSegment.equals(calcSegment))return true; + } + } + return false; + } + + /** + * + * isPermited:(根据IP地址,及IP白名单设置规则判断IP是否包含在白名单). + * + * @date 2017-4-17 下午03:01:37 + * @param ip + * @param ipWhiteConfig + * @return + */ + public static boolean isPermited(String ip, String ipWhiteConfig) { + if(null == ipWhiteConfig || ipWhiteConfig.isEmpty()){ + //没有配置白名单,默认通过 + return true; + } + if (null == ip || ip.isEmpty()) + return false; + //ip格式不对 + if(!pattern.matcher(ip).matches())return false; + if (DEFAULT_ALLOW_ALL_FLAG.equals(ipWhiteConfig)) + return true; + if (DEFAULT_DENY_ALL_FLAG.equals(ipWhiteConfig)) + return false; + Set ipList = getAvaliIpList(ipWhiteConfig); + return isPermited(ip, ipList); + } + + private static long ipToLong(String strIP) { + long[] ip = new long[4]; + // 先找到IP地址字符串中.的位置 + int position1 = strIP.indexOf("."); + int position2 = strIP.indexOf(".", position1 + 1); + int position3 = strIP.indexOf(".", position2 + 1); + // 将每个.之间的字符串转换成整型 + ip[0] = Long.parseLong(strIP.substring(0, position1)); + ip[1] = Long.parseLong(strIP.substring(position1 + 1, position2)); + ip[2] = Long.parseLong(strIP.substring(position2 + 1, position3)); + ip[3] = Long.parseLong(strIP.substring(position3 + 1)); + return (ip[0] << 24) + (ip[1] << 16) + (ip[2] << 8) + ip[3]; + } + + // 将10进制整数形式转换成127.0.0.1形式的IP地址 + private static String longToIP(long longIP) { + StringBuilder sb = new StringBuilder(""); + // 直接右移24位 + sb.append(String.valueOf(longIP >>> 24)); + sb.append("."); + // 将高8位置0,然后右移16位 + sb.append(String.valueOf((longIP & 0x00FFFFFF) >>> 16)); + sb.append("."); + sb.append(String.valueOf((longIP & 0x0000FFFF) >>> 8)); + sb.append("."); + sb.append(String.valueOf(longIP & 0x000000FF)); + return sb.toString(); + } + + public static void main(String[] args) { + + System.out.println(IpWhiteCheckUtil.isPermited("127.0.0.1","192.168.4.17")); + String ipWhilte = + "1.168.1.1;" + //设置单个IP的白名单 // + // "192.*;" //设置ip通配符,对一个ip段进行匹配 + "192.168.3.17-192.168.3.38;" //设置一个IP范围 + +"192.168.4.0/24"; //設置一个网段 + System.out.println(IpWhiteCheckUtil.isPermited("1.168.1.1",ipWhilte)); //true + System.out.println(IpWhiteCheckUtil.isPermited("192.168.1.2",ipWhilte)); //false + System.out.println(IpWhiteCheckUtil.isPermited("192.168.3.16",ipWhilte)); //false + System.out.println(IpWhiteCheckUtil.isPermited("192.168.3.37",ipWhilte)); //true + System.out.println(IpWhiteCheckUtil.isPermited("192.168.4.1",ipWhilte));//true + + + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/JacksonUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/JacksonUtil.java new file mode 100644 index 00000000..d071aff8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/JacksonUtil.java @@ -0,0 +1,236 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.*; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.StringUtils; + +import java.io.File; +import java.io.IOException; +import java.text.SimpleDateFormat; +import java.util.List; + +/** + * @ClassName : JsonUtil + * @Description : jackson工具类 + * @Author : sky + * @Date: 2023-06-07 10:55 + */ +public class JacksonUtil { + + private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper(); + + private static final ObjectMapper OBJECT_MAPPER_SNAKE_CASE = new ObjectMapper(); + // 日期格式化 + private static final String STANDARD_FORMAT = "yyyy-MM-dd HH:mm:ss"; + + private final static Logger log = LoggerFactory.getLogger(JacksonUtil.class); + + static { + //对象的所有字段全部列入 + OBJECT_MAPPER.setSerializationInclusion(JsonInclude.Include.ALWAYS); + //取消默认转换timestamps形式 + OBJECT_MAPPER.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + //忽略空Bean转json的错误 + OBJECT_MAPPER.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + //所有的日期格式都统一为以下的样式,即yyyy-MM-dd HH:mm:ss + OBJECT_MAPPER.setDateFormat(new SimpleDateFormat(STANDARD_FORMAT)); + //忽略 在json字符串中存在,但是在java对象中不存在对应属性的情况。防止错误 + OBJECT_MAPPER.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + } + + static { + //对象的所有字段全部列入 + OBJECT_MAPPER_SNAKE_CASE.setSerializationInclusion(JsonInclude.Include.ALWAYS); + //取消默认转换timestamps形式 + OBJECT_MAPPER_SNAKE_CASE.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + //忽略空Bean转json的错误 + OBJECT_MAPPER_SNAKE_CASE.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + //所有的日期格式都统一为以下的样式,即yyyy-MM-dd HH:mm:ss + OBJECT_MAPPER_SNAKE_CASE.setDateFormat(new SimpleDateFormat(STANDARD_FORMAT)); + //忽略 在json字符串中存在,但是在java对象中不存在对应属性的情况。防止错误 + OBJECT_MAPPER_SNAKE_CASE.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + //转换为下划线 + OBJECT_MAPPER_SNAKE_CASE.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); + } + + private JacksonUtil() { + } + + public static ObjectMapper getInstance(){ + return OBJECT_MAPPER; + } + + /** + * 对象转Json格式字符串 + * + * @param obj 对象 + * @return Json格式字符串 + */ + public static String obj2String(T obj) { + if (obj == null) { + return null; + } + try { + return obj instanceof String ? (String) obj : OBJECT_MAPPER.writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 对象转file + * + * @param fileName + * @param obj + */ + public static void obj2File(String fileName, Object obj) { + if (obj == null) { + return; + } + try { + OBJECT_MAPPER.writeValue(new File(fileName), obj); + } catch (IOException e) { + e.printStackTrace(); + } + } + + /** + * 对象转Json格式字符串; 属性名从驼峰改为下划线形式 + * + * @param obj 对象 + * @return Json格式字符串 + */ + public static String obj2StringFieldSnakeCase(T obj) { + if (obj == null) { + return null; + } + try { + ObjectMapper objectMapper = OBJECT_MAPPER_SNAKE_CASE; + return obj instanceof String ? (String) obj : objectMapper.writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象; 属性名从下划线形式改为驼峰 + * + * @param str 要转换的字符串 + * @param clazz 自定义对象的class对象 + * @return 自定义对象 + */ + public static T string2ObjFieldLowerCamelCase(String str, Class clazz) { + if (StringUtils.isEmpty(str) || clazz == null) { + return null; + } + try { + ObjectMapper objectMapper = OBJECT_MAPPER_SNAKE_CASE; + return clazz.equals(String.class) ? (T) str : objectMapper.readValue(str, clazz); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象(List); 属性名从下划线形式改为驼峰 + * + * @param str 要转换的字符串 + * @param typeReference 自定义对象的typeReference List 对象 + * @return 自定义对象 + */ + public static List string2ListFieldLowerCamelCase(String str, TypeReference> typeReference) { + if (StringUtils.isEmpty(str) || typeReference == null) { + return null; + } + try { + ObjectMapper objectMapper = OBJECT_MAPPER_SNAKE_CASE; + return objectMapper.readValue(str, typeReference); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return null; + } + } + + /** + * 对象转Json格式字符串(格式化的Json字符串) + * + * @param obj 对象 + * @return 美化的Json格式字符串 + */ + public static String obj2StringPretty(T obj) { + if (obj == null) { + return null; + } + try { + return obj instanceof String ? (String) obj : OBJECT_MAPPER.writerWithDefaultPrettyPrinter().writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象 + * + * @param str 要转换的字符串 + * @param clazz 自定义对象的class对象 + * @return 自定义对象 + */ + public static T string2Obj(String str, Class clazz) { + if (StringUtils.isEmpty(str) || clazz == null) { + return null; + } + try { + return clazz.equals(String.class) ? (T) str : OBJECT_MAPPER.readValue(str, clazz); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义字段转为list + * + * @param str + * @param typeReference + * @param + * @return + */ + public static T string2Obj(String str, TypeReference typeReference) { + if (StringUtils.isEmpty(str) || typeReference == null) { + return null; + } + try { + return (T) (typeReference.getType().equals(String.class) ? str : OBJECT_MAPPER.readValue(str, typeReference)); + } catch (IOException e) { + log.warn("Parse String to Object error", e.getMessage()); + return null; + } + } + + public static T string2Obj(String str, Class collectionClazz, Class... elementClazzes) { + JavaType javaType = OBJECT_MAPPER.getTypeFactory().constructParametricType(collectionClazz, elementClazzes); + try { + return OBJECT_MAPPER.readValue(str, javaType); + } catch (IOException e) { + log.warn("Parse String to Object error : {}" + e.getMessage()); + return null; + } + } + + public static String parseArray(Object[] arguments) { + try { + return OBJECT_MAPPER.writeValueAsString(arguments); + } catch (JsonProcessingException e) { + log.warn("Parse String to Object error : {}" + e.getMessage()); + return ""; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/LogPrintUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/LogPrintUtil.java new file mode 100644 index 00000000..86ffacf3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/LogPrintUtil.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.slf4j.Logger; + +/** + * @ClassName : LogUtil + * @Description : 日志打印 + * @Author : sky + * @Date: 2022-07-28 16:11 + */ +public final class LogPrintUtil { + + + private LogPrintUtil() { + throw new UnsupportedOperationException(); + } + + /** + * 错误日志打印 + * + * @param log 执行器 + * @param message 自定义错误 + * @param e 异常 + */ + public static void logError(Logger log,String message, Exception e){ + log.info(message); + if (log.isDebugEnabled()) { + log.error("异常信息",e); + }else { + log.info("异常信息:",e); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/MD5Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/MD5Util.java new file mode 100644 index 00000000..d1df0f50 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/MD5Util.java @@ -0,0 +1,110 @@ +// package com.jiuyv.sptcc.agile.dataservice.utils; +// +// import javax.crypto.Cipher; +// import javax.crypto.SecretKeyFactory; +// import javax.crypto.spec.DESKeySpec; +// import javax.crypto.spec.IvParameterSpec; +// import java.security.Key; +// import java.security.MessageDigest; +// import java.security.NoSuchAlgorithmException; +// import java.security.spec.AlgorithmParameterSpec; +// import java.util.Base64; +// +// public class MD5Util { +// +// /** 向量(同时拥有向量和密匙才能解密),此向量必须是8byte,多少都报错 */ +// private final byte[] DESIV = new byte[] { 0x22, 0x54, 0x36, 110, 0x40, (byte) 0xac, (byte) 0xad, (byte) 0xdf }; +// /** 自定义密钥,个数不能太短,太短报错,过长,它默认只取前N位(N的具体值,大家另行查找资料) */ +// private final String deSkey = "datax-cloud"; +// /** 加密算法的参数接口 */ +// private AlgorithmParameterSpec iv = null; +// private Key key = null; +// private String CHARSET = "UTF-8"; +// +// private static volatile MD5Util instance; +// +// /** +// * 构造函数 +// * @throws Exception +// */ +// private MD5Util() throws Exception { +// // 设置密钥参数 +// DESKeySpec keySpec = new DESKeySpec(deSkey.getBytes(this.CHARSET)); +// // 设置向量 +// iv = new IvParameterSpec(DESIV); +// // 获得密钥工厂 +// SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DES"); +// // 得到密钥对象 +// key = keyFactory.generateSecret(keySpec); +// } +// +// public static MD5Util getInstance() throws Exception { +// if(instance == null) { +// synchronized (MD5Util.class) { +// if(instance == null) { +// instance = new MD5Util(); +// } +// } +// } +// return instance; +// } +// +// /** +// * 加密 +// * @param data +// * @return +// * @throws Exception +// */ +// public String encode(String data) throws Exception { +// // 得到加密对象Cipher +// Cipher enCipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); +// // 设置工作模式为加密模式,给出密钥和向量 +// enCipher.init(Cipher.ENCRYPT_MODE, key, iv); +// byte[] pasByte = enCipher.doFinal(data.getBytes(this.CHARSET)); +// return Base64.getEncoder().encodeToString(pasByte); +// } +// +// /** +// * 解密 +// * @param data +// * @return +// * @throws Exception +// */ +// public String decode(String data) throws Exception { +// Cipher deCipher = Cipher.getInstance("DES/CBC/PKCS5Padding"); +// deCipher.init(Cipher.DECRYPT_MODE, key, iv); +// //此处注意doFinal()的参数的位数必须是8的倍数,否则会报错(通过encode加密的字符串读出来都是8的倍数位,但写入文件再读出来,就可能因为读取的方式的问题,导致最后此处的doFinal()的参数的位数不是8的倍数) +// //此处必须用base64Decoder,若用data。getBytes()则获取的字符串的byte数组的个数极可能不是8的倍数,而且不与上面的BASE64Encoder对应(即使解密不报错也不会得到正确结果) +// byte[] pasByte = deCipher.doFinal(Base64.getDecoder().decode(data)); +// return new String(pasByte, this.CHARSET); +// } +// +// /** +// * 获取MD5的值,可用于对比校验 +// * @param sourceStr +// * @return +// */ +// private static String getMD5Value(String sourceStr) { +// String result = ""; +// try { +// MessageDigest md = MessageDigest.getInstance("MD5"); +// md.update(sourceStr.getBytes()); +// byte b[] = md.digest(); +// int i; +// StringBuffer buf = new StringBuffer(""); +// for (int offset = 0; offset < b.length; offset++) { +// i = b[offset]; +// if (i < 0) { +// i += 256; +// } +// if (i < 16) { +// buf.append("0"); +// } +// buf.append(Integer.toHexString(i)); +// } +// result = buf.toString(); +// } catch (NoSuchAlgorithmException e) { +// } +// return result; +// } +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/NamedParameterUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/NamedParameterUtil.java new file mode 100644 index 00000000..1925046c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/NamedParameterUtil.java @@ -0,0 +1,119 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.springframework.util.Assert; + +import java.util.*; + +/** + * 带参数sql处理工具类 + */ +public class NamedParameterUtil { + + private NamedParameterUtil() {} + + /** + * 定义特殊字符(增加最后的自定义的'}') + */ + private static final char[] PARAMETER_SEPARATORS = + new char[] {'"', '\'', ':', '&', ',', ';', '(', ')', '|', '=', '+', '-', '*', '%', '/', '\\', '<', '>', '^', '}'}; + + /** + * 对带参数sql的统计式封装,便于后续肢解拼装 + * @param originalSql + * @return + */ + public static ParsedSql parseSqlStatement(String originalSql) { + Assert.notNull(originalSql, "SQL must not be null"); + ParsedSql parsedSql = new ParsedSql(originalSql); + Set namedParameters = new HashSet(); + char[] sqlchars = originalSql.toCharArray(); + int namedParamCount = 0; + int unNamedParamCount = 0; + int totalParamCount = 0; + int i = 0; + while (i < sqlchars.length) { + char statement = sqlchars[i]; + if (statement == ':') { + int j = i + 1; + while (j < sqlchars.length && !isSeparatorsChar(sqlchars[j])) { + j++; + } + if (j - i > 1) { + String paramName = originalSql.substring(i + 1, j); + if (!namedParameters.contains(paramName)) { + namedParameters.add(paramName); + namedParamCount++; + } + parsedSql.addParamNames(paramName, i, j); + totalParamCount++; + } + i = j - 1; + } else if (statement == '?') { + unNamedParamCount++; + totalParamCount++; + } + i++; + } + parsedSql.setNamedParamCount(namedParamCount); + parsedSql.setUnnamedParamCount(unNamedParamCount); + parsedSql.setTotalParamCount(totalParamCount); + return parsedSql; + } + + /** + * 获得不带参数的sql,即替换参数为? + * @param parsedSql + * @param params + * @return + */ + public static String substituteNamedParams(ParsedSql parsedSql, Map params){ + String original = parsedSql.getOriginalSql(); + StringBuffer actual = new StringBuffer(""); + int lastIndex = 0; + List paramNames = parsedSql.getParamNames(); + for (int i = 0; i < paramNames.size(); i++) { + int[] indexs = parsedSql.getParamIndexs(i); + int startIndex = indexs[0]; + int endIndex = indexs[1]; + String paramName = paramNames.get(i); + actual.append(original.substring(lastIndex, startIndex)); + actual.append("?"); + lastIndex = endIndex; + } + actual.append(original.subSequence(lastIndex, original.length())); + return actual.toString(); + } + + /** + * 获得sql所需参数K,V + * @param parsedSql + * @param params + * @return + */ + public static LinkedHashMap buildValueArray(ParsedSql parsedSql, Map params){ + List paramNames = parsedSql.getParamNames(); + LinkedHashMap acceptedFilters = new LinkedHashMap<>(parsedSql.getTotalParamCount()); + if (parsedSql.getNamedParamCount() > 0 && parsedSql.getUnnamedParamCount() > 0) { + throw new RuntimeException("parameter方式与?方式不能混合!"); + } + for (int i = 0; i < paramNames.size(); i++) { + String keyName = paramNames.get(i); + if (params.containsKey(keyName)) { + acceptedFilters.put(keyName, params.get(keyName)); + } + } + return acceptedFilters; + } + + private static boolean isSeparatorsChar(char statement){ + if (Character.isWhitespace(statement)) { + return true; + } + for (int i = 0; i < PARAMETER_SEPARATORS.length; i++) { + if (statement == PARAMETER_SEPARATORS[i]) { + return true; + } + } + return false; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/PageUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/PageUtil.java new file mode 100644 index 00000000..74b37bd9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/PageUtil.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.io.Serializable; + +public class PageUtil implements Serializable { + + private static final long serialVersionUID = 1L; + + private static final Integer DEFAULT_MAX_COUNT = 5000; + + // 当前页码 + private Integer pageNum = 1; + // 分页条数 + private Integer pageSize = 20; + + public Integer getPageNum() { + return pageNum; + } + + public void setPageNum(Integer pageNum) { + this.pageNum = pageNum; + } + + public Integer getPageSize() { + return pageSize; + } + + public void setPageSize(Integer pageSize) { + this.pageSize = pageSize; + if (this.pageSize > 0) { + this.pageSize = this.pageSize > DEFAULT_MAX_COUNT ? DEFAULT_MAX_COUNT : this.pageSize; + } else { + this.pageSize = 20; + } + } + + public PageUtil(Integer pageNum, Integer pageSize) { + this.pageNum = pageNum; + this.pageSize = pageSize; + if (this.pageSize > 0) { + this.pageSize = this.pageSize > DEFAULT_MAX_COUNT ? DEFAULT_MAX_COUNT : this.pageSize; + } else { + this.pageSize = 20; + } + } + + public Integer getOffset() { + pageSize = pageSize == null ? 20 : pageSize; + pageNum = pageNum == null ? 1 : pageNum; + int offset = pageNum > 0 ? (pageNum - 1) * pageSize : 0; + return offset; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParamsUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParamsUtil.java new file mode 100644 index 00000000..ab2127d1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParamsUtil.java @@ -0,0 +1,45 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; +import com.jiuyv.sptcc.agile.dataservice.dto.request.base.Range; +import org.apache.commons.lang3.StringUtils; + +import java.util.Date; +import java.util.HashMap; +import java.util.Map; + +/** + * @ClassName : ParamsUtil + * @Description : + * @Author : sky + * @Date: 2023-09-05 18:12 + */ +public class ParamsUtil { + + public static Map idempotent( String recToken) { + return idempotent(recToken,null); + } + + public static Map idempotent( String recToken, Long versionNum) { + Map params = new HashMap<>(); + if(StringUtils.isBlank(recToken)){ + throw new BaseException("RecToken 不能为空"); + } + if (StringUtils.isNotEmpty(recToken)) { + params.put("recToken", recToken); + } + if (versionNum != null) { + params.put("versionNum", versionNum); + } + return params; + } + + public static Map range(Range range){ + Map params = new HashMap<>(); + Date beginDate = range.getBeginDate(); + Date endDate = range.getEndDate(); + params.put("beginDate", beginDate); + params.put("endDate", endDate); + return params; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParsedSql.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParsedSql.java new file mode 100644 index 00000000..1b532130 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ParsedSql.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +/** + * 此类封装NamedParameterSql + */ +public class ParsedSql implements Serializable { + + private static final long serialVersionUID=1L; + + private String originalSql; + //参数名 + private List paramNames = new ArrayList<>(); + //参数在sql中对应的位置 + private List paramIndexs = new ArrayList<>(); + //统计参数个数(不包含重复) + private int namedParamCount; + //统计sql中?的个数 + private int unnamedParamCount; + + private int totalParamCount; + + public ParsedSql(String originalSql){ + this.originalSql = originalSql; + } + + public List getParamNames() { + return paramNames; + } + + public void addParamNames(String paramName,int startIndex,int endIndex) { + paramNames.add(paramName); + paramIndexs.add(new int[]{startIndex,endIndex}); + } + + public int[] getParamIndexs(int position) { + return paramIndexs.get(position); + } + + public String getOriginalSql() { + return originalSql; + } + + public int getNamedParamCount() { + return namedParamCount; + } + + public void setNamedParamCount(int namedParamCount) { + this.namedParamCount = namedParamCount; + } + + public int getUnnamedParamCount() { + return unnamedParamCount; + } + + public void setUnnamedParamCount(int unnamedParamCount) { + this.unnamedParamCount = unnamedParamCount; + } + + public int getTotalParamCount() { + return totalParamCount; + } + + public void setTotalParamCount(int totalParamCount) { + this.totalParamCount = totalParamCount; + } + + @Override + public String toString() { + return "ParsedSql{" + + "originalSql='" + originalSql + '\'' + + ", paramNames=" + paramNames + + ", paramIndexs=" + paramIndexs + + ", namedParamCount=" + namedParamCount + + ", unnamedParamCount=" + unnamedParamCount + + ", totalParamCount=" + totalParamCount + + '}'; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ServletUtils.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ServletUtils.java new file mode 100644 index 00000000..3a8e82f1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ServletUtils.java @@ -0,0 +1,113 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.springframework.web.context.request.RequestAttributes; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import java.io.IOException; +import java.rmi.AccessException; + + +/** + * 客户端工具类 + * + * @author admin + */ +public final class ServletUtils { + + private ServletUtils() throws AccessException { + throw new AccessException("ServletUtils construct not access"); + } + + /** + * 获取request + */ + public static HttpServletRequest getRequest() { + ServletRequestAttributes requestAttributes = getRequestAttributes(); + if (null != requestAttributes) { + return requestAttributes.getRequest(); + } + return null; + } + + /** + * 获取response + */ + public static HttpServletResponse getResponse() { + ServletRequestAttributes requestAttributes = getRequestAttributes(); + if (null != requestAttributes) { + return requestAttributes.getResponse(); + } + return null; + } + + /** + * 获取session + */ + public static HttpSession getSession() { + HttpServletRequest request = getRequest(); + if (null != request) { + return request.getSession(); + } + return null; + } + + public static ServletRequestAttributes getRequestAttributes() { + RequestAttributes attributes = RequestContextHolder.getRequestAttributes(); + if (null != attributes) { + return (ServletRequestAttributes) attributes; + } + return null; + } + + /** + * 将字符串渲染到客户端 + * + * @param response 渲染对象 + * @param string 待渲染的字符串 + */ + public static void renderString(HttpServletResponse response, String string) { + try { + response.setStatus(200); + response.setContentType("application/json"); + response.setCharacterEncoding("utf-8"); + response.getWriter().print(string); + } catch (IOException e) { + e.printStackTrace(); + } + } + + /** + * 写入图片信息 + * + */ + public static void renderImg(HttpServletResponse response, String fileType, + String fileName, byte[] fileContent) { + response.setContentType(getContentType(fileType)); + response.setHeader("Pragma", "No-cache"); + response.setHeader("Cache-Control", "no-cache"); + try { + response.getOutputStream().write(fileContent); + } catch (IOException e) { + e.printStackTrace(); + } + } + + public static String getContentType(String fileType) { + if ("gif".equalsIgnoreCase(fileType)) { + return "image/gif"; + } else if ("jpg".equalsIgnoreCase(fileType) || "jpeg".equalsIgnoreCase(fileType)) { + return "image/jpg"; + } else if ("png".equalsIgnoreCase(fileType)) { + return "image/png"; + } else if ("bmp".equalsIgnoreCase(fileType)) { + return "image/bmp"; + } else { + return "application/octet-stream"; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/SqlBuilderUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/SqlBuilderUtil.java new file mode 100644 index 00000000..5811b5cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/SqlBuilderUtil.java @@ -0,0 +1,296 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.DataApiEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.ReqParam; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.Assert; +import org.springframework.util.CollectionUtils; + +import java.io.Serializable; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +/** + * 用于动态构造sql语句 + * ${ segment... } 为一个条件代码块 + * + * String sql = "select * from user where 1=1 + * ${ and username = :username } + * ${ and password = :password } + * ${ and age = :age }" + * + * Map filters = new HashMap(); + * filters.put("username", "yuwei"); + * filters.put("age", "12"); + * filters.put("id", "123"); + * + * SqlFilterResult result = SqlBuilderUtil.applyFilters(sql, filters); + * + * result.getSql()结果 + * select * from user where 1=1 and username=:username and age=:age + * + * result.getAcceptedFilters()结果 + * {username=yuwei} + * {age=12} + */ +public class SqlBuilderUtil { + + private static Logger logger = LoggerFactory.getLogger(SqlBuilderUtil.class); + + private SqlBuilderUtil() {} + + private static volatile SqlBuilderUtil instance; + + public static SqlBuilderUtil getInstance() { + if(instance == null) { + synchronized (SqlBuilderUtil.class) { + if(instance == null) { + instance = new SqlBuilderUtil(); + } + } + } + return instance; + } + + /** + * 空格 + */ + private final String SPACE = " "; + /** + * 冒号占位符 + */ + private final String COLON = ":"; + /** + * 问号占位符 + */ + private final String MARK = "?"; + /** + * where关键字 + */ + private final String WHERE_SQL = "WHERE"; + /** + * AND连接符 + */ + private final String WHERE_AND = "AND"; + /** + * where 1=1条件 + */ + private final String WHERE_INIT = WHERE_SQL + " 1 = 1"; + /** + * 左括号 + */ + private final String LEFT_BRACKET = "("; + /** + * 右括号 + */ + private final String RIGHT_BRACKET = ")"; + /** + * 百分号% + */ + private final String PERCENT_SIGN = "%"; + /** + * 单引号 ' + */ + private final String SINGLE_QUOTE = "'"; + /** + * 条件代码块标记开始 + */ + public final String MARK_KEY_START = "${"; + /** + * 条件代码块标记结束 + */ + public final String MARK_KEY_END = "}"; + + /** + * 拼接命名参数sql + * @param sql + * @param params + * @return + */ + public String buildHql(String sql, List params){ + Assert.notNull(sql, "SQL must not be null"); + return buildHql(new StringBuffer(sql), params); + } + + private String buildHql(StringBuffer sql, List params){ + if(CollectionUtils.isEmpty(params)){ + return sql.toString(); + } + sql.append(SPACE).append(WHERE_INIT); + for (int i = 0; i < params.size(); i++) { + ReqParam reqParam = params.get(i); + sql.append(SPACE).append(MARK_KEY_START).append(WHERE_AND).append(SPACE).append(reqParam.getParamName()); + if (DataApiEnum.WHERE_TYPE.LIKE.getType().equals(reqParam.getWhereType())) { + // LIKE '%' :username '%' ,:username 两边一定要有空格,如果没有空格,是查询不到数据的 + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(SPACE) + .append(COLON).append(reqParam.getParamName()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.LIKE_LEFT.getType().equals(reqParam.getWhereType())) { + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(SPACE) + .append(COLON).append(reqParam.getParamName()).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.LIKE_RIGHT.getType().equals(reqParam.getWhereType())) { + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(COLON).append(reqParam.getParamName()) + .append(SPACE).append(SINGLE_QUOTE).append(PERCENT_SIGN).append(SINGLE_QUOTE).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.NULL.getType().equals(reqParam.getWhereType()) || DataApiEnum.WHERE_TYPE.NOT_NULL.getType().equals(reqParam.getWhereType())){ + // is null或is not null不需要参数值 + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()).append(MARK_KEY_END); + } else if(DataApiEnum.WHERE_TYPE.IN.getType().equals(reqParam.getWhereType())){ + // in (:ids) + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(LEFT_BRACKET) + .append(COLON).append(reqParam.getParamName()) + .append(RIGHT_BRACKET).append(MARK_KEY_END); + } else { + sql.append(SPACE).append(DataApiEnum.WHERE_TYPE.getWhereType(reqParam.getWhereType()).getKey()) + .append(SPACE).append(COLON).append(reqParam.getParamName()).append(MARK_KEY_END); + } + } + return sql.toString(); + } + + /** + * 根据入参动态构造sql语句 + * @param sql + * @param filters + * @return + */ + public SqlFilterResult applyFilters(String sql, Map filters){ + Assert.notNull(sql, "SQL must not be null"); + return applyFilters(new StringBuffer(sql), filters); + } + + private SqlFilterResult applyFilters(StringBuffer sql, Map filters){ + LinkedHashMap acceptedFilters = new LinkedHashMap<>(); + for (int i = 0, end = 0, start = sql.indexOf(MARK_KEY_START); ((start = sql.indexOf(MARK_KEY_START, end)) >= 0); i++) { + end = sql.indexOf(MARK_KEY_END, start); + // 封装该条件代码块中的NamedParameterSql + ParsedSql parsedSql = getSegmentParsedSql(sql, start, end); + if (parsedSql.getParamNames() == null || parsedSql.getParamNames().size() < 1){ + throw new IllegalArgumentException("Not key found in segment=" + sql.substring(start, end + MARK_KEY_END.length())); + } + // 判断输入参数filters中是否存在查询参数 + if (isAcceptedKeys(filters, parsedSql.getParamNames())) { + // 动态构造可执行的sql语句,去掉条件代码块两边的${ }标记符 + if (logger.isDebugEnabled()) { + logger.debug("The filter namedParameters=" + parsedSql.getParamNames() + " is accepted on segment=" + sql.substring(start, end + MARK_KEY_END.length())); + } + // 下面方法2选1可以获取条件代码块 + // select id, name from user where 1 = 1 and id = :id +// String segment = sql.substring(start + MARK_KEY_START.length(), end); + String segment = parsedSql.getOriginalSql(); + // 转换命名参数:为? + // select id, name from user where 1 = 1 and id = ? +// String segment = NamedParameterUtil.substituteNamedParams(parsedSql, filters); + // 获取传参中包含命名参数的数据 + LinkedHashMap linkAcceptedFilters = NamedParameterUtil.buildValueArray(parsedSql, filters); + acceptedFilters.putAll(linkAcceptedFilters); + sql.replace(start, end + MARK_KEY_END.length(), segment); + end = start + segment.length(); + } else { + // 抛弃该条件代码块 + if (logger.isDebugEnabled()) { + logger.debug("The filter namedParameters=" + parsedSql.getParamNames() + " is removed from the query on segment=" + sql.substring(start, end + MARK_KEY_END.length())); + } + sql.replace(start, end + MARK_KEY_END.length(), ""); + end = start; + } + } + return new SqlFilterResult(sql.toString(), acceptedFilters); + } + + /** + * 验证入参,并过滤值为空的入参 + */ + private boolean isAcceptedKeys(Map filters, List keys) { + for (int i = 0; i < keys.size(); i++) { + String key = keys.get(i); + Object value = getProperty(filters, key); + if (!isValuePopulated(value, true)) { + return false; + } + } + return true; + } + + /** + * 封装该条件代码块中的NamedParameterSql + */ + private ParsedSql getSegmentParsedSql(StringBuffer sql, int start, int end) { + String segment = sql.substring(start + MARK_KEY_START.length(), end); + ParsedSql parsedSql = NamedParameterUtil.parseSqlStatement(segment); + return parsedSql; + } + + /** + * 获取参数值 + * @param filters + * @param key + * @return + */ + private Object getProperty(Map filters, String key) { + if (filters == null || filters.isEmpty()) + return null; + return filters.get(key); + } + + /** + * 验证参数值是否空 + * @param value + * @param isRemoveEmpty + * @return + */ + private boolean isValuePopulated(Object value, boolean isRemoveEmpty) { + if (value == null) { + return false; + } + if (isRemoveEmpty) { +// return ObjectUtil.isNotEmpty(value); + return value != null; + } else { + return true; + } + } + + public static class SqlFilterResult implements Serializable { + + private static final long serialVersionUID=1L; + + private String sql; + + private Map acceptedFilters; + + public SqlFilterResult(String sql, Map acceptedFilters) { + this.setSql(sql); + this.setAcceptedFilters(acceptedFilters); + } + + public String getSql() { + return sql; + } + + public void setSql(String sql) { + this.sql = sql; + } + + public Map getAcceptedFilters() { + return acceptedFilters; + } + + public void setAcceptedFilters(Map acceptedFilters) { + this.acceptedFilters = acceptedFilters; + } + + @Override + public String toString() { + return "SqlFilterResult{" + + "sql='" + sql + '\'' + + ", acceptedFilters=" + acceptedFilters + + '}'; + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/StringUtilT.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/StringUtilT.java new file mode 100644 index 00000000..0a81dddd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/StringUtilT.java @@ -0,0 +1,145 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import org.springframework.util.AntPathMatcher; + +import java.util.Collection; +import java.util.List; +import java.util.Map; + + +/** + * 字符串工具类 + * + * @author admin + */ +public final class StringUtilT { + + private StringUtilT() { + throw new UnsupportedOperationException(); + } + + /** + * 空字符串 + */ + private static final String NULLSTR = ""; + + /** + * 下划线 + */ + private static final char SEPARATOR = '_'; + + + /** + * 去空格 + */ + public static String trim(String str) { + return (str == null ? "" : str.trim()); + } + + /** + * 截取字符串 + * + * @param str 字符串 + * @param start 开始 + * @return 结果 + */ + public static String substring(final String str, int start) { + if (str == null) { + return NULLSTR; + } + + if (start < 0) { + start = str.length() + start; + } + + if (start < 0) { + start = 0; + } + if (start > str.length()) { + return NULLSTR; + } + + return str.substring(start); + } + + /** + * 截取字符串 + * + * @param str 字符串 + * @param start 开始 + * @param end 结束 + * @return 结果 + */ + public static String substring(final String str, int start, int end) { + if (str == null) { + return NULLSTR; + } + + if (end < 0) { + end = str.length() + end; + } + if (start < 0) { + start = str.length() + start; + } + + if (end > str.length()) { + end = str.length(); + } + + if (start > end) { + return NULLSTR; + } + + if (start < 0) { + start = 0; + } + if (end < 0) { + end = 0; + } + + return str.substring(start, end); + } + + + /** + * 驼峰转下划线命名 + */ + public static String toUnderScoreCase(String str) { + if (str == null) { + return null; + } + StringBuilder sb = new StringBuilder(); + // 前置字符是否大写 + boolean preCharIsUpperCase = true; + // 当前字符是否大写 + boolean curreCharIsUpperCase = true; + // 下一字符是否大写 + boolean nexteCharIsUpperCase = true; + for (int i = 0; i < str.length(); i++) { + char c = str.charAt(i); + if (i > 0) { + preCharIsUpperCase = Character.isUpperCase(str.charAt(i - 1)); + } else { + preCharIsUpperCase = false; + } + + curreCharIsUpperCase = Character.isUpperCase(c); + + if (i < (str.length() - 1)) { + nexteCharIsUpperCase = Character.isUpperCase(str.charAt(i + 1)); + } + + if (preCharIsUpperCase && curreCharIsUpperCase && !nexteCharIsUpperCase) { + sb.append(SEPARATOR); + } + if ((i != 0 && !preCharIsUpperCase) && curreCharIsUpperCase) { + sb.append(SEPARATOR); + } + sb.append(Character.toLowerCase(c)); + } + + return sb.toString(); + } + + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ThrowableUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ThrowableUtil.java new file mode 100644 index 00000000..0409437e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/ThrowableUtil.java @@ -0,0 +1,26 @@ +package com.jiuyv.sptcc.agile.dataservice.utils; + +import java.io.PrintWriter; +import java.io.StringWriter; + +/** + * 异常工具 + */ +public class ThrowableUtil { + + /** + * 获取堆栈信息 + * @param throwable + * @return + */ + public static String getStackTrace(Throwable throwable){ + StringWriter sw = new StringWriter(); + PrintWriter pw = new PrintWriter(sw); + try { + throwable.printStackTrace(pw); + return sw.toString(); + } finally { + pw.close(); + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/MD5.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/MD5.java new file mode 100644 index 00000000..74fbddfe --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/MD5.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.data; + +import org.apache.commons.codec.digest.DigestUtils; + +import java.math.BigInteger; +import java.nio.charset.StandardCharsets; +import java.security.MessageDigest; + +/** + * Description: md5加密解密 + */ +public class MD5 { + + public static String md5(String dateString) throws Exception { + MessageDigest md5 = null; + byte[] digest = MessageDigest.getInstance("md5").digest(dateString.getBytes(StandardCharsets.UTF_8)); + String md5code = new BigInteger(1, digest).toString(16); + // 如果生成数字未满32位,需要前面补0 + for (int i = 0; i < 32 - md5code.length(); i++) { + md5code = "0" + md5code; + } + return md5code; + } + + // ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。 + //(1)0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符), + // 如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等;通信专用字 符:SOH(文头)、EOT(文尾)、ACK(确认)等; + // ASCII值为8、9、10 和13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的 应用程序,而对文本显示有不同的影响。 + // 2)32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字。 + //(3)65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。 + public static String md5PlusSalt(String keyword) { + // md5加密 + String md5 = DigestUtils.md5Hex(keyword); + // md5+盐 + return getString(md5); + + } + private static String getString(String md5) { + char[] cArray = md5.toCharArray(); + for (int i = 0; i < cArray.length; i++) { + if (cArray[i] >= 48 && cArray[i] <= 57) { + cArray[i] = (char) (105 - cArray[i]); + + } + } + // 都可以使用 + return String.valueOf(cArray); + } + + // 解密+盐 + public static String md5MinusSalt(String md5) { + return getString(md5); + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/PhoneUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/PhoneUtil.java new file mode 100644 index 00000000..d70422b0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/data/PhoneUtil.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.data; + +import com.jiuyv.sptcc.agile.dataservice.factory.crypto.MOBILEPHONECrypto; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; + +public class PhoneUtil { + + public static String decryptEcb(String phone) { + String s = Sm4Util.decryptEcb(phone); + if (null == s) { + return null; + } + MOBILEPHONECrypto mobilephoneCrypto = new MOBILEPHONECrypto(); + return mobilephoneCrypto.encrypt(s); + } + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java new file mode 100644 index 00000000..58cb47a9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java @@ -0,0 +1,84 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.sm; + + + +import org.bouncycastle.crypto.digests.SM3Digest; +import org.bouncycastle.crypto.macs.HMac; +import org.bouncycastle.crypto.params.KeyParameter; +import org.bouncycastle.jce.provider.BouncyCastleProvider; +import org.bouncycastle.pqc.math.linearalgebra.ByteUtils; + +import java.io.UnsupportedEncodingException; +import java.nio.charset.StandardCharsets; +import java.security.Security; +import java.util.Arrays; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:35 + */ +public class Sm3Util { + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + /** + * 无密钥加密 + * @param text + * @return + */ + public static String encrypt(String text) throws UnsupportedEncodingException { + String resultHexStr = ""; + byte[] srcData = text.getBytes(StandardCharsets.UTF_8); + byte[] resultHash = hash(srcData); + resultHexStr = ByteUtils.toHexString(resultHash); + return resultHexStr; + } + + public static byte[] hash(byte[] srcData){ + SM3Digest digest = new SM3Digest(); + digest.update(srcData, 0, srcData.length); + byte[] hash = new byte[digest.getDigestSize()]; + digest.doFinal(hash, 0); + return hash; + } + + /** + * 有密钥加密 + * @param key + * @param srcData + * @return + */ + public static byte[] hmac(byte[] key, byte[] srcData){ + KeyParameter keyParameter = new KeyParameter(key); + SM3Digest digest = new SM3Digest(); + HMac mac = new HMac(digest); + mac.init(keyParameter); + mac.update(srcData, 0, srcData.length); + byte[] result = new byte[mac.getMacSize()]; + mac.doFinal(result, 0); + return result; + } + + /** + * 校验 + * @param srcStr + * @param sm3HexString + * @return + * @throws UnsupportedEncodingException + */ + public static boolean verify(String srcStr, String sm3HexString) throws UnsupportedEncodingException { + boolean flag; + byte[] srcData = srcStr.getBytes(StandardCharsets.UTF_8); + byte[] sm3Hash = ByteUtils.fromHexString(sm3HexString); + byte[] newHash = hash(srcData); + flag = Arrays.equals(sm3Hash, newHash); + return flag; + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java new file mode 100644 index 00000000..9e6204cf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java @@ -0,0 +1,120 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.sm; + + +import org.apache.commons.codec.DecoderException; +import org.apache.commons.codec.binary.Base64; +import org.apache.commons.codec.binary.Hex; +import org.bouncycastle.jce.provider.BouncyCastleProvider; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; + +import javax.crypto.*; +import javax.crypto.spec.SecretKeySpec; +import java.nio.charset.StandardCharsets; +import java.security.*; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:04 + */ +public final class Sm4Util { + + public static final String ALGORITHM_NAME = "SM4"; + public static final String ALGORITHM_NAME_ECB_PADDING = "SM4/ECB/PKCS7Padding"; + public static final String ALGORITHM_NAME_ECB_NOPADDING = "SM4/ECB/NoPadding"; + public static final String ALGORITHM_NAME_CBC_PADDING = "SM4/CBC/PKCS7Padding"; + public static final String ALGORITHM_NAME_CBC_NOPADDING = "SM4/CBC/NoPadding"; + /** + * 数据加密密钥,不要动 + */ + public static final String SM4_KEY = "886f918cb40cb5a5014402a6c00cda74"; + /** + * SM4算法目前只支持128位(即密钥16字节) + */ + public static final int DEFAULT_KEY_SIZE = 128; + private static final Logger LOGGER = LoggerFactory.getLogger(Sm4Util.class); + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + private Sm4Util() throws IllegalAccessException { + throw new IllegalAccessException("access not allow"); + } + + public static byte[] generateKey(int keySize) throws NoSuchAlgorithmException, NoSuchProviderException { + KeyGenerator kg = KeyGenerator.getInstance(ALGORITHM_NAME, BouncyCastleProvider.PROVIDER_NAME); + kg.init(keySize, new SecureRandom()); + return kg.generateKey().getEncoded(); + } + + public static byte[] encrypt_ECB_Padding(byte[] key, byte[] data) + throws InvalidKeyException, NoSuchAlgorithmException, NoSuchProviderException, + NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.ENCRYPT_MODE, key); + return cipher.doFinal(data); + } + + public static byte[] decrypt_ECB_Padding(byte[] key, byte[] cipherText) + throws IllegalBlockSizeException, BadPaddingException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.DECRYPT_MODE, key); + return cipher.doFinal(cipherText); + } + + + private static Cipher generateECBCipher(String algorithmName, int mode, byte[] key) + throws NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException, + InvalidKeyException { + Cipher cipher = Cipher.getInstance(algorithmName, BouncyCastleProvider.PROVIDER_NAME); + Key sm4Key = new SecretKeySpec(key, ALGORITHM_NAME); + cipher.init(mode, sm4Key); + return cipher; + } + + + public static String encryptEcb(String key, String text) throws DecoderException, NoSuchPaddingException, IllegalBlockSizeException, NoSuchAlgorithmException, BadPaddingException, InvalidKeyException, NoSuchProviderException { + return Base64.encodeBase64String(Sm4Util.encrypt_ECB_Padding(Hex.decodeHex(key), text.getBytes(StandardCharsets.UTF_8))); + } + + public static String decryptEcb(String key, String text) throws DecoderException, IllegalBlockSizeException, NoSuchPaddingException, BadPaddingException, NoSuchAlgorithmException, InvalidKeyException, NoSuchProviderException { + return new String(Sm4Util.decrypt_ECB_Padding(Hex.decodeHex(key), Base64.decodeBase64((text)))); + } + + public static String generateKeyHex() throws NoSuchAlgorithmException, NoSuchProviderException { + return Hex.encodeHexString(Sm4Util.generateKey(DEFAULT_KEY_SIZE)); + } + + + public static String encryptEcb(String text) { + try { + return encryptEcb(SM4_KEY, text); + } catch (Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("sm4 encryptEcb failed", e); + } else { + LOGGER.info("sm4 encryptEcb failed: {}", e.getMessage()); + } + return text; + } + } + + public static String decryptEcb(String text) { + try { + return decryptEcb(SM4_KEY, text); + } catch (Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("sm4 encryptEcb failed", e); + } else { + LOGGER.info("sm4 encryptEcb failed: {}", e.getMessage()); + } + return text; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/IdUtils.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/IdUtils.java new file mode 100644 index 00000000..6b6531fc --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/IdUtils.java @@ -0,0 +1,85 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.uuid; + +import com.jiuyv.sptcc.agile.dataservice.common.constants.Constants; + +/** + * ID生成器工具类 + * + * @author admin + */ +public class IdUtils { + + public static final String ZORE = "0"; + /** + * 获取随机UUID + * + * @return 随机UUID + */ + public static String randomUUID() { + return UUID.randomUUID().toString(); + } + + /** + * 简化的UUID,去掉了横线 + * + * @return 简化的UUID,去掉了横线 + */ + public static String simpleUUID() { + return UUID.randomUUID().toString(true); + } + + /** + * 获取随机UUID,使用性能更好的ThreadLocalRandom生成UUID + * + * @return 随机UUID + */ + public static String fastUUID() { + return UUID.fastUUID().toString(); + } + + /** + * 简化的UUID,去掉了横线,使用性能更好的ThreadLocalRandom生成UUID + * + * @return 简化的UUID,去掉了横线 + */ + public static String fastSimpleUUID() { + return UUID.fastUUID().toString(true).replace(Constants.LINE,Constants.SPACE); + } + + /** + * 生成一个10位随机码recToken + * + * @return + */ + public static String getNewRecToken() { + return fastSimpleUUID().substring(0, 10); + } + + /** + * 构建规则编码 + * @param seqNo 序列值 + * @param prefix 前缀 + * @param length 希望长度 + * @return + */ + public static String buildSeq(Long seqNo, String prefix,Integer length){ + + + if(seqNo == null||prefix ==null ){ + return ""; + } + StringBuilder str = new StringBuilder(); + str.append(prefix) + .append(seqNo); + + Integer reduce = length- str.length(); + if(reduce > 0 ) { + for (Integer i = 0; i < reduce; i++) { + str.insert(prefix.length(),ZORE); + } + } + return str.toString(); + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/UUID.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/UUID.java new file mode 100644 index 00000000..77b5f627 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/uuid/UUID.java @@ -0,0 +1,437 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.uuid; + +import java.security.MessageDigest; +import java.security.NoSuchAlgorithmException; +import java.security.SecureRandom; +import java.util.Random; +import java.util.concurrent.ThreadLocalRandom; + +/** + * 提供通用唯一识别码(universally unique identifier)(UUID)实现 + * + * @author admin + */ +public final class UUID implements java.io.Serializable, Comparable { + private static final long serialVersionUID = -1185015143654744140L; + /** + * 此UUID的最高64有效位 + */ + private final long mostSigBits; + /** + * 此UUID的最低64有效位 + */ + private final long leastSigBits; + + /** + * 私有构造 + * + * @param data 数据 + */ + private UUID(byte[] data) { + long msb = 0; + long lsb = 0; + assert data.length == 16 : "data must be 16 bytes in length"; + for (int i = 0; i < 8; i++) { + msb = (msb << 8) | (data[i] & 0xff); + } + for (int i = 8; i < 16; i++) { + lsb = (lsb << 8) | (data[i] & 0xff); + } + this.mostSigBits = msb; + this.leastSigBits = lsb; + } + + /** + * 使用指定的数据构造新的 UUID。 + * + * @param mostSigBits 用于 {@code UUID} 的最高有效 64 位 + * @param leastSigBits 用于 {@code UUID} 的最低有效 64 位 + */ + public UUID(long mostSigBits, long leastSigBits) { + this.mostSigBits = mostSigBits; + this.leastSigBits = leastSigBits; + } + + /** + * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的本地线程伪随机数生成器生成该 UUID。 + * + * @return 随机生成的 {@code UUID} + */ + public static UUID fastUUID() { + return randomUUID(false); + } + + /** + * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的强伪随机数生成器生成该 UUID。 + * + * @return 随机生成的 {@code UUID} + */ + public static UUID randomUUID() { + return randomUUID(true); + } + + /** + * 获取类型 4(伪随机生成的)UUID 的静态工厂。 使用加密的强伪随机数生成器生成该 UUID。 + * + * @param isSecure 是否使用{@link SecureRandom}如果是可以获得更安全的随机码,否则可以得到更好的性能 + * @return 随机生成的 {@code UUID} + */ + public static UUID randomUUID(boolean isSecure) { + final Random ng = isSecure ? Holder.numberGenerator : getRandom(); + + byte[] randomBytes = new byte[16]; + ng.nextBytes(randomBytes); + randomBytes[6] &= 0x0f; /* clear version */ + randomBytes[6] |= 0x40; /* set to version 4 */ + randomBytes[8] &= 0x3f; /* clear variant */ + randomBytes[8] |= 0x80; /* set to IETF variant */ + return new UUID(randomBytes); + } + + /** + * 根据指定的字节数组获取类型 3(基于名称的)UUID 的静态工厂。 + * + * @param name 用于构造 UUID 的字节数组。 + * @return 根据指定数组生成的 {@code UUID} + */ + public static UUID nameUUIDFromBytes(byte[] name) { + MessageDigest md; + try { + md = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException nsae) { + throw new InternalError("MD5 not supported"); + } + byte[] md5Bytes = md.digest(name); + md5Bytes[6] &= 0x0f; /* clear version */ + md5Bytes[6] |= 0x30; /* set to version 3 */ + md5Bytes[8] &= 0x3f; /* clear variant */ + md5Bytes[8] |= 0x80; /* set to IETF variant */ + return new UUID(md5Bytes); + } + + /** + * 根据 {@link #toString()} 方法中描述的字符串标准表示形式创建{@code UUID}。 + * + * @param name 指定 {@code UUID} 字符串 + * @return 具有指定值的 {@code UUID} + * @throws IllegalArgumentException 如果 name 与 {@link #toString} 中描述的字符串表示形式不符抛出此异常 + */ + public static UUID fromString(String name) { + String[] components = name.split("-"); + if (components.length != 5) { + throw new IllegalArgumentException("Invalid UUID string: " + name); + } + for (int i = 0; i < 5; i++) { + components[i] = "0x" + components[i]; + } + + long mostSigBits = Long.decode(components[0]).longValue(); + mostSigBits <<= 16; + mostSigBits |= Long.decode(components[1]).longValue(); + mostSigBits <<= 16; + mostSigBits |= Long.decode(components[2]).longValue(); + + long leastSigBits = Long.decode(components[3]).longValue(); + leastSigBits <<= 48; + leastSigBits |= Long.decode(components[4]).longValue(); + + return new UUID(mostSigBits, leastSigBits); + } + + /** + * 返回指定数字对应的hex值 + * + * @param val 值 + * @param digits 位 + * @return 值 + */ + private static String digits(long val, int digits) { + long hi = 1L << (digits * 4); + return Long.toHexString(hi | (val & (hi - 1))).substring(1); + } + + /** + * 获取{@link SecureRandom},类提供加密的强随机数生成器 (RNG) + * + * @return {@link SecureRandom} + */ + public static SecureRandom getSecureRandom() { + try { + return SecureRandom.getInstance("SHA1PRNG"); + } catch (NoSuchAlgorithmException e) { + throw new RuntimeException(""); + } + } + + /** + * 获取随机数生成器对象
+ * ThreadLocalRandom是JDK 7之后提供并发产生随机数,能够解决多个线程发生的竞争争夺。 + * + * @return {@link ThreadLocalRandom} + */ + public static ThreadLocalRandom getRandom() { + return ThreadLocalRandom.current(); + } + + /** + * 返回此 UUID 的 128 位值中的最低有效 64 位。 + * + * @return 此 UUID 的 128 位值中的最低有效 64 位。 + */ + public long getLeastSignificantBits() { + return leastSigBits; + } + + /** + * 返回此 UUID 的 128 位值中的最高有效 64 位。 + * + * @return 此 UUID 的 128 位值中最高有效 64 位。 + */ + public long getMostSignificantBits() { + return mostSigBits; + } + + /** + * 与此 {@code UUID} 相关联的版本号. 版本号描述此 {@code UUID} 是如何生成的。 + *

+ * 版本号具有以下含意: + *

    + *
  • 1 基于时间的 UUID + *
  • 2 DCE 安全 UUID + *
  • 3 基于名称的 UUID + *
  • 4 随机生成的 UUID + *
+ * + * @return 此 {@code UUID} 的版本号 + */ + public int version() { + // Version is bits masked by 0x000000000000F000 in MS long + return (int) ((mostSigBits >> 12) & 0x0f); + } + + /** + * 与此 {@code UUID} 相关联的变体号。变体号描述 {@code UUID} 的布局。 + *

+ * 变体号具有以下含意: + *

    + *
  • 0 为 NCS 向后兼容保留 + *
  • 2 IETF RFC 4122(Leach-Salz), 用于此类 + *
  • 6 保留,微软向后兼容 + *
  • 7 保留供以后定义使用 + *
+ * + * @return 此 {@code UUID} 相关联的变体号 + */ + public int variant() { + // This field is composed of a varying number of bits. + // 0 - - Reserved for NCS backward compatibility + // 1 0 - The IETF aka Leach-Salz variant (used by this class) + // 1 1 0 Reserved, Microsoft backward compatibility + // 1 1 1 Reserved for future definition. + return (int) ((leastSigBits >>> (64 - (leastSigBits >>> 62))) & (leastSigBits >> 63)); + } + + /** + * 与此 UUID 相关联的时间戳值。 + * + *

+ * 60 位的时间戳值根据此 {@code UUID} 的 time_low、time_mid 和 time_hi 字段构造。
+ * 所得到的时间戳以 100 毫微秒为单位,从 UTC(通用协调时间) 1582 年 10 月 15 日零时开始。 + * + *

+ * 时间戳值仅在在基于时间的 UUID(其 version 类型为 1)中才有意义。
+ * 如果此 {@code UUID} 不是基于时间的 UUID,则此方法抛出 UnsupportedOperationException。 + * + * @throws UnsupportedOperationException 如果此 {@code UUID} 不是 version 为 1 的 UUID。 + */ + public long timestamp() throws UnsupportedOperationException { + checkTimeBase(); + return (mostSigBits & 0x0FFFL) << 48// + | ((mostSigBits >> 16) & 0x0FFFFL) << 32// + | mostSigBits >>> 32; + } + + /** + * 与此 UUID 相关联的时钟序列值。 + * + *

+ * 14 位的时钟序列值根据此 UUID 的 clock_seq 字段构造。clock_seq 字段用于保证在基于时间的 UUID 中的时间唯一性。 + *

+ * {@code clockSequence} 值仅在基于时间的 UUID(其 version 类型为 1)中才有意义。 如果此 UUID 不是基于时间的 UUID,则此方法抛出 + * UnsupportedOperationException。 + * + * @return 此 {@code UUID} 的时钟序列 + * @throws UnsupportedOperationException 如果此 UUID 的 version 不为 1 + */ + public int clockSequence() throws UnsupportedOperationException { + checkTimeBase(); + return (int) ((leastSigBits & 0x3FFF000000000000L) >>> 48); + } + + /** + * 与此 UUID 相关的节点值。 + * + *

+ * 48 位的节点值根据此 UUID 的 node 字段构造。此字段旨在用于保存机器的 IEEE 802 地址,该地址用于生成此 UUID 以保证空间唯一性。 + *

+ * 节点值仅在基于时间的 UUID(其 version 类型为 1)中才有意义。
+ * 如果此 UUID 不是基于时间的 UUID,则此方法抛出 UnsupportedOperationException。 + * + * @return 此 {@code UUID} 的节点值 + * @throws UnsupportedOperationException 如果此 UUID 的 version 不为 1 + */ + public long node() throws UnsupportedOperationException { + checkTimeBase(); + return leastSigBits & 0x0000FFFFFFFFFFFFL; + } + + /** + * 返回此{@code UUID} 的字符串表现形式。 + * + *

+ * UUID 的字符串表示形式由此 BNF 描述: + * + *

+     * {@code
+     * UUID                   = ----
+     * time_low               = 4*
+     * time_mid               = 2*
+     * time_high_and_version  = 2*
+     * variant_and_sequence   = 2*
+     * node                   = 6*
+     * hexOctet               = 
+     * hexDigit               = [0-9a-fA-F]
+     * }
+     * 
+ * + * + * + * @return 此{@code UUID} 的字符串表现形式 + * @see #toString(boolean) + */ + @Override + public String toString() { + return toString(false); + } + + /** + * 返回此{@code UUID} 的字符串表现形式。 + * + *

+ * UUID 的字符串表示形式由此 BNF 描述: + * + *

+     * {@code
+     * UUID                   = ----
+     * time_low               = 4*
+     * time_mid               = 2*
+     * time_high_and_version  = 2*
+     * variant_and_sequence   = 2*
+     * node                   = 6*
+     * hexOctet               = 
+     * hexDigit               = [0-9a-fA-F]
+     * }
+     * 
+ * + * + * + * @param isSimple 是否简单模式,简单模式为不带'-'的UUID字符串 + * @return 此{@code UUID} 的字符串表现形式 + */ + public String toString(boolean isSimple) { + final StringBuilder builder = new StringBuilder(isSimple ? 32 : 36); + // time_low + builder.append(digits(mostSigBits >> 32, 8)); + if (!isSimple) { + builder.append('-'); + } + // time_mid + builder.append(digits(mostSigBits >> 16, 4)); + if (!isSimple) { + builder.append('-'); + } + // time_high_and_version + builder.append(digits(mostSigBits, 4)); + if (!isSimple) { + builder.append('-'); + } + // variant_and_sequence + builder.append(digits(leastSigBits >> 48, 4)); + if (!isSimple) { + builder.append('-'); + } + // node + builder.append(digits(leastSigBits, 12)); + + return builder.toString(); + } + + // Comparison Operations + + /** + * 返回此 UUID 的哈希码。 + * + * @return UUID 的哈希码值。 + */ + @Override + public int hashCode() { + long hilo = mostSigBits ^ leastSigBits; + return ((int) (hilo >> 32)) ^ (int) hilo; + } + + // ------------------------------------------------------------------------------------------------------------------- + // Private method start + + /** + * 将此对象与指定对象比较。 + *

+ * 当且仅当参数不为 {@code null}、而是一个 UUID 对象、具有与此 UUID 相同的 varriant、包含相同的值(每一位均相同)时,结果才为 {@code true}。 + * + * @param obj 要与之比较的对象 + * @return 如果对象相同,则返回 {@code true};否则返回 {@code false} + */ + @Override + public boolean equals(Object obj) { + if ((null == obj) || (obj.getClass() != UUID.class)) { + return false; + } + UUID id = (UUID) obj; + return (mostSigBits == id.mostSigBits && leastSigBits == id.leastSigBits); + } + + /** + * 将此 UUID 与指定的 UUID 比较。 + * + *

+ * 如果两个 UUID 不同,且第一个 UUID 的最高有效字段大于第二个 UUID 的对应字段,则第一个 UUID 大于第二个 UUID。 + * + * @param val 与此 UUID 比较的 UUID + * @return 在此 UUID 小于、等于或大于 val 时,分别返回 -1、0 或 1。 + */ + @Override + public int compareTo(UUID val) { + // The ordering is intentionally set up so that the UUIDs + // can simply be numerically compared as two numbers + return (this.mostSigBits < val.mostSigBits ? -1 : // + (this.mostSigBits > val.mostSigBits ? 1 : // + (this.leastSigBits < val.leastSigBits ? -1 : // + (this.leastSigBits > val.leastSigBits ? 1 : // + 0)))); + } + + /** + * 检查是否为time-based版本UUID + */ + private void checkTimeBase() { + if (version() != 1) { + throw new UnsupportedOperationException("Not a time-based UUID"); + } + } + + /** + * SecureRandom 的单例 + */ + private static class Holder { + static final SecureRandom numberGenerator = getSecureRandom(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MapMailMergeDataSource.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MapMailMergeDataSource.java new file mode 100644 index 00000000..aef2d8ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MapMailMergeDataSource.java @@ -0,0 +1,91 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.word; + +import com.aspose.words.IMailMergeDataSource; +import com.aspose.words.ref.Ref; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class MapMailMergeDataSource implements IMailMergeDataSource { + + private final List> dataList; + + private int index; + + /** + * word模板中的«TableStart:tableName»«TableEnd:tableName»对应 + */ + private String tableName = null; + + /** + * @param dataList 数据集 + * @param tableName 与模板中的Name对应 + */ + public MapMailMergeDataSource(List> dataList, String tableName) { + this.dataList = dataList; + this.tableName = tableName; + index = -1; + } + + /** + * @param data 单个数据集 + * @param tableName 与模板中的Name对应 + */ + public MapMailMergeDataSource(Map data, String tableName) { + this.dataList = new ArrayList<>(); + this.dataList.add(data); + this.tableName = tableName; + index = -1; + } + + /** + * 获取结果集总数 + * + * @return + */ + private int getCount() { + return this.dataList.size(); + } + + @Override + public IMailMergeDataSource getChildDataSource(String arg0) + throws Exception { + return null; + } + + @Override + public String getTableName() throws Exception { + return this.tableName; + } + + /** + * 实现接口 + * 获取当前index指向数据行的数据 + * 将数据存入args数组中即可 + * + * @return ***返回false则不绑定数据*** + */ + @Override + public boolean getValue(String key, Ref args) throws Exception { + if (index < 0 || index >= this.getCount()) { + return false; + } + if (args != null) { + args.set(this.dataList.get(index).get(key)); + return true; + } else { + return false; + } + } + + /** + * 实现接口 + * 判断是否还有下一条记录 + */ + @Override + public boolean moveNext() throws Exception { + index += 1; + return index < this.getCount(); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MergeDataSource.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MergeDataSource.java new file mode 100644 index 00000000..71f5a5cd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/MergeDataSource.java @@ -0,0 +1,47 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.word; + +import com.aspose.words.Document; +import com.aspose.words.MailMerge; + +import java.util.List; +import java.util.Map; + +public class MergeDataSource { + + /** + * word模板普通数据填充 + * @param name + * @param value + * @param modelPath + * @return + * @throws Exception + */ + public Document load(String[] name, Object[] value, String modelPath) throws Exception { + Document doc = new Document(modelPath); + // 这里可以做特殊字段处理(如:图片插入、字符对应的特殊符号[https://wenku.baidu.com/view/81b41244336c1eb91a375dcb.html]) +// DocumentBuilder builder = new DocumentBuilder(doc); +// builder.moveToMergeField(key); +// builder.insertImage((BufferedImage) value); + MailMerge merge = doc.getMailMerge(); + merge.execute(name, value); + return doc; + } + + + /** + * word模板里有集合的表格填充 + * @param name + * @param value + * @param modelPath + * @param dataList + * @return + * @throws Exception + */ + public Document load(String[] name, Object[] value, String modelPath, List> dataList, String tableName) throws Exception { + Document doc = new Document(modelPath); + MailMerge merge = doc.getMailMerge(); + merge.execute(name, value); + merge.executeWithRegions(new MapMailMergeDataSource(dataList, tableName)); + return doc; + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/WordUtil.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/WordUtil.java new file mode 100644 index 00000000..245a514b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/word/WordUtil.java @@ -0,0 +1,300 @@ +package com.jiuyv.sptcc.agile.dataservice.utils.word; + +import com.aspose.words.Shape; +import com.aspose.words.*; +import com.jiuyv.sptcc.agile.dataservice.utils.LogPrintUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.awt.*; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; +import java.io.InputStream; +import java.nio.charset.StandardCharsets; +import java.util.List; +import java.util.Map; + +public final class WordUtil { + + private static final Logger log = LoggerFactory.getLogger(WordUtil.class); + private WordUtil() {} + private static volatile WordUtil instance; + + public static WordUtil getInstance() { + if(instance == null) { + synchronized (WordUtil.class) { + if(instance == null) { + instance = new WordUtil(); + } + } + } + return instance; + } + + /** + * 去除水印 + */ + static { + String license = + "\n" + + " \n" + + " \n" + + " Aspose.Cells for Java\n" + + " Aspose.Words for Java\n" + + " Aspose.Slides for Java\n" + + " \n" + + " Enterprise\n" + + " 20991231\n" + + " 20991231\n" + + " 8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7\n" + + " \n" + + " datax\n" + + ""; + try { + new License().setLicense(new ByteArrayInputStream(license.getBytes(StandardCharsets.UTF_8))); + } catch (Exception e) { + LogPrintUtil.logError(log,"去除水印报错",e); + } + } + + /** + * 获取文档 + * + * @param fileName 模板文件 F:\模板.docx + * @return + * @throws Exception + */ + public Document getDocument(String fileName) throws Exception { + return new Document(fileName); + } + + /** + * 获取文档 + * + * @param inputStream 模板文件输入流 + * @return + * @throws Exception + */ + public Document getDocument(InputStream inputStream) throws Exception { + return new Document(inputStream); + } + + /** + * 普通数据模板 返回缓冲输入流 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @return 缓冲输入流 供controller层下载 + * @throws Exception + */ + public ByteArrayInputStream fillWordData(String[] name, Object[] value, String modelPath) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + doc.save(bos, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + return new ByteArrayInputStream(bos.toByteArray()); + } + + /** + * 普通数据模板 直接保存到指定位置 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @param destPath 保存文件 F:\测试.docx + * @throws Exception + */ + public void fillWordData(String[] name, Object[] value, String modelPath, String destPath) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath); + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } + + /** + * 带集合的数据模板 返回缓冲输入流 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @param dataList 集合数据 + * @param tableName 集合名称 + * @throws Exception + */ + public ByteArrayInputStream fillWordListData(String[] name, Object[] value, String modelPath, List> dataList, String tableName) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath, dataList, tableName); + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + doc.save(bos, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + return new ByteArrayInputStream(bos.toByteArray()); + } + + /** + * 带集合的数据模板 直接保存到指定位置 + * + * @param name + * @param value + * @param modelPath 模板文件 F:\模板.docx + * @param destPath 保存文件 F:\测试.docx + * @param dataList 集合数据 + * @param tableName 集合名称 + * @throws Exception + */ + public void fillWordListData(String[] name, Object[] value, String modelPath, String destPath, List> dataList, String tableName) throws Exception { + Document doc = new MergeDataSource().load(name, value, modelPath, dataList, tableName); + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } + + /** + * word转pdf + * @param srcPath 文件路径 F:\\test\\审批流提交.docx + * @param destPath 目标路径 F:\\test\\20200420.pdf + * @throws Exception + */ + public void word2pdf(String srcPath, String destPath) throws Exception { + // 转换开始前时间 + long old = System.currentTimeMillis(); + // 要转换的word文档的路径 + Document doc = new Document(srcPath); + // 全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF, EPUB, XPS, SWF 相互转换 + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.PDF)); + // 转换结束后时间 + long now = System.currentTimeMillis(); + log.info("共耗时:{}毫秒",(now-old)); + } + + /** + * 创建空文档 + * + * @param destPath 文件路径 F:\\test\\审批流提交.docx + * @return + */ + public void createWord(String destPath) throws Exception { + Document doc = new Document(); + doc.save(destPath, SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } + + /** + * 加水印方法 + * + * @param doc word文件流 + * @param watermarkText 水印内容 + */ + public void insertWatermarkText(Document doc, String watermarkText) throws Exception { + Shape watermark = new Shape(doc, ShapeType.TEXT_PLAIN_TEXT); + watermark.setName("WaterMark"); + watermark.getTextPath().setText(watermarkText); + watermark.getTextPath().setFontFamily("Arial"); + watermark.setWidth(500); + watermark.setHeight(100); + watermark.setRotation(-40); + watermark.getFill().setColor(Color.GRAY); + watermark.setStrokeColor(Color.GRAY); + watermark.setRelativeHorizontalPosition(RelativeHorizontalPosition.PAGE); + watermark.setRelativeVerticalPosition(RelativeVerticalPosition.PAGE); + watermark.setWrapType(WrapType.NONE); + watermark.setVerticalAlignment(VerticalAlignment.CENTER); + watermark.setHorizontalAlignment(HorizontalAlignment.CENTER); + Paragraph watermarkPara = new Paragraph(doc); + watermarkPara.appendChild(watermark); + for (Section sect : doc.getSections()) { + insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_PRIMARY); + insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_FIRST); + insertWatermarkIntoHeader(watermarkPara, sect, HeaderFooterType.HEADER_EVEN); + } + } + + private void insertWatermarkIntoHeader(Paragraph watermarkPara, Section sect, int headerType) { + HeaderFooter header = sect.getHeadersFooters().getByHeaderFooterType(headerType); + if (header == null) { + header = new HeaderFooter(sect.getDocument(), headerType); + sect.getHeadersFooters().add(header); + } + header.appendChild(watermarkPara.deepClone(true)); + } + + public static void main(String[] args) throws Exception { + /** + * private static volatile WordUtil instance; + * + * public static WordUtil getInstance() { + * if(instance == null) { + * synchronized (WordUtil.class) { + * if(instance == null) { + * instance = new WordUtil(); + * } + * } + * } + * return instance; + * } + */ +// Map map = new HashMap<>(); +// map.put("companyName", "测试"); +// map.put("totalSalary", new BigDecimal("12.34")); +// List> list = new ArrayList<>(); +// Map map1 = new HashMap<>(); +// map1.put("id", "1"); +// map1.put("name", "测试1"); +// map1.put("age", 12); +// map1.put("sex", "男"); +// map1.put("salary", new BigDecimal("5.0")); +// list.add(map1); +// Map map2 = new HashMap<>(); +// map2.put("id", "2"); +// map2.put("name", "测试2"); +// map2.put("age", 14); +// map2.put("sex", "女"); +// map2.put("salary", new BigDecimal("7.34")); +// list.add(map2); +// List objects1 = new ArrayList<>(); +// List objects2 = new ArrayList<>(); +// for(Map.Entry entry : map.entrySet()){ +// objects1.add(entry.getKey()); +// objects2.add(entry.getValue()); +// } +// WordUtil.getInstance().fillWordListData(objects1.toArray(new String[objects1.size()]), objects2.toArray(new Object[objects2.size()]), "F:\\test\\模板.docx", "F:\\test\\123.docx", list, "workerList"); +// WordUtil.getInstance().word2pdf("F:\\test.docx", "F:\\20200420.pdf"); +// +// // 用户表(子表) TableStart:UserList TableEnd:UserList +// DataTable userTable = new DataTable("UserList"); +// userTable.getColumns().add("id"); +// userTable.getColumns().add("name"); +// userTable.getColumns().add("age"); +// userTable.getColumns().add("sex"); +// userTable.getColumns().add("salary"); +// for (int i = 1; i < 3; i++) { +// DataRow row = userTable.newRow(); +// row.set(0, i); +// row.set(1, "name" + i); +// row.set(2, "age" + i); +// row.set(3, "sex" + i); +// row.set(4, "salary" + i); +// userTable.getRows().add(row); +// } +// // 分数表(子表) TableStart:ScoreList TableEnd:ScoreList +// DataTable scoreTable = new DataTable("ScoreList"); +// scoreTable.getColumns().add("id"); +// scoreTable.getColumns().add("uid"); +// scoreTable.getColumns().add("score"); +// for (int i = 1; i < 3; i++) { +// DataRow row = scoreTable.newRow(); +// row.set(0, i); +// row.set(1, i); +// row.set(2, 10*i); +// scoreTable.getRows().add(row); +// } +// // 提供数据源 +// DataSet dataSet = new DataSet(); +// dataSet.getTables().add(userTable); +// dataSet.getTables().add(scoreTable); +// DataRelation dataRelation = new DataRelation("UserScoreRelation", userTable.getColumns().get("id"), scoreTable.getColumns().get("uid")); +// dataSet.getRelations().add(dataRelation); +// // 合并模版 +// Document doc = new Document("F:\\test.docx"); +// //提供数据源 +// String[] fieldNames = new String[] {"name", "address"}; +// Object[] fieldValues = new Object[] {"张三", "陕西咸阳"}; +// //合并模版,相当于页面的渲染 +// MailMerge mailMerge = doc.getMailMerge(); +// mailMerge.execute(fieldNames, fieldValues); +// mailMerge.executeWithRegions(dataSet); +// doc.save("F:\\test_r.docx", SaveOptions.createSaveOptions(SaveFormat.DOCX)); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/application-default.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/application-default.yml new file mode 100644 index 00000000..6fdc0e25 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/application-default.yml @@ -0,0 +1,57 @@ +server: + port: 18090 +spring: + # 服务模块 + devtools: + restart: + # 热部署开关 + enabled: true + datasource: + driver-class-name: org.postgresql.Driver + url: jdbc:postgresql://172.16.12.105:5432/keliubao?useUnicode=true&characterEncoding=utf8&useSSL=false + username: postgres + password: postgres + + mvc: + pathmatch: + matching-strategy: ANT_PATH_MATCHER + + +api: + test: + # 测试次数 + num: 10 + # 毫秒, + avgTime: 3000 + # api接口文档模板 + +agile: + config: + # 默认90%匹配率,如果当天的小于该值,短信告警 + posRatePoint: 0.9 + +org: + expire: + interval: + ## 机构告警时间,‘,’号分隔 + date: 30,15,3 + +sftp: + host: 172.16.12.108 + port: 22 + username: flink + password: flink123 + work-paths: /sftp + session-connect-timeout: 2000 + channel-connect-timeout: 1000 + strict-host-key-checking: no + pool: + max-idle: 8 + min-idle: 0 + max-wait-millis: 10000 + max-total: 10 + sdk: + path: /sftp/sdk/sss.jar +logging: + level: + root: debug diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/application-prd.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/application-prd.yml new file mode 100644 index 00000000..07d07eda --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/application-prd.yml @@ -0,0 +1,55 @@ +server: + port: 18090 +spring: + # 服务模块 + devtools: + restart: + # 热部署开关 + enabled: true + datasource: + driver-class-name: org.postgresql.Driver + url: jdbc:postgresql://10.10.241.226:5432/keliubao?useUnicode=true&characterEncoding=utf8&useSSL=false + username: keliubao + password: keliubao + hikari: + minimum-idle: 5 # 最小空闲连接数量 + idle-timeout: 180000 # 空闲连接存活最大时间,默认600000(10分钟) + maximum-pool-size: 10 # 连接池最大连接数,默认是10 + connection-timeout: 30000 # 数据库连接超时时间,默认30秒,即30000 + max-lifetime: 1800000 # 此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟 + + +api: + test: + num: 10 + # 毫秒, + avgTime: 3000 + +agile: + config: + # 默认90%匹配率,如果当天的小于该值,短信告警 + posRatePoint: 0.9 + +org: + expire: + interval: + ## 机构告警时间,‘,’号分隔 + date: 30,15,3 + + +sftp: + host: 10.10.241.209 + port: 22 + username: sptcc + password: sptcc123 + work-paths: /home + session-connect-timeout: 2000 + channel-connect-timeout: 1000 + strict-host-key-checking: no + pool: + max-idle: 8 + min-idle: 0 + max-wait-millis: 10000 + max-total: 10 + sdk: + path: /home/sptcc/sysfile/console-2023-07/de70f251cecc44789978edf80aa0c5aa.jar \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/application.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/application.yml new file mode 100644 index 00000000..c20b70ec --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/application.yml @@ -0,0 +1,13 @@ +mybatis: + typeAliasesPackage: com.jiuyv.sptcc.agile.dataservice.dao.entity.** + mapperLocations: classpath*:mapper/**/*.xml + configLocation: classpath:mybatis/mybatis-config.xml + +pagehelper: + helper-dialect: postgresql + reasonable: true + support-methods-arguments: true + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/bootstrap.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/bootstrap.yml new file mode 100644 index 00000000..b1033469 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/bootstrap.yml @@ -0,0 +1,31 @@ +spring: + application: + name: agile-data-service + cloud: + config: + discovery: + service-id: CONFIG-SERVICE #告诉当前客户端 统一配置中心的服务端服务id + enabled: true #开启客户端,根据服务id到注册中心获取配置信息 + label: # 指定分支 + name: ${spring.application.name} # 指定应用名称 + profile: dev # 指定激活环境 + devtools: + restart: + enabled: true +# 配置eureka客户端信息 +eureka: + instance: + appname: ${spring.application.name} + lease-expiration-duration-in-seconds: 90 + lease-renewal-interval-in-seconds: 10 + prefer-ip-address: true + instance-id: ${spring.cloud.client.ip-address}:${server.port} + metadata-map: + user.name: ${spring.security.user.name} + user.password: ${spring.security.user.password} + client: + enabled: true + register-with-eureka: true + fetch-registry: true + service-url: + defaultZone: http://172.16.12.109:8761/eureka/ diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/logback-boot.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/logback-boot.xml new file mode 100644 index 00000000..6f78d025 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/logback-boot.xml @@ -0,0 +1,96 @@ + + + + + + + + + + System.out + + %d{HH:mm:ss.SSS} %X{spanId:-} %X{traceId:-} [%thread] %-5level %logger{36} - %msg%n + UTF-8 + + + + + ${LOG_HOME}/${APP_NAME}.log + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log.zip + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %X{traceId:-} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %X{traceId:-} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + 日志文件输出的文件名 + ${JSON_LOG_HOME}/${APP_NAME}.json.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + + + + { + "timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}", + "severity": "%level", + "service": "${APP_NAME:-}", + "trace": "%X{traceId:-}", + "span": "%X{spanId:-}", + "parent": "%X{X-B3-ParentSpanId:-}", + "exportable": "%X{X-Span-Export:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + + System.err + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/api/ApiLogMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/api/ApiLogMapper.xml new file mode 100644 index 00000000..a3dba855 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/api/ApiLogMapper.xml @@ -0,0 +1,146 @@ + + + + + + + + + + + + + + + + + + + + + + + api_log_id + , + status, + api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg + + + + ${alias} + . + api_log_id + , + ${alias} + . + status, + ${alias} + . + api_id, + ${alias} + . + caller_id, + ${alias} + . + caller_ip, + ${alias} + . + caller_url, + ${alias} + . + caller_params, + ${alias} + . + caller_date, + ${alias} + . + caller_size, + ${alias} + . + time, + ${alias} + . + msg + + + + insert into tbl_data_api_log + + api_log_id, + api_id, + caller_id, + caller_ip, + caller_url, + caller_params, + caller_date, + caller_size, + time, + status, + msg, + + + #{id}, + #{apiId}, + #{callerId}, + #{callerIp}, + #{callerUrl}, + #{callerParams}, + #{callerDate}, + #{callerSize}, + #{time}, + #{status}, + #{msg}, + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/api/ApiMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/api/ApiMapper.xml new file mode 100644 index 00000000..4266763f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/api/ApiMapper.xml @@ -0,0 +1,268 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + api_id + , + status, + create_by, + create_time, + create_dept, + update_by, + update_time, + api_name, api_version, api_url, remark, req_method, res_type, deny, + limit_json, config_json, req_json, res_json, + version_num, rec_token,api_code,api_type,source_id + + + + + + + + + insert into tbl_data_api + + api_id, + api_name, + api_version, + api_url, + req_method, + res_type, + deny, + limit_json, + config_json, + req_json, + res_json, + create_dept, + create_by, + status, + remark, + api_code, + api_type, + source_id, + rec_token, + create_time, + update_time + + + #{apiId}, + #{apiName}, + #{apiVersion}, + #{apiUrl}, + #{reqMethod}, + #{resType}, + #{deny}, + #{rateLimit}, + #{executeConfig}, + #{reqParams}, + #{resParams}, + #{createDept}, + #{createBy}, + #{status}, + #{remark}, + #{apiCode}, + #{apiType}, + #{sourceId}, + #{recToken}, + now(), + now() + + + + + update tbl_data_api + + version_num = version_num+1, + rec_token = #{recToken}, + api_name = #{apiName}, + api_version = #{apiVersion}, + api_url = #{apiUrl}, + req_method = #{reqMethod}, + res_type = #{resType}, + deny = #{deny}, + limit_json = #{rateLimit}, + config_json = #{executeConfig}, + req_json = #{reqParams}, + res_json = #{resParams}, + create_dept = #{createDept}, + update_by = #{updateBy}, + status = #{status}, + remark = #{remark}, + api_code = #{apiCode}, + api_type = #{apiType}, + source_id = #{sourceId}, + update_time = now() + + where api_id = #{apiId} + AND rec_token = #{params.recToken} + + + + update tbl_data_api + set version_num = version_num+1, + del_flag = '1', + update_by = #{updateBy}, + update_time = now(), + rec_token = #{recToken} + where api_id = #{apiId} + AND del_flag = '0' + AND rec_token = #{params.recToken} + + + + api_id,status, create_by,create_time,create_dept,update_by,update_time, + api_name, api_version, api_url, remark, req_method, res_type, deny, limit_json, config_json, req_json, res_json, + version_num, rec_token,api_type,api_code,source_id + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/api/MetadataSourceMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/api/MetadataSourceMapper.xml new file mode 100644 index 00000000..262a7763 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/api/MetadataSourceMapper.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + source_id, + status, + create_by, + create_time, + create_dept, + update_by, + update_time, + remark, + db_type, source_name, is_sync,db_schema, + version_num, rec_token + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/base/SysBaseMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/base/SysBaseMapper.xml new file mode 100644 index 00000000..76733304 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/base/SysBaseMapper.xml @@ -0,0 +1,11 @@ + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgApiAuthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgApiAuthMapper.xml new file mode 100644 index 00000000..adb8c50e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgApiAuthMapper.xml @@ -0,0 +1,103 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + insert into tbl_org_api_auth(org_no, api_id) + values (#{orgNo}, #{apiId}) + + + + insert into tbl_org_api_auth(org_no, api_id) + values + + (#{entity.orgNo}, #{entity.apiId}) + + + + + insert into tbl_org_api_auth(org_no, api_id) + values + + (#{entity.orgNo}, #{entity.apiId}) + + on duplicate key update + org_no = values(org_no), + api_id = values(api_id) + + + + + + delete from tbl_org_api_auth + where org_no = #{value} + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgConfigMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgConfigMapper.xml new file mode 100644 index 00000000..f6ccfe4d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgConfigMapper.xml @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + config_id,org_no,config_key,config_desc,config_value,version_num,rec_token,create_by,create_time, + update_by,update_time,del_flag,status + + + + insert into tbl_org_config + + config_id, + org_no, + config_key, + config_desc, + config_value, + del_flag, + create_by, + status, + create_time, + update_time + + + #{configId}, + #{orgNo}, + #{configKey}, + #{configDesc}, + #{configValue}, + #{delFlag}, + #{createBy}, + #{status}, + now(), + now() + + + + + update tbl_org_config + + version_num = version_num+1, + rec_token = #{recToken}, + org_no = #{orgNo}, + config_key = #{configKey}, + config_desc = #{configDesc}, + config_value = #{configValue}, + del_flag = #{delFlag}, + create_by = #{createBy}, + status = #{status}, + update_by = #{updateBy}, + update_time = now() + + where config_id = #{configId} + AND rec_token = #{params.recToken} + + + + update tbl_org_config set del_flag = '1' where config_id = #{configId} + + + + delete from tbl_org_config where org_no =#{orgNo} and config_key = #{configKey} + + + + delete from tbl_org_config where org_no =#{orgNo} + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgGatewayLogMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgGatewayLogMapper.xml new file mode 100644 index 00000000..7154314a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgGatewayLogMapper.xml @@ -0,0 +1,129 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + select log_id, req_no, api_id, api_name, api_code, status, req_time, req_ip, req_json, res_json, consuming_time, create_by_name, create_time, update_by_name, update_time, version_num, rec_token from tbl_org_gateway_log + + + + + + + + insert into tbl_org_gateway_log + + log_id, + req_no, + api_id, + api_name, + api_code, + status, + req_time, + req_ip, + req_json, + res_json, + consuming_time, + create_by_name, + create_time, + update_by_name, + update_time, + version_num, + rec_token, + + + #{logId}, + #{reqNo}, + #{apiId}, + #{apiName}, + #{apiCode}, + #{status}, + #{reqTime}, + #{reqIp}, + #{reqJson}, + #{resJson}, + #{consumingTime}, + #{createByName}, + #{createTime}, + #{updateByName}, + #{updateTime}, + #{versionNum}, + #{recToken}, + + + + + update tbl_org_gateway_log + + req_no = #{reqNo}, + api_id = #{apiId}, + api_name = #{apiName}, + api_code = #{apiCode}, + status = #{status}, + req_time = #{reqTime}, + req_ip = #{reqIp}, + req_json = #{reqJson}, + res_json = #{resJson}, + consuming_time = #{consumingTime}, + create_by_name = #{createByName}, + create_time = #{createTime}, + update_by_name = #{updateByName}, + update_time = #{updateTime}, + version_num = #{versionNum}, + rec_token = #{recToken}, + + where log_id = #{logId} + + + + delete from tbl_org_gateway_log where log_id = #{logId} + + + + delete from tbl_org_gateway_log where log_id in + + #{logId} + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgInfoMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgInfoMapper.xml new file mode 100644 index 00000000..c452f5ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgInfoMapper.xml @@ -0,0 +1,157 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag,ip,contract_tel,data_begin,data_end,member_id from tbl_org_info + + + + + + + + + + + + + + insert into tbl_org_info + + org_no, + org_name, + org_type, + org_desc, + salt, + encrypt, + start_time, + end_time, + status, + create_by, + del_flag, + ip, + member_id, + create_by_name, + rec_token, + contract_tel, + update_by_name, + create_time, + + + #{orgNo}, + #{orgName}, + #{orgType}, + #{orgDesc}, + #{salt}, + #{encrypt}, + #{startTime}, + #{endTime}, + #{status}, + #{createBy}, + #{delFlag}, + #{ip}, + #{memberId}, + #{updateByName}, + #{recToken}, + #{contractTel}, + #{createByName}, + now(), + + + + + update tbl_org_info + + version_num = version_num+1, + rec_token = #{recToken}, + org_name = #{orgName}, + org_type = #{orgType}, + org_desc = #{orgDesc}, + salt = #{salt}, + encrypt = #{encrypt}, + start_time = #{startTime}, + end_time = #{endTime}, + status = #{status}, + update_by = #{updateBy}, + update_by_name = #{updateByName}, + del_flag = #{delFlag}, + ip = #{ip}, + member_id = #{memberId}, + contract_tel = #{contractTel}, + update_time = now(), + + where org_no = #{orgNo} + AND rec_token = #{params.recToken} + + + + update tbl_org_info + set version_num = version_num+1, + del_flag = '1', + update_by = #{updateBy}, + update_by_name = #{updateByName}, + rec_token = #{recToken}, + update_time = now() + where org_no = #{orgNo} + AND del_flag ='0' + AND rec_token = #{params.recToken} + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgStatisticsMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgStatisticsMapper.xml new file mode 100644 index 00000000..cf72cca0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/org/OrgStatisticsMapper.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + + + + + + select id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag from tbl_org_statistics + + + + update tbl_org_statistics + set success_total = success_total+#{successTotal,jdbcType=INTEGER}, + fail_total = fail_total+#{failTotal,jdbcType=INTEGER}, + version_num =version_num+1 + where id = #{id} + + + + + + + + insert into tbl_org_statistics + + id, + org_no, + org_name, + api_id, + success_total, + fail_total, + api_name, + create_by, + del_flag, + create_time, + update_time + + + #{id}, + #{orgNo}, + #{orgName}, + #{apiId}, + #{successTotal}, + #{failTotal}, + #{apiName}, + #{createBy}, + #{delFlag}, + now(), + now() + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineInfoMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineInfoMapper.xml new file mode 100644 index 00000000..07eed233 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineInfoMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + select line_name, line_code, line_no from tbl_prd_base_line + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineMetricDayMapper.xml new file mode 100644 index 00000000..fae2dd11 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineMetricDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineMetricHourMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineMetricHourMapper.xml new file mode 100644 index 00000000..596e3099 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineMetricHourMapper.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + select line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_metric_hour + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineMetricMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineMetricMonthMapper.xml new file mode 100644 index 00000000..139c3898 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineMetricMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id from tbl_prd_line_metric_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationInfoMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationInfoMapper.xml new file mode 100644 index 00000000..b96dc191 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationInfoMapper.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + select line_code, line_name, up, levels, level_name, line_no from tbl_prd_base_line_station + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationMetricDayMapper.xml new file mode 100644 index 00000000..dd55c1fd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationMetricDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_station_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationMetricHourMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationMetricHourMapper.xml new file mode 100644 index 00000000..73918149 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationMetricHourMapper.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id from tbl_prd_line_station_metric_hour + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationMetricMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationMetricMonthMapper.xml new file mode 100644 index 00000000..ce962b05 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationMetricMonthMapper.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id from tbl_prd_line_station_metric_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationTransDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationTransDayMapper.xml new file mode 100644 index 00000000..a336a631 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationTransDayMapper.xml @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_line_station_trans_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationTransHourMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationTransHourMapper.xml new file mode 100644 index 00000000..37a3d8f5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationTransHourMapper.xml @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_line_station_trans_hour + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationTransMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationTransMonthMapper.xml new file mode 100644 index 00000000..be59c5bf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/LineStationTransMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id from tbl_prd_line_station_trans_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/RouteMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/RouteMetricDayMapper.xml new file mode 100644 index 00000000..b9003ed9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/RouteMetricDayMapper.xml @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, license_plate, driver_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id from tbl_prd_route_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricDayMapper.xml new file mode 100644 index 00000000..1339abcf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_metric_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricMonthMapper.xml new file mode 100644 index 00000000..67402e57 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqMetricMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_metric_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqTransDayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqTransDayMapper.xml new file mode 100644 index 00000000..2a558c46 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqTransDayMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_trans_day + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqTransMonthMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqTransMonthMapper.xml new file mode 100644 index 00000000..e329c857 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/prd/StationFreqTransMonthMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + select line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id from tbl_prd_station_freq_trans_month + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/CentimeDelayMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/CentimeDelayMapper.xml new file mode 100644 index 00000000..323f9012 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/CentimeDelayMapper.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + select id, time_range, delay_count, txn_date, create_time from tbl_qa_centime_delay + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/PosMatchRateMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/PosMatchRateMapper.xml new file mode 100644 index 00000000..8e5d9bec --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/PosMatchRateMapper.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + select id, tran_num, match_num, match_rate, txn_date, create_time from tbl_qa_pos_match_rate + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/RouteDailyCountMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/RouteDailyCountMapper.xml new file mode 100644 index 00000000..53eb9946 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/RouteDailyCountMapper.xml @@ -0,0 +1,36 @@ + + + + + + + + + + + + + + + select id, company_name, route_count, txn_date, company_code, create_time from tbl_qa_route_daily_count + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/RouteMissMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/RouteMissMapper.xml new file mode 100644 index 00000000..0e35fa88 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/RouteMissMapper.xml @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + select id, miss_rate, txn_date, route_count, bus_stop_count, create_time from tbl_qa_route_miss + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/RouteTurnoverTimeMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/RouteTurnoverTimeMapper.xml new file mode 100644 index 00000000..23ab638b --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/RouteTurnoverTimeMapper.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + select id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time from tbl_qa_route_turnover_time + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/StationMissMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/StationMissMapper.xml new file mode 100644 index 00000000..6ec4ce83 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/StationMissMapper.xml @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, miss_rate,create_time from tbl_qa_station_miss + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/VehicleDailyCountMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/VehicleDailyCountMapper.xml new file mode 100644 index 00000000..e71bb790 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/quality/VehicleDailyCountMapper.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + select id, company_code, company_name, vehicle_count, txn_date, create_time from tbl_qa_vehicle_daily_count + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/sftp/SyncRecordMapper.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/sftp/SyncRecordMapper.xml new file mode 100644 index 00000000..4a95016c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mapper/sftp/SyncRecordMapper.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + select id, path, table_name, count, txn_date, create_time, data_status from tbl_prd_sync_record + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mybatis/mybatis-config.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mybatis/mybatis-config.xml new file mode 100644 index 00000000..21aa61ea --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/mybatis/mybatis-config.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/templates/api_1.0.0.docx b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/templates/api_1.0.0.docx new file mode 100644 index 00000000..8acba393 Binary files /dev/null and b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/templates/api_1.0.0.docx differ diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/templates/api_1.0.1.docx b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/templates/api_1.0.1.docx new file mode 100644 index 00000000..51e247a5 Binary files /dev/null and b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/main/resources/templates/api_1.0.1.docx differ diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/BaseApplicationTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/BaseApplicationTest.java new file mode 100644 index 00000000..415668e1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/BaseApplicationTest.java @@ -0,0 +1,42 @@ +package com.jiuyv.sptcc.agile.test; + +import com.fasterxml.jackson.databind.ObjectMapper; +import com.jiuyv.sptcc.agile.dataservice.AgileDataApplication; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.MockitoAnnotations; +import org.mockito.junit.MockitoJUnitRunner; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.ActiveProfiles; +import org.springframework.test.context.junit.jupiter.SpringExtension; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.web.servlet.MockMvc; + +import javax.annotation.Resource; + +/** + * Controller接口测试继承该接口(需要验证的) + * 通用登录的实现以及header处理 + * @author zhouliang + * + */ +@SpringBootTest(classes = AgileDataApplication.class) +@AutoConfigureMockMvc +@ActiveProfiles("test")//测试配置 +@ExtendWith(SpringExtension.class) +public abstract class BaseApplicationTest { + @Resource + protected MockMvc mockMvc; + + @Resource + protected ObjectMapper objectMapper; + + @BeforeEach + public void initMocks() throws Exception { + MockitoAnnotations.openMocks(this); + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiControllerTest.java new file mode 100644 index 00000000..34c570a5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiControllerTest.java @@ -0,0 +1,839 @@ +package com.jiuyv.sptcc.agile.test.controller.api; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class ApiControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(ApiControllerTest.class); + + @Test + public void getApiPrefixPath() throws Exception { + + //GET http://localhost/public/agile-data/agileApi/getPrefixPath + + String url="/public/agile-data/agileApi/getPrefixPath"; + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content("")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andReturn(); + + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R res= JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() {}); + assert res != null; + assertEquals("success",res.getCode()); + // log.info(mvcResult.getResponse().getContentAsString()); + + + url = "/public/agile-data/agileApi/getDate"; + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("id",""+100)) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R result= JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() {}); + assert result != null; + assertEquals("success",result.getCode()); + // log.info(mvcResult.getResponse().getContentAsString()); + + + url = "/public/agile-data/agileApi/sourceList?sourceId =35"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("sourceId",35+"")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R> list = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert list != null; + assertEquals("success",list.getCode()); + + url = "/public/agile-data/agileApi/page"; + log.info("分页查询,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + ApiPageRequest pageRequest = new ApiPageRequest(); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(pageRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R> page = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert page != null; + assertEquals("success",page.getCode()); + + + url = "/public/agile-data/agileApi/page"; + log.info("分页查询,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + + + } + + + + @Test + void add() throws Exception { + + String url = "/public/agile-data/agileApi/page"; + log.info("新增api,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + String json = "{\n" + + " \"apiName\": \"ceode\",\n" + + " \"apiVersion\": \"1\",\n" + + " \"apiUrl\": \"s/d/e/f\",\n" + + " \"reqMethod\": \"POST\",\n" + + " \"resType\": \"JSON\",\n" + + " \"rateLimit\": {\n" + + " \"enable\": \"1\",\n" + + " \"times\": 5,\n" + + " \"seconds\": 60\n" + + " },\n" + + " \"status\": \"1\",\n" + + " \"remark\": \"测试数据\",\n" + + " \"executeConfig\": {\n" + + " \"configType\": \"1\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"fieldParams\": [\n" + + " {\n" + + " \"columnId\": \"267981\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_code\",\n" + + " \"columnComment\": \"API code\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"23\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267982\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_id\",\n" + + " \"columnComment\": \"主键ID\",\n" + + " \"columnKey\": \"1\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"1\",\n" + + " \"dataType\": \"int8\",\n" + + " \"dataPrecision\": \"64\",\n" + + " \"dataScale\": \"0\",\n" + + " \"dataDefault\": \"nextval('seq_data_market_api'::regclass)\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\",\n" + + " \"reqable\": \"1\",\n" + + " \"resable\": \"1\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267983\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_name\",\n" + + " \"columnComment\": \"API名称\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"9\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"255\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267984\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_type\",\n" + + " \"columnComment\": \"类型:1敏捷API 2系统API\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"24\",\n" + + " \"dataType\": \"bpchar\",\n" + + " \"dataLength\": \"1\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267985\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_url\",\n" + + " \"columnComment\": \"API路径\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"11\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"255\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267986\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"api_version\",\n" + + " \"columnComment\": \"API版本\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"10\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"60\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267987\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"config_json\",\n" + + " \"columnComment\": \"执行配置\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"16\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267988\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"create_by\",\n" + + " \"columnComment\": \"创建人\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"3\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267989\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"create_dept\",\n" + + " \"columnComment\": \"创建人所属部门\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"5\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267990\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"create_time\",\n" + + " \"columnComment\": \"创建日期\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"4\",\n" + + " \"dataType\": \"timestamp\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267991\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"del_flag\",\n" + + " \"columnComment\": \"【删除标志】0代表存在 2代表删除\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"21\",\n" + + " \"dataType\": \"bpchar\",\n" + + " \"dataLength\": \"1\",\n" + + " \"dataDefault\": \"'0'::bpchar\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267992\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"deny\",\n" + + " \"columnComment\": \"IP黑名单多个,隔开\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"14\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"2000\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267993\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"limit_json\",\n" + + " \"columnComment\": \"限流配置\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"15\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267994\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"rec_token\",\n" + + " \"columnComment\": \"随机码\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"20\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"100\",\n" + + " \"dataDefault\": \"'1'::character varying\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267995\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"remark\",\n" + + " \"columnComment\": \"备注\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"8\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"1000\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267996\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"req_json\",\n" + + " \"columnComment\": \"请求参数\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"17\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267997\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"req_method\",\n" + + " \"columnComment\": \"请求方式\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"12\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"10\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267998\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"res_json\",\n" + + " \"columnComment\": \"返回参数\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"18\",\n" + + " \"dataType\": \"text\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"267999\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"res_type\",\n" + + " \"columnComment\": \"返回格式\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"13\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"10\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268000\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"source_id\",\n" + + " \"columnComment\": \"数据源id\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"25\",\n" + + " \"dataType\": \"int8\",\n" + + " \"dataPrecision\": \"64\",\n" + + " \"dataScale\": \"0\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268001\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"status\",\n" + + " \"columnComment\": \"状态(1待注册,2已注册,3已发布)\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"2\",\n" + + " \"dataType\": \"bpchar\",\n" + + " \"dataLength\": \"1\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268002\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"update_by\",\n" + + " \"columnComment\": \"更新人\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"6\",\n" + + " \"dataType\": \"varchar\",\n" + + " \"dataLength\": \"50\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268003\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"update_time\",\n" + + " \"columnComment\": \"更新日期\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"1\",\n" + + " \"columnPosition\": \"7\",\n" + + " \"dataType\": \"timestamp\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " },\n" + + " {\n" + + " \"columnId\": \"268004\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableId\": \"10188\",\n" + + " \"columnName\": \"version_num\",\n" + + " \"columnComment\": \"版本号\",\n" + + " \"columnKey\": \"0\",\n" + + " \"columnNullable\": \"0\",\n" + + " \"columnPosition\": \"19\",\n" + + " \"dataType\": \"int4\",\n" + + " \"dataPrecision\": \"32\",\n" + + " \"dataScale\": \"0\",\n" + + " \"dataDefault\": \"0\",\n" + + " \"sourceName\": \"public\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"【API信息表】\"\n" + + " }\n" + + " ],\n" + + " \"table\": {\n" + + " \"tableId\": \"10188\",\n" + + " \"sourceId\": \"47\",\n" + + " \"tableName\": \"tbl_data_api\",\n" + + " \"tableComment\": \"api信息表\",\n" + + " \"sourceName\": \"public\"\n" + + " }\n" + + " },\n" + + " \"reqParams\": [\n" + + " {\n" + + " \"paramName\": \"api_id\",\n" + + " \"paramComment\": \"主键ID\",\n" + + " \"nullable\": \"0\",\n" + + " \"paramType\": \"Number\",\n" + + " \"whereType\": \"=\",\n" + + " \"exampleValue\": \"95\",\n" + + " \"defaultValue\": \"95\"\n" + + " }\n" + + " ],\n" + + " \"resParams\": [\n" + + " {\n" + + " \"fieldName\": \"api_id\",\n" + + " \"fieldComment\": \"主键ID\",\n" + + " \"dataType\": \"int8\",\n" + + " \"exampleValue\": \"95\",\n" + + " \"cipherType\": \"2\",\n" + + " \"cryptType\": \"1\"\n" + + " }\n" + + " ],\n" + + " \"apiCode\": \"eweq\"\n" + + "}"; + ApiAddRequest apiAddRequest = JacksonUtil.string2Obj(json, ApiAddRequest.class); + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiAddRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R add = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert add != null; + assertEquals("success",add.getCode()); + + + url = "/public/agile-data/agileApi/update"; + log.info("更新失败,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiUpdateRequest apiUpdateRequest = JacksonUtil.string2Obj(json, ApiUpdateRequest.class); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiUpdateRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R update = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert update != null; + assertEquals("input_not_valid",update.getCode()); + + + url = "/public/agile-data/agileApi/page"; + log.info("分页查询,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + ApiPageRequest pageRequest = new ApiPageRequest(); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(pageRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + + log.info("返回对象string{}",mvcResult.getResponse().getContentAsString()); + //如果不是JSON的自行修改 + R> page = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert page != null; + assertEquals("success",page.getCode()); + + + + url = "/public/agile-data/agileApi/update"; + log.info("更新成功,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiResponse apiResponse = page.getData().getRows().get(0); + ApiUpdateRequest updateRequest = new ApiUpdateRequest(); + BeanUtils.copyProperties(apiResponse,updateRequest); + updateRequest.setUserId(1L); + updateRequest.setUserName("admin"); + updateRequest.setVersionNum(apiResponse.getVersionNum()); + updateRequest.setRecToken(apiResponse.getRecToken()); + updateRequest.setReqParams(apiAddRequest.getReqParams()); + updateRequest.setResParams(apiAddRequest.getResParams()); + updateRequest.setExecuteConfig(apiAddRequest.getExecuteConfig()); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(updateRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R update2 = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert update2 != null; + assertEquals("success",update2.getCode()); + + + + + url = "/public/agile-data/agileApi/delete"; + log.info("删除,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiDelRequest del = new ApiDelRequest(); + del.setApiId(149L); + del.setRecToken("93d8933353"); + del.setUserName("admin"); + del.setUserId(1L); + del.setDeptId("1"); + del.setNickName("操作人"); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(del))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R delRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert delRes != null; + assertEquals("success",delRes.getCode()); + + + + + url = "/public/agile-data/agileApi/copy"; + log.info("复制,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiCopyRequest copyRequest = new ApiCopyRequest(); + apiResponse = page.getData().getRows().get(1); + copyRequest.setApiId(apiResponse.getApiId()); + copyRequest.setUserName(apiResponse.getCreateBy()); + copyRequest.setUserId(1L); + copyRequest.setDeptId("1"); + copyRequest.setNickName("操作人"); + BeanUtils.copyProperties(apiResponse,del); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(copyRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R copyRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert copyRes != null; + assertEquals("success",copyRes.getCode()); + + + + + } + + + @Test + void register() throws Exception { + String url = "/public/agile-data/agileApi/register"; + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiStatusRequest statusRequest = new ApiStatusRequest(); + statusRequest.setApiId(150L); + statusRequest.setUserName("admin"); + statusRequest.setUserId(1L); + statusRequest.setDeptId("1"); + statusRequest.setNickName("操作人"); + statusRequest.setRecToken("6d44618b77"); + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(statusRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + + // 138 + url = "/public/agile-data/agileApi/release"; + log.info("发布,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + ApiStatusRequest request = new ApiStatusRequest(); + request.setApiId(138L); + request.setRecToken("9499ca728a"); + request.setUserName("admin"); + request.setUserId(1L); + request.setDeptId("1"); + request.setNickName("操作人"); + + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(request))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + + + url = "/public/agile-data/agileApi/cancel"; + log.info("注销,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + request.setApiId(137L); + request.setRecToken("2dec96f64e"); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(request))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + // + url = "/public/agile-data/agileApi/down"; + log.info("下架,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + request.setApiId(128L); + request.setRecToken("a1e7a3654e"); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(request))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + } + + @Test + void file() throws Exception { + //下载文档 + String url ="/public/agile-data/agileApi/down"; + + url = "/public/agile-data/agileApi/tree"; + log.info("注销,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content("")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R> tree = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert tree != null; + assertEquals("success",tree.getCode()); + + //下载文档 + url = "/public/agile-data/agileApi/word/down?id=150"; + log.info("下载文档,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content("")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andReturn(); + int status = mvcResult.getResponse().getStatus(); + log.info("返回对象string{}",status); + assertEquals(200,status); + + } + + + + + + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiLogControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiLogControllerTest.java new file mode 100644 index 00000000..698e7dd0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/api/ApiLogControllerTest.java @@ -0,0 +1,71 @@ +package com.jiuyv.sptcc.agile.test.controller.api; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiLogRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.ApiLogResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class ApiLogControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(ApiControllerTest.class); + + + + @Test + void test() throws Exception { + + String url = "/public/agile-data/apilog/page"; + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}",url); + ApiLogRequest apiLogRequest = new ApiLogRequest(); + apiLogRequest.setPageSize(0); + apiLogRequest.setPageNum(100); + apiLogRequest.setOrderBy("update_time"); + apiLogRequest.setDesc(false); + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiLogRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success",statusRes.getCode()); + + + url = "/public/agile-data/apilog/detail"; + mvcResult=mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("id","10001")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + + R response = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() {}); + assert response != null; + assertEquals("success",response.getCode()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/RequestTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/RequestTest.java new file mode 100644 index 00000000..022c1c8d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/RequestTest.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.test.controller.dto; + +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.platform.commons.util.ReflectionUtils; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +public class RequestTest extends BaseApplicationTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.request"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/ResponseTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/ResponseTest.java new file mode 100644 index 00000000..c57bb626 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/dto/ResponseTest.java @@ -0,0 +1,54 @@ +package com.jiuyv.sptcc.agile.test.controller.dto; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.junit.platform.commons.util.ReflectionUtils; +import org.springframework.test.context.junit.jupiter.SpringExtension; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +@ExtendWith(SpringExtension.class) +public class ResponseTest { + + @Test + void dtoTest() { + String packageName = "com.jiuyv.sptcc.agile.dataservice.dto.response"; + try { + invoke(packageName); + } catch (Exception e) { + Assertions.fail(); + } + } + + private void invoke(String packageName) throws InstantiationException, IllegalAccessException, InvocationTargetException { + List> classList = ReflectionUtils.findAllClassesInPackage(packageName, aClass -> true, s -> !s.endsWith("Test")); + + for (Class aClass : classList) { + Method[] methods = aClass.getDeclaredMethods(); + Object o = aClass.newInstance(); + for (Method method : methods) { + String name = method.getName(); + if (name.startsWith("get")) { + method.invoke(o); + } else if (name.startsWith("set")) { + Class[] parameterTypes = method.getParameterTypes(); + Object[] objects = Arrays.stream(parameterTypes).map(p -> { + try { + return p.newInstance(); + } catch (ReflectiveOperationException e) { + return null; + } + }).toArray(); + method.invoke(o, objects); + } + } + } + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/BatchControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/BatchControllerTest.java new file mode 100644 index 00000000..2552b52c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/BatchControllerTest.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.batch.DateVo; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class BatchControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(BatchControllerTest.class); + + @Test + void test() throws Exception { + + + String url = "/public/agile-data/orgInfo/expire"; + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("date", "2023-12-22")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + + url = "/public/agile-data/orgInfo/down"; + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("date", "2023-12-25")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R res = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert res != null; + assertEquals("success", res.getCode()); + + + url = "/public/agile-data/pos/posRate"; + + DateVo dt = new DateVo(); + dt.setDate("2023-05-15"); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(dt))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R result = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert result != null; + assertEquals("success", result.getCode()); + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgAuthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgAuthControllerTest.java new file mode 100644 index 00000000..c3c5aec1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgAuthControllerTest.java @@ -0,0 +1,124 @@ +package com.jiuyv.sptcc.agile.test.controller.org; +import java.util.Date; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgAuthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgAuthControllerTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/auth/info"; + OrgAuthReq orgAuthReq = new OrgAuthReq(); + orgAuthReq.setKeyVersion("001"); + orgAuthReq.setOrgCode("JGH000000000000134"); + orgAuthReq.setSubOrgCode(""); + orgAuthReq.setRequsetTime(new Date()); + orgAuthReq.setApiCode("stationFreqTransDay"); + + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgAuthReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert statusRes != null; + assertEquals("api_not_right", statusRes.getCode()); + + + orgAuthReq.setOrgCode("JGH000000000000084"); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgAuthReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void auth() throws Exception { + String url = "/public/agile-data/auth/auth"; + OrgAuthRequest orgAuthRequest = new OrgAuthRequest(); + orgAuthRequest.setOrgCode("JGH000000000000084"); + orgAuthRequest.setApiCode("download"); + orgAuthRequest.setIp("130.252.102.154"); + orgAuthRequest.setRequsetTime(new Date()); + orgAuthRequest.setDataDate(new Date()); + + log.info("注册,请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgAuthRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + url = "/public/agile-data/auth/getKey"; + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgCode","JGH000000000000084")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R result = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert result != null; + assertEquals("success", result.getCode()); + + } + + + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgConfigControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgConfigControllerTest.java new file mode 100644 index 00000000..13afe164 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgConfigControllerTest.java @@ -0,0 +1,196 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigAddRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigEditRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgConfigQueryRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.List; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgConfigControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgConfigControllerTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/orgConfig/list"; + OrgConfigQueryRequest orgConfigQueryRequest = new OrgConfigQueryRequest(); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgConfigQueryRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> response = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + url = "/public/agile-data/orgConfig/detail"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("configId", response.getData().getRows().get(0).getConfigId() + "")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void edit() throws Exception { + + String url = "/public/agile-data/orgConfig/add"; + String json = "{\"configId\":\"161\",\"orgNo\":\"JGH000000000000084\",\"configKey\":\"downLoadRigth\",\"configDesc\":\"站点常乘客日指标\",\"configValue\":\"stationFreqMonth\",\"versionNum\":\"0\",\"recToken\":\"1\",\"delFlag\":\"0\",\"status\":\"0\",\"orgName\":\"机构一\"}"; + OrgConfigAddRequest add = JacksonUtil.string2Obj(json, OrgConfigAddRequest.class); + if (add == null) { + add = new OrgConfigAddRequest(); + } + add.setUserId(1L); + add.setUserName("admin"); + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(add))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R response = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + url = "/public/agile-data/orgConfig/list"; + OrgConfigQueryRequest orgConfigQueryRequest = new OrgConfigQueryRequest(); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgConfigQueryRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> page = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert page != null; + assertEquals("success", page.getCode()); + + List rows = page.getData().getRows(); + + OrgConfigResponse edit = rows.get(0); + url = "/public/agile-data/orgConfig/edit"; + OrgConfigEditRequest orgConfigEditRequest = new OrgConfigEditRequest(); + orgConfigEditRequest.setConfigId(edit.getConfigId()); + orgConfigEditRequest.setRecToken(edit.getRecToken()); + orgConfigEditRequest.setStatus(edit.getStatus()); + orgConfigEditRequest.setOrgNo(edit.getOrgNo()); + orgConfigEditRequest.setConfigKey(edit.getConfigKey()); + orgConfigEditRequest.setConfigDesc(edit.getConfigDesc()); + orgConfigEditRequest.setConfigValue(edit.getConfigValue()); + orgConfigEditRequest.setDelFlag(edit.getDelFlag()); + orgConfigEditRequest.setStatus(edit.getStatus()); + orgConfigEditRequest.setUserName("admin"); + orgConfigEditRequest.setUserId(1L); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgConfigEditRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R editRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert editRes != null; + assertEquals("success", editRes.getCode()); + + + url = "/public/agile-data/orgConfig/delete"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("configId",""+edit.getConfigId())) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R delete = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert delete != null; + assertEquals("success", delete.getCode()); + + + + url = "/public/agile-data/orgConfig/getOrgCfg"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgCode","JGH000000000000084")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> getOrgCfg = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert getOrgCfg != null; + assertEquals("success", getOrgCfg.getCode()); + + } + +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgInfoControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgInfoControllerTest.java new file mode 100644 index 00000000..7a38814c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgInfoControllerTest.java @@ -0,0 +1,284 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.console.OrgApiAuthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.*; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgApiAuthVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgConfigResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgInfoResp; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.List; +import java.util.stream.Collectors; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgInfoControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgInfoControllerTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/orgInfo/list"; + OrgInfoQueryReq orgInfoQueryReq = new OrgInfoQueryReq(); + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoQueryReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> response = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + url = "/public/agile-data/orgInfo/detail"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgNo", "JGH000000000000156")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + + List rows = response.getData().getRows(); + OrgInfoResp orgInfoResp = rows.get(0); + + url = "/public/agile-data/orgInfo/add"; + OrgInfoAddReq orgInfoAddReq = new OrgInfoAddReq(); + orgInfoAddReq.setMemberId(orgInfoResp.getMemberId()); + orgInfoAddReq.setOrgName(orgInfoResp.getOrgName()); + orgInfoAddReq.setOrgType(orgInfoResp.getOrgType()); + orgInfoAddReq.setOrgDesc(orgInfoResp.getOrgDesc()); + orgInfoAddReq.setSalt(orgInfoResp.getSalt()); + orgInfoAddReq.setEncrypt(orgInfoResp.getEncrypt()); + orgInfoAddReq.setStartTime(orgInfoResp.getStartTime()); + orgInfoAddReq.setEndTime(orgInfoResp.getEndTime()); + orgInfoAddReq.setIp(orgInfoResp.getIp()); + orgInfoAddReq.setContractTel(orgInfoResp.getContractTel()); + orgInfoAddReq.setRemark("备注"); + orgInfoAddReq.setStatus(orgInfoResp.getStatus()); + orgInfoAddReq.setUserName("admin"); + orgInfoAddReq.setUserId(1L); + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoAddReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R add = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert add != null; + assertEquals("success", add.getCode()); + + + log.info("==============={}=============", "停用服务"); + url = "/public/agile-data/orgInfo/stop"; + OrgInfoResp orgInfoResp1 = rows.stream().filter(x -> "JGH000000000000158".equals(x.getOrgNo())).collect(Collectors.toList()).get(0); + OrgInfoStatusReq orgInfoStatusReq = new OrgInfoStatusReq(); + orgInfoStatusReq.setOrgNo(orgInfoResp1.getOrgNo()); + orgInfoStatusReq.setRecToken(orgInfoResp1.getRecToken()); + orgInfoStatusReq.setUserName("system"); + orgInfoStatusReq.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoStatusReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R stop = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert stop != null; + assertEquals("success", stop.getCode()); + + + log.info("==============={}=============", "修改服务"); + url = "/public/agile-data/orgInfo/edit"; + OrgInfoEditReq editReq = new OrgInfoEditReq(); + orgInfoResp = rows.get(1); + editReq.setOrgNo(orgInfoResp.getOrgNo()); + editReq.setRecToken(orgInfoResp.getRecToken()); + editReq.setMemberId(orgInfoResp.getMemberId()); + editReq.setOrgName(orgInfoResp.getOrgName()); + editReq.setOrgType(orgInfoResp.getOrgType()); + editReq.setOrgDesc(orgInfoResp.getOrgDesc()); + editReq.setSalt(orgInfoResp.getSalt()); + editReq.setEncrypt(orgInfoResp.getEncrypt()); + editReq.setStartTime(orgInfoResp.getStartTime()); + editReq.setEndTime(orgInfoResp.getEndTime()); + editReq.setIp(orgInfoResp.getIp()); + editReq.setContractTel(orgInfoResp.getContractTel()); + editReq.setRemark("修改"); + editReq.setStatus(orgInfoResp.getStatus()); + editReq.setUserName("system"); + editReq.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(editReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R edit = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert edit != null; + assertEquals("update_failed", edit.getCode()); + + + log.info("==============={}=============", "启用服务"); + orgInfoStatusReq.setOrgNo("JGH000000000000155"); + orgInfoStatusReq.setRecToken("d0ef53603f"); + url = "/public/agile-data/orgInfo/run"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgInfoStatusReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R run = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert run != null; + assertEquals("success", run.getCode()); + + log.info("==============={}=============", "删除服务"); + url = "/public/agile-data/orgInfo/remove"; + OrgDelReq orgDelReq = new OrgDelReq(); + orgDelReq.setOrgNo("JGH000000000000157"); + orgDelReq.setRecToken("12c6936f71"); + orgDelReq.setUserName("system"); + orgDelReq.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgDelReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R del = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert del != null; + assertEquals("success", del.getCode()); + + + log.info("==============={}=============", "授权服务"); + url = "/public/agile-data/orgInfo/auth"; + OrgApiAuthRequest orgApiAuthRequest = new OrgApiAuthRequest(); + orgApiAuthRequest.setOrgNo("JGH000000000000134"); + orgApiAuthRequest.setApiIds(new Long[]{116L,119L}); + orgApiAuthRequest.setUserName("admin"); + orgApiAuthRequest.setUserId(1L); + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgApiAuthRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R auth = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert auth != null; + assertEquals("success", auth.getCode()); + + + + } + + + @Test + void other() throws Exception{ + String url = "/public/agile-data/orgInfo/key"; + + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + ) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R response = JacksonUtil.string2Obj(contentAsString, new TypeReference>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + log.info("==============={}=============", "授权列表"); + url = "/public/agile-data/orgInfo/auth/list"; + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .get(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .param("orgNo","JGH000000000000084")) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R auth = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + }); + assert auth != null; + assertEquals("success", auth.getCode()); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgStcsConsoleApiTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgStcsConsoleApiTest.java new file mode 100644 index 00000000..69675b83 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/org/OrgStcsConsoleApiTest.java @@ -0,0 +1,77 @@ +package com.jiuyv.sptcc.agile.test.controller.org; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgStatisticsQueryReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiStatisticsResponse; +import com.jiuyv.sptcc.agile.dataservice.dto.response.console.OrgStatisticsVo; +import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class OrgStcsConsoleApiTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(OrgStcsConsoleApiTest.class); + + @Test + void test() throws Exception { + + String url = "/public/agile-data/orgStcs/list"; + OrgStatisticsQueryReq orgStatisticsQueryReq = new OrgStatisticsQueryReq(); + log.info(">>>>>>>>>>>>>>>>>> {} <<<<<<<<<<<<<<<<<<<<", "接口统计列表"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(orgStatisticsQueryReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> response = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert response != null; + assertEquals("success", response.getCode()); + + + log.info(">>>>>>>>>>>>>>>>>> {} <<<<<<<<<<<<<<<<<<<<", "会员接口统计列表"); + url = "/public/agile-data/orgStcs/userApiStatistics"; + ApiUserRequest apiUserRequest = new ApiUserRequest(); + apiUserRequest.setMemberId("1"); + + mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiUserRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/portal/PortalControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/portal/PortalControllerTest.java new file mode 100644 index 00000000..2e936f89 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/portal/PortalControllerTest.java @@ -0,0 +1,74 @@ +package com.jiuyv.sptcc.agile.test.controller.portal; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.api.ApiUserRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class PortalControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(PortalControllerTest.class); + + @Test + void test() throws Exception { + + + String url = "/public/agile-data/agileApi/userApiList"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + ApiUserRequest apiUserRequest = new ApiUserRequest(); + apiUserRequest.setMemberId("1"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(apiUserRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + + + + // url = "/public/agile-data/pos/posRate"; + // + // DateVo dt = new DateVo(); + // dt.setDate("2023-05-15"); + // mvcResult = mockMvc.perform(MockMvcRequestBuilders + // .post(url) + // .contentType(MediaType.APPLICATION_JSON) + // .accept(MediaType.APPLICATION_JSON_UTF8) + // .content(objectMapper.writeValueAsBytes(dt))) + // .andExpect(MockMvcResultMatchers.status().isOk()) + // .andDo(MockMvcResultHandlers.print()) + // .andReturn(); + // contentAsString = mvcResult.getResponse().getContentAsString(); + // log.info("返回对象string{}", contentAsString); + // // 如果不是JSON的自行修改 + // R result = JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference>() { + // }); + // assert result != null; + // assertEquals("success", result.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricDayControllerTest.java new file mode 100644 index 00000000..3d7ada5d --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricDayControllerTest.java @@ -0,0 +1,84 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineMetricDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/lineDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineDayPageReq lineDayPageReq = new LineDayPageReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(lineDayPageReq))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/lineDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineDayReqRequest lineDayReqRequest = new LineDayReqRequest(); + lineDayReqRequest.setMetricDate(new Date()); + lineDayReqRequest.setOrgNo("001"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(lineDayReqRequest))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricHourControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricHourControllerTest.java new file mode 100644 index 00000000..28f626c9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricHourControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineHourPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineMetricHourControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineMetricHourControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/linHour/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineHourPageReq req = new LineHourPageReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/linHour/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineHourRequest req = new LineHourRequest(); + req.setMetricDate(new Date()); + req.setOrgNo("001"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricMonthControllerTest.java new file mode 100644 index 00000000..bbf007d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineMetricMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineDayPageReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineDayReqRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineMetricMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineMetricMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/linMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineMetricMonthReq req = new LineMetricMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/linMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + LineMonthRequest req = new LineMonthRequest(); + req.setMetricMonth(new Date()); + req.setOrgNo("001"); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricDayControllerTest.java new file mode 100644 index 00000000..b219ad93 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricDayControllerTest.java @@ -0,0 +1,89 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.LineMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationMetricDayControllerTest extends BaseApplicationTest { + + + private static final Logger log = LoggerFactory.getLogger(LineStationMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationMetricDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricDayReq req = new StationMetricDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationMetricDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationDayRequest req = new StationDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricHourControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricHourControllerTest.java new file mode 100644 index 00000000..cb86fe59 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricHourControllerTest.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationMetricHourControllerTest extends BaseApplicationTest { + + + private static final Logger log = LoggerFactory.getLogger(LineStationMetricHourControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationMetricHour/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricHourReq req = new StationMetricHourReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationMetricHour/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationHourRequest req = new StationHourRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricMonthControllerTest.java new file mode 100644 index 00000000..e042101f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationMetricMonthControllerTest.java @@ -0,0 +1,87 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationMetricMonthControllerTest extends BaseApplicationTest { + + + private static final Logger log = LoggerFactory.getLogger(LineStationMetricMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationMetricMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricMonthReq req = new StationMetricMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationMetricMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMonthRequest req = new StationMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransDayControllerTest.java new file mode 100644 index 00000000..8eb684b3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationTransDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineStationTransDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationTransDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransDayReq req = new StationTransDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationTransDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransDayRequest req = new StationTransDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransHourControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransHourControllerTest.java new file mode 100644 index 00000000..e641aa3a --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransHourControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationMetricHourReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransHourRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationTransHourControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineStationTransHourControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationTransHour/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMetricHourReq req = new StationMetricHourReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationTransHour/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransHourRequest req = new StationTransHourRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransMonthControllerTest.java new file mode 100644 index 00000000..361e11d3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/LineStationTransMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class LineStationTransMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(LineStationTransMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/StationTransMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransMonthReq req = new StationTransMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/StationTransMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationTransMonthRequest req = new StationTransMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/RouteMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/RouteMetricDayControllerTest.java new file mode 100644 index 00000000..3f4d4178 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/RouteMetricDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteMetricDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/routeMetricDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteMetricDayReq req = new RouteMetricDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/routeMetricDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteDayRequest req = new RouteDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricDayControllerTest.java new file mode 100644 index 00000000..fd7557b8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqMetricDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqMetricDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqMetricDayReq req = new StationFreqMetricDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqDayRequest req = new StationFreqDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricMonthControllerTest.java new file mode 100644 index 00000000..b7c44e01 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqMetricMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqMetricMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqMetricMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqMetricMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqMetricMonthReq req = new StationFreqMetricMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqMetricMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqMonthRequest req = new StationFreqMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransDayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransDayControllerTest.java new file mode 100644 index 00000000..7569fe7c --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransDayControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqTransDayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqTransDayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqTransDay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransDayReq req = new StationFreqTransDayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqTransDay/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransDayRequest req = new StationFreqTransDayRequest(); + req.setOrgNo("001"); + req.setMetricDate(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransMonthControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransMonthControllerTest.java new file mode 100644 index 00000000..fa95f203 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/prd/StationFreqTransMonthControllerTest.java @@ -0,0 +1,86 @@ +package com.jiuyv.sptcc.agile.test.controller.prd; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.RouteMetricDayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.StationFreqTransMonthReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.RouteDayRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.StationFreqTransMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationFreqTransMonthControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationFreqTransMonthControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/stationFreqTransMonth/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransMonthReq req = new StationFreqTransMonthReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } + + @Test + void page() throws Exception { + + + String url = "/public/agile-data/stationFreqTransMonth/page"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationFreqTransMonthRequest req = new StationFreqTransMonthRequest(); + req.setOrgNo("001"); + req.setMetricMonth(new Date()); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/CentimeDelayControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/CentimeDelayControllerTest.java new file mode 100644 index 00000000..64cacb1f --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/CentimeDelayControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class CentimeDelayControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(CentimeDelayControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/centimeDelay/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + CentimeDelayReq req = new CentimeDelayReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/PosMatchRateControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/PosMatchRateControllerTest.java new file mode 100644 index 00000000..63596013 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/PosMatchRateControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.CentimeDelayReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class PosMatchRateControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(PosMatchRateControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/posMatchRate/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + PosMatchRateReq req = new PosMatchRateReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteDailyCountControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteDailyCountControllerTest.java new file mode 100644 index 00000000..99dad232 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteDailyCountControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.PosMatchRateReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteDailyCountControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteDailyCountControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/routeDailyCount/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteDailyReq req = new RouteDailyReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteMissControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteMissControllerTest.java new file mode 100644 index 00000000..e4f169c7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteMissControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteMissControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteMissControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/routeMiss/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteMissReq req = new RouteMissReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteTurnoverTimeControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteTurnoverTimeControllerTest.java new file mode 100644 index 00000000..9ecb0033 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/RouteTurnoverTimeControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class RouteTurnoverTimeControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(RouteTurnoverTimeControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/routeTurnover/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + RouteTurnoverReq req = new RouteTurnoverReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/StationMissControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/StationMissControllerTest.java new file mode 100644 index 00000000..1639a941 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/StationMissControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.RouteTurnoverReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class StationMissControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(StationMissControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/stationMiss/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + StationMissReq req = new StationMissReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/VehicleDailyCountControllerTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/VehicleDailyCountControllerTest.java new file mode 100644 index 00000000..9440a2c5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/controller/quality/VehicleDailyCountControllerTest.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.test.controller.quality; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.StationMissReq; +import com.jiuyv.sptcc.agile.dataservice.dto.request.quailty.VehicleDailyReq; +import com.jiuyv.sptcc.agile.dataservice.dto.response.api.DataApiResponse; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import com.jiuyv.sptcc.agile.test.controller.prd.LineStationTransDayControllerTest; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultHandlers; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +/** + * @author yulei + **/ +public class VehicleDailyCountControllerTest extends BaseApplicationTest { + + private static final Logger log = LoggerFactory.getLogger(VehicleDailyCountControllerTest.class); + + @Test + void list() throws Exception { + + + String url = "/public/agile-data/quality/vehicleDaily/list"; + log.info("请求地址:>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>{}", url); + VehicleDailyReq req = new VehicleDailyReq(); + + MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(req))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andDo(MockMvcResultHandlers.print()) + .andReturn(); + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}", contentAsString); + // 如果不是JSON的自行修改 + R> statusRes = JacksonUtil.string2Obj(contentAsString, new TypeReference>>() { + }); + assert statusRes != null; + assertEquals("success", statusRes.getCode()); + + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java new file mode 100644 index 00000000..2a7bd111 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java @@ -0,0 +1,98 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.util.Date; + +/** + * @author yulei + **/ +public class DateUtilsTest extends BaseApplicationTest { + + @Test + public void getDate(){ + String s = DateUtils.getDate(); + Assertions.assertNotNull(s); + } + + @Test + public void getTime(){ + String s = DateUtils.getTime(); + Assertions.assertNotNull(s); + } + + @Test + public void dateTimeNow(){ + String s = DateUtils.dateTimeNow(); + Assertions.assertNotNull(s); + } + + @Test + public void dateTimeNow2(){ + String s = DateUtils.dateTimeNow("YYYY_MM_DD"); + Assertions.assertNotNull(s); + } + + @Test + public void dateTime2(){ + String s = DateUtils.dateTime(new Date()); + Assertions.assertNotNull(s); + } + + @Test + public void parseDateToStr(){ + String s = DateUtils.parseDateToStr("YYYY",new Date()); + Assertions.assertNotNull(s); + } + + @Test + public void dateTime3(){ + Date date = DateUtils.dateTime("YYYY","2023"); + Assertions.assertNotNull(date); + } + + @Test + public void dateTime4(){ + Date date = DateUtils.dateTime(); + Assertions.assertNotNull(date); + } + + @Test + public void date(){ + Date s = DateUtils.date(); + Assertions.assertNotNull(s); + } + + @Test + public void parseDate(){ + Date s = DateUtils.parseDate("20240111"); + Assertions.assertNotNull(s); + } + + @Test + public void addDays(){ + Date s = DateUtils.addDays(new Date(),1); + Assertions.assertNotNull(s); + } + + @Test + public void getServerStartDate(){ + Date s = DateUtils.getServerStartDate(); + Assertions.assertNotNull(s); + } + + @Test + public void differentDaysByMillisecond(){ + int s = DateUtils.differentDaysByMillisecond(new Date(),new Date()); + Assertions.assertEquals(s,0); + } + + @Test + public void getDatePoor(){ + String s = DateUtils.getDatePoor(new Date(),new Date()); + Assertions.assertNotNull(s); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IPUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IPUtilTest.java new file mode 100644 index 00000000..49797de0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IPUtilTest.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.IPUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.mockito.Mockito; + +import javax.servlet.http.HttpServletRequest; +import java.net.SocketException; + +/** + * @author yulei + **/ +public class IPUtilTest extends BaseApplicationTest { + + @Test + public void getLocalIP() throws SocketException { + String localIP = IPUtil.getLocalIP(); + Assertions.assertNotNull(localIP); + } + + @Test + public void getIpAddr() { + HttpServletRequest request = Mockito.mock(HttpServletRequest.class); + + Mockito.when(request.getHeader("x-forwarded-for")).thenReturn("192.168.1.1"); + Mockito.when(request.getHeader("Proxy-Client-IP")).thenReturn(null); + Mockito.when(request.getHeader("WL-Proxy-Client-IP")).thenReturn("192.168.1.2"); + Mockito.when(request.getRemoteAddr()).thenReturn("127.0.0.1"); + String ipAddress = IPUtil.getIpAddr(request); + Assertions.assertNotNull(ipAddress); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IpWhiteCheckUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IpWhiteCheckUtilTest.java new file mode 100644 index 00000000..303eb9bd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/IpWhiteCheckUtilTest.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.IpWhiteCheckUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +/** + * @author yulei + **/ +public class IpWhiteCheckUtilTest extends BaseApplicationTest { + + @Test + public void getAvaliIpList(){ + boolean permited = IpWhiteCheckUtil.isPermited("172.16.12.14", "172.16.12.14;172.18.23.*"); + Assertions.assertEquals(true,permited); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/JacksonUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/JacksonUtilTest.java new file mode 100644 index 00000000..74bf5fdd --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/JacksonUtilTest.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.ObjectWriter; +import com.jiuyv.sptcc.agile.dataservice.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.mockito.Mock; +import org.mockito.Mockito; + +import java.io.File; +import java.io.IOException; +import java.util.Arrays; +import java.util.List; + +/** + * @author yulei + **/ +public class JacksonUtilTest extends BaseApplicationTest { + + @Mock + private static ObjectMapper OBJECT_MAPPER; + + @Mock + private static ObjectMapper OBJECT_MAPPER_SNAKE_CASE; + + @Mock + private static ObjectWriter OBJECT_WRITER; + + @Test + public void obj2String() throws JsonProcessingException { + Mockito.when(OBJECT_MAPPER.writeValueAsString("test")).thenReturn("\"test\""); + String result = JacksonUtil.obj2String("test"); + Assertions.assertEquals("test", result); + } + + @Test + public void obj2StringFieldSnakeCase() throws JsonProcessingException { + Object obj = new Object(); // Replace with your actual object + Mockito.when(OBJECT_MAPPER_SNAKE_CASE.writeValueAsString(obj)).thenReturn("{\"field_name\":\"value\"}"); + + String result = JacksonUtil.obj2StringFieldSnakeCase(obj); + + Assertions.assertEquals("{}", result); + } + + @Test + public void string2ObjFieldLowerCamelCase() throws JsonProcessingException { + String str = "{\"field_name\":\"value\"}"; + Object expectedResult = new Object(); // Replace with your actual expected object + Mockito.when(OBJECT_MAPPER_SNAKE_CASE.readValue(str, Object.class)).thenReturn(expectedResult); + + // 调用string2ObjFieldLowerCamelCase方法 + Object result = JacksonUtil.string2ObjFieldLowerCamelCase(str, Object.class); + + // 验证返回的对象是否符合预期 + Assertions.assertNotNull(result); + } + + @Test + public void string2ListFieldLowerCamelCase() throws JsonProcessingException { + String str = "[{\"field_name\":\"value1\"},{\"field_name\":\"value2\"}]"; + TypeReference> typeReference = new TypeReference>() {}; + List expectedResult = Arrays.asList(new Object(), new Object()); // Replace with your actual expected list + Mockito.when(OBJECT_MAPPER_SNAKE_CASE.readValue(str, typeReference)).thenReturn(expectedResult); + + // 调用string2ListFieldLowerCamelCase方法 + List result = JacksonUtil.string2ListFieldLowerCamelCase(str, typeReference); + + // 验证返回的列表是否符合预期 + Assertions.assertNotNull(result); + } + + @Test + public void obj2StringPretty() throws JsonProcessingException { + Object obj = new Object(); // Replace with your actual object + Mockito.when(OBJECT_MAPPER.writerWithDefaultPrettyPrinter()).thenReturn(OBJECT_WRITER); + Mockito.when(OBJECT_WRITER.writeValueAsString(obj)).thenReturn("\"pretty-printed-json\""); + + // 调用obj2StringPretty方法 + String result = JacksonUtil.obj2StringPretty(obj); + + // 验证返回的字符串是否符合预期 + Assertions.assertEquals("{ }", result); + } + + @Test + public void parseArray() throws JsonProcessingException { + Object[] arguments = new Object[]{"value1", "value2"}; + Mockito.when(OBJECT_MAPPER.writeValueAsString(arguments)).thenReturn("[\"value1\",\"value2\"]"); + + // 调用parseArray方法 + String result = JacksonUtil.parseArray(arguments); + + // 验证返回的字符串是否符合预期 + Assertions.assertEquals("[\"value1\",\"value2\"]", result); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/NamedParameterUtilTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/NamedParameterUtilTest.java new file mode 100644 index 00000000..923ed037 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/NamedParameterUtilTest.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.NamedParameterUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.ParsedSql; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.util.HashMap; +import java.util.LinkedHashMap; + +/** + * @author yulei + **/ +public class NamedParameterUtilTest extends BaseApplicationTest { + + @Test + public void parseSqlStatement(){ + ParsedSql parsedSql = NamedParameterUtil.parseSqlStatement("select name,age from stu"); + Assertions.assertNotNull(parsedSql); + } + + @Test + public void substituteNamedParams(){ + String s = NamedParameterUtil.substituteNamedParams(NamedParameterUtil.parseSqlStatement("select name,age from stu"),new HashMap<>()); + Assertions.assertNotNull(s); + } + + @Test + public void buildValueArray(){ + LinkedHashMap stringObjectLinkedHashMap = NamedParameterUtil.buildValueArray(NamedParameterUtil.parseSqlStatement("select name,age from stu"), new HashMap<>()); + Assertions.assertNotNull(stringObjectLinkedHashMap); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/UUIDTest.java b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/UUIDTest.java new file mode 100644 index 00000000..fc655975 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/UUIDTest.java @@ -0,0 +1,60 @@ +package com.jiuyv.sptcc.agile.test.utils; + +import com.jiuyv.sptcc.agile.dataservice.utils.uuid.UUID; +import com.jiuyv.sptcc.agile.test.BaseApplicationTest; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +import java.security.SecureRandom; +import java.util.concurrent.ThreadLocalRandom; + + +/** + * @author yulei + **/ +public class UUIDTest extends BaseApplicationTest { + + @Test + public void fastUUID(){ + UUID uuid = UUID.fastUUID(); + Assertions.assertNotNull(uuid); + } + + @Test + public void randomUUID(){ + UUID uuid = UUID.randomUUID(); + Assertions.assertNotNull(uuid); + } + + @Test + public void randomUUID2(){ + UUID uuid = UUID.randomUUID(true); + Assertions.assertNotNull(uuid); + } + + @Test + public void nameUUIDFromBytes(){ + byte[] b = new byte[2]; + b[1] = 'c'; + UUID uuid = UUID.nameUUIDFromBytes(b); + Assertions.assertNotNull(uuid); + } + + @Test + public void fromString(){ + UUID uuid = UUID.fromString("a-a-a-a-a"); + Assertions.assertNotNull(uuid); + } + + @Test + public void getSecureRandom(){ + SecureRandom secureRandom = UUID.getSecureRandom(); + Assertions.assertNotNull(secureRandom); + } + + @Test + public void getRandom(){ + ThreadLocalRandom random = UUID.getRandom(); + Assertions.assertNotNull(random); + } +} diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/application-test.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/application-test.yml new file mode 100644 index 00000000..b9c57dbf --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/application-test.yml @@ -0,0 +1,109 @@ +###### +##### svn自己的配置信息,都需要拿到本地来 +spring: + # 使用H2数据库 + datasource: + url: jdbc:h2:mem:testdb;DB_CLOSE_DELAY=FALSE;MODE=PostgreSQL + driver-class-name: org.h2.Driver + username: + password: + + config: + use-legacy-processing: true + cloud: + config: + # 不从远程拿配置文件 + enabled: false + sql: + init: + schema-locations: classpath:sql/schema.sql + data-locations: classpath:sql/data.sql + username: root + password: + mode: always + separator: ; + platform: h2 + encoding: utf-8 + +server: + shutdown: immediate +eureka: + client: + # 不注册 + enabled: false + +#### +#### svn的application配置 +ribbon: + eager-load: + enabled: true + OkToRetryOnAllOperation: false + ReadTimeout: 20000 + ConnectTimeout: 10000 + MaxAutoRetriesNextServer: 0 + MaxAutoRetries: 0 + +feign: + httpclient: + enabled: false + okhttp: + enabled: true + compression: + request: + enabled: true + response: + enabled: true + +management: + security: + enabled: false + metrics: + export: + prometheus: + enabled: true + endpoint: + health: + show-details: always + metrics: + enabled: true + prometheus: + enabled: true + pause: + enabled: true + restart: + enabled: true + shutdown: + enabled: true + endpoints: + web: + exposure: + include: '*' + +api: + test: + # 测试次数 + num: 10 + # 毫秒, + avgTime: 3000 + # api接口文档模板 + + +sftp: + host: 172.16.12.108 + port: 22 + username: flink + password: flink123 + work-paths: /sftp + session-connect-timeout: 2000 + channel-connect-timeout: 1000 + strict-host-key-checking: no + pool: + max-idle: 8 + min-idle: 0 + max-wait-millis: 10000 + max-total: 10 + sdk: + path: /sftp/sdk/sss.jar +logging: + level: + root: debug \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/bootstrap-test.yml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/bootstrap-test.yml new file mode 100644 index 00000000..0bda69c7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/bootstrap-test.yml @@ -0,0 +1,11 @@ +spring: + cloud: + config: + discovery: + enabled: false + enabled: false + +# 配置eureka客户端信息 +eureka: + client: + enabled: false diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/sql/data.sql b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/sql/data.sql new file mode 100644 index 00000000..587ea18e --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/sql/data.sql @@ -0,0 +1,2304 @@ +INSERT INTO seqno (nextval) VALUES (3045); + +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_waybill_js', 0, '1', 'SELECT * FROM pf_waybill_js where workdate=''{currDate} 00:00:00''', 'jsyHiveDs', 1, 'ods_route_schedule_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_up_down_site', 0, '1', 'SELECT * FROM pf_line_up_down_site where workdate=''{currDate}''', 'jsyHiveDs', 1, 'ods_route_station_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_info', 0, '1', 'SELECT * FROM pf_line_info where workdate=''{currDate}''', 'jsyHiveDs', 1, 'ods_route_path_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_gateway', 0, '1', 'SELECT * FROM pf_gateway where workdate=''{currDateSimple}''', 'jsyHiveDs', 1, 'ods_bus_stop_time_info_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user2', 0, '1', 'tbl_sys_user LIMIT 2000', 'klbPgDs', 1, 'tbl_sys_user_zltest', 'klbPgDs', 'delete from tbl_sys_user_zltest', '{user_id:user_id,version_num:version_num,rec_token:rec_token,dept_id:dept_id,user_name:user_name,nick_name:nick_name,user_type:user_type,email:email,phonenumber:phonenumber,sex:sex,avatar:avatar,password:password,status:status,del_flag:del_flag,login_ip:login_ip,login_date:login_date,is_locked:is_locked,login_error_count:login_error_count,last_login_error_time:last_login_error_time,create_by:create_by,create_time:create_time,update_by:update_by,update_time:update_time,remark:remark}', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_license_plate_pos', 0, '1', 'SELECT * FROM ods_monitor.license_plate_pos where txn_date=''{currDate}'' ', 'sjztHiveDs', 1, 'ods_license_plate_pos_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dws_product_consum_month', 0, '1', 'SELECT * FROM sptcc.dws_product_consum_month where month_name=''{currMonthSimple}'' ', 'sjztHiveDs', 1, 'ods_product_consum_month_{currMonthSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dwd_consum_trans', 0, '1', 'SELECT * FROM sptcc.dwd_consum_trans where txn_date=''{currDateSimple}'' ', 'sjztHiveDs', 1, 'ods_consum_trans_{currDateSimple}.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user3', 0, '1', 'SELECT * FROM dwd_consum_trans limit 100', 'klbHiveDs', 1, 'dwd_consum_trans_zltest.csv', 'klbHiveDs', 'true', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_line_day_count', 0, '1', 'SELECT * FROM agile.bus_line_day_count where txn_date=''{currDateSimple}'' ', 'sjztHiveDs', 1, 'tbl_index_bus_line_day_count', 'klbPgSjztDs', 'delete from tbl_index_bus_line_day_count where txn_date=''{currDateSimple}''', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_trans_day_count', 0, '1', 'SELECT * FROM agile.bus_trans_day_count where txn_date=''{currDateSimple}'' ', 'sjztHiveDs', 1, 'tbl_index_bus_trans_day_count', 'klbPgSjztDs', 'delete from tbl_index_bus_trans_day_count where txn_date=''{currDateSimple}''', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user', 0, '1', 'SELECT * FROM tbl_sys_user LIMIT 20000', 'klbPgDs', 1, 'tbl_sys_user-{datetime}.csv', 'csv', 'true', '{user_name:user_name,user_id:user_id,version_num:version_num,rec_token:rec_token,dept_id:dept_id}', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); +INSERT INTO tbl_batch_table_mapping (task_no, version_num, rec_token, remote_table_sql, remote_db_name, remote_days, local_table, local_db_name, local_pre_sql, mapping_json, remarks, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user4', 0, '1', 'SELECT * FROM dwd_consum_trans limit 10', 'klbHiveDs', 1, 'tbl_zltest', 'klbPgDs', '', '*', NULL, '00', '2023-07-26 11:08:08', NULL, NULL, NULL); + +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user3', 166, 'c94abdf6', '测试写入数据库', '2023-10-08 17:48:27.821', '2023-10-08 17:48:38.645', '10.82秒', '2023-10-08 17:48:27.821', '2023-08-30', 'finish', '00', '2023-10-08 17:48:38.645', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user', 70, 'db92a760', '测试写入文件', '2023-10-09 14:47:05.256', '2023-10-09 14:47:07.238', '1.98秒', '2023-10-09 14:47:05.256', '2023-07-24', 'finish', '00', '2023-10-09 14:47:07.238', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_line_day_count', 0, '1', '同步数据中台表(agile)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_bus_trans_day_count', 0, '1', '同步数据中台表(agile)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_gateway', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_info', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_waybill_js', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_JSYHIVE_pf_line_up_down_site', 0, '1', '同步久事云表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_own4', 0, '1', '同步数据中台表', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dws_product_consum_month', 0, '1', '同步数据中台表(sptcc)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_dwd_consum_trans', 0, '1', '同步数据中台表(sptcc)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('SYNC_SJZTHIVE_license_plate_pos', 0, '1', '同步数据中台表(ods_monitor)', NULL, NULL, NULL, NULL, NULL, 'end', '00', '2023-07-26 13:34:52', NULL, NULL, NULL); +INSERT INTO tbl_batch_task (task_no, version_num, rec_token, task_title, pre_start_date, pre_end_date, pre_total_time, curr_start_date, failure_conditions, bus_status, data_status, update_time, rsv1, rsv2, rsv3) VALUES ('TEST_KLBPG_sys_user2', 104, 'c3c02f41', '测试写入数据库', '2023-11-17 15:15:08.474', '2023-11-17 15:15:08.604', '0.13秒', '2023-11-17 15:15:08.474', '2023-08-28', 'finish', '00', '2023-11-17 15:15:08.604', NULL, NULL, NULL); + + +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (116, '3', 'admin', '2023-10-10 11:16:53', NULL, 'admin', '2023-10-10 11:16:53', '', '文件下载', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:date,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:fileType,nullable:0,paramComment:文件类型:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:文件流,dataType:String,exampleValue:xxxx,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'download', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (94, '1', 'yts', '2023-10-09 15:25:53', NULL, 'admin', '2023-10-10 15:37:55', '', '11111', '11', '/public/agile-data/api/v1.0.0/11111', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id FROM tbl_data_api}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '1a83932f41', '1', '11', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (95, '1', 'yts', '2023-10-09 16:10:09', NULL, 'admin', '2023-10-10 15:38:01', '', '11', '11111', '/public/agile-data/api/v1.0.0/111111', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:1,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:null},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code FROM tbl_data_api}', '[{paramName:api_code,nullable:0,paramComment:API code,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '6125bfd318', '1', '111111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (98, '3', 'admin', '2023-10-09 17:46:07', NULL, 'admin', '2023-10-09 17:46:07', '', '线路客流量-小时', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:14,exampleValue:2023-10-01,defaultValue:1},{paramName:companyCode,nullable:1,paramComment:运营公司编码,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fildName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'lineHour', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (100, '3', 'admin', '2023-10-09 17:51:33', NULL, 'admin', '2023-10-09 17:51:33', '', '站点客流量-小时', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:Long,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationHour', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (102, '3', 'admin', '2023-10-09 17:59:54', NULL, 'admin', '2023-10-09 17:59:54', '', '站点客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:4,exampleValue:2023-10,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricMonth,fieldComment:指标月份,dataType:Date,exampleValue:2023-10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (105, '3', 'admin', '2023-10-10 10:03:52', NULL, 'admin', '2023-10-10 10:03:52', '', '站点换乘客流量-小时', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:hour,nullable:0,paramComment:小时,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:metricHour,nullable:0,paramComment:指标小时,whereType:1,paramType:2,exampleValue:21,defaultValue:1},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationTransHour', '2', NULL); +-- INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (114, '3', 'admin', '2023-10-10 11:14:24', NULL, 'admin', '2023-10-10 11:14:24', '', '班次客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:licensePlate,fieldComment:车辆牌照,dataType:String,exampleValue:沪A 8888,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:driverCode,fieldComment:司机工号,dataType:String,exampleValue:10086,fieldAliasName:,cipherType:null,cryptType:null},{paramName:startStation,fieldComment:起点,dataType:String,exampleValue:xx,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:startTime,fieldComment:发车时间,dataType:Date,exampleValue:2023-10-01:12:00:00,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:endStation,fieldComment:终点,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{paramName:arrivalTime,fieldComment:到达时间,dataType:Date,exampleValue:2023-10-01:12:00:00,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:waybillType,fieldComment:路单类型,dataType:String,exampleValue:2,fieldAliasName:,cipherType:null,cryptType:null},{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0 '1', '0', 'routeDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (111, '3', 'admin', '2023-10-10 10:46:07', NULL, 'admin', '2023-10-10 10:46:07', '', '站点常乘客换乘客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqTransDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (90, '1', 'yts', '2023-10-09 14:22:49', NULL, 'admin', '2023-10-10 15:37:50', '', '11111', '11', '/public/agile-data/api/v1.0.0/11', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:1},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name, api_type FROM tbl_data_api}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_type,fieldComment:类型:1敏捷API 2系统API,dataType:bpchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 5, '36b14fb142', '1', '1111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (91, '1', 'yts', '2023-10-09 14:43:19', NULL, 'admin', '2023-10-10 15:38:05', '', '222', '22', '/public/agile-data/api/v1.0.0/v1.0.0/', 'GET', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id FROM tbl_data_api}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:1,paramType:1,exampleValue:22,defaultValue:22}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:22,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:22,fieldAliasName:null,cipherType:null,cryptType:null}]', 4, '5beaeb1a6c', '1', '22', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (118, '1', 'admin', '2023-10-10 16:23:35', NULL, 'admin', '2023-10-11 14:03:03', 'ss', 'wewq', 'qe', '/public/agile-data/api/v1.0.0/weq', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_name, api_id, api_code FROM tbl_data_api}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:3,paramType:1,exampleValue:sds,defaultValue:sds}]', '[{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:sad,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:sdsd,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:sds,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '3425f78264', '1', 'eqwe', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (120, '1', 'admin', '2023-10-10 18:07:24', NULL, 'admin', '2023-10-11 14:03:06', 'scsaa', 'dsds', 'ss', '/public/agile-data/api/ss/sds', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3470,tableName:tbl_data_api_log,fieldParams:[{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:调用api,reqable:1,resable:1},{columnName:api_log_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api_log''::regclass),columnComment:主键ID,reqable:null,resable:null},{columnName:caller_date,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:调用时间,reqable:null,resable:null},{columnName:caller_id,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:调用者id,reqable:null,resable:null},{columnName:caller_ip,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:调用者ip,reqable:null,resable:null},{columnName:caller_params,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:调用参数,reqable:null,resable:null},{columnName:caller_size,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:调用数据量,reqable:null,resable:null},{columnName:caller_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:调用url,reqable:null,resable:null},{columnName:msg,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:信息记录,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:状态(0成功,1失败),reqable:null,resable:null},{columnName:time,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:调用耗时,reqable:null,resable:null}],sqlText:SELECT api_id FROM tbl_data_api_log}', '[{paramName:api_id,nullable:0,paramComment:调用api,whereType:=,paramType:Long,exampleValue:1,defaultValue:1}]', '[{fieldName:api_id,fieldComment:调用api,dataType:int8,exampleValue:sds,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, 'f5b8080260', '1', 'dssa', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (121, '1', 'admin', '2023-10-10 20:26:31', NULL, 'admin', '2023-10-10 20:32:44', '', '11', '11', '/public/agile-data/api/11/11', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '06bc016332', '1', '11111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (117, '1', 'admin', '2023-10-10 15:41:27', NULL, 'admin', '2023-10-11 14:03:00', '', '测试API', 'v1.2', '/public/agile-data/api/v1.0.0/test', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:1,paramType:1,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 3, '28c2dec899', '1', '23232', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (119, '3', 'admin', '2023-10-10 17:45:28', NULL, 'admin', '2023-10-13 20:12:28', '', 'sds', 'v13', '/public/agile-data/api/v13/ds/aw/d', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:52,defaultValue:23}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:sds,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:52,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:测试,fieldAliasName:null,cipherType:null,cryptType:null}]', 5, 'c0dcccefea', '0', 'dsds', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (122, '4', 'admin', '2023-10-11 14:04:10', NULL, 'admin', '2023-10-13 19:06:59', '', '测试API', 'v1.0', '/public/agile-data/api/v1.0/test', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:0,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name = :api_name}}', '[{paramName:api_name,nullable:1,paramComment:API名称,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 14, '8a1b49a367', '0', '222333', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (123, '1', 'admin', '2023-10-11 15:24:34', NULL, 'yts', '2023-10-12 17:17:06', '', '11', '11', '/public/agile-data/api/11/22', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:1,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:0,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name = :api_name}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 6, 'e6bb740804', '1', '111111111', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (124, '1', 'admin', '2023-10-11 16:02:12', NULL, 'yts', '2023-10-12 17:17:09', '', 'cecvec', 'v1.0', '/public/agile-data/api/v1.0/cdcd', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:31,configType:2,tableId:3469,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name = :api_name}}', '[{paramName:api_name,nullable:0,paramComment:dd,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null}]', 4, 'a8e83108e7', '1', 'dfasdf', '1', 31); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (128, '3', 'admin1', '2023-10-17 10:26:50', NULL, 'admin1', '2023-10-17 15:35:58', '', 'sds-副本20231017102612', 'v13', '/public/agile-data/api/v13/ds/aw/d/copy20231017102612', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:0,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:1,defaultValue:116}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:12,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:23,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:231,fieldAliasName:null,cipherType:null,cryptType:null}]', 8, 'a1e7a3654e', '0', 'API0000127', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (129, '2', 'admin1', '2023-10-17 16:12:57', NULL, 'admin1', '2023-10-17 16:40:33', '', '演示001', 'v.1', '/public/agile-data/api/v.1/a/b/c/s', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 6, '4023ff57a1', '0', 'code001', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (131, '1', 'admin2', '2023-10-17 16:46:55', NULL, NULL, '2023-10-17 16:46:55', '', '演示001-副本20231017164617', 'v.1', '/public/agile-data/api/v.1/a/b/c/s/copy20231017164617', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '2938d32d65', '0', 'API0000130', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (133, '1', 'admin1', '2023-10-31 14:07:28', NULL, 'admin', '2023-11-15 19:03:35', '', '演示001-副本20231017164617-副本20231031140644', 'v.1', '/public/agile-data/api/v.1/a/b/c/s/copy23', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 4, '5f4a3fd693', '1', 'API0000132', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (135, '4', 'admin1', '2023-11-01 16:24:04', NULL, 'admin1', '2023-11-01 17:15:51', '', '测试003', 'v1.2', '/public/agile-data/api/v1.2/ds/ds', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4806,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_id, api_code, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:119,defaultValue:119}]', '[{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:119,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:test003,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:测试003,fieldAliasName:null,cipherType:null,cryptType:null}]', 3, 'a749240dbe', '0', 'test003', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (137, '2', 'admin1', '2023-11-01 17:16:53', NULL, 'admin1', '2023-11-01 17:19:12', '', '测试003-copy', 'v1.2', '/public/agile-data/api/v1.2/ds/ds/sd', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4806,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_id, api_code, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:119,defaultValue:119}]', '[{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:119,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:test003,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:测试003,fieldAliasName:null,cipherType:null,cryptType:null}]', 6, '2dec96f64e', '0', 'API0000136', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (138, '2', 'admin1', '2023-11-02 15:16:40', NULL, 'admin1', '2023-11-02 15:19:28', '', 'test4', 'v1', '/public/agile-data/api/v1/test/004', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4888,tableName:tbl_sys_user,fieldParams:[{columnName:avatar,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:【头像地址】,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:【创建者】,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:null,columnComment:【创建时间】,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:dept_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:【部门ID】,reqable:null,resable:null},{columnName:email,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:【用户邮箱】,reqable:null,resable:null},{columnName:is_locked,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:【锁定状态】,reqable:null,resable:null},{columnName:last_login_error_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:【登陆错误时间】,reqable:null,resable:null},{columnName:login_date,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:【最后登录时间】,reqable:null,resable:null},{columnName:login_error_count,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:【登陆错误次数】,reqable:null,resable:null},{columnName:login_ip,dataType:varchar,dataLength:128,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:【最后登录IP】,reqable:null,resable:null},{columnName:nick_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:6,dataDefault:null,columnComment:【用户昵称】,reqable:null,resable:null},{columnName:password,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:【密码】,reqable:null,resable:null},{columnName:phonenumber,dataType:varchar,dataLength:11,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:【手机号码】,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:3,dataDefault:''1''::character varying,columnComment:【随机码】,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:【备注】,reqable:null,resable:null},{columnName:sex,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:【用户性别】0男 1女 2未知,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:【帐号状态】0正常 1停用,reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:22,dataDefault:null,columnComment:【更新者】,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:【更新时间】,reqable:null,resable:null},{columnName:user_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_sys_user''::regclass),columnComment:【用户ID】,reqable:1,resable:1},{columnName:user_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:5,dataDefault:null,columnComment:【用户账号】,reqable:null,resable:1},{columnName:user_type,dataType:varchar,dataLength:2,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:''00''::character varying,columnComment:【用户类型】00系统用户,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:0,columnComment:【版本号】,reqable:null,resable:null}],sqlText:SELECT user_id, user_name FROM tbl_sys_user WHERE 1 = 1 ${AND user_id = :user_id}}', '[{paramName:user_id,nullable:0,paramComment:【用户ID】,whereType:=,paramType:Long,exampleValue:1,defaultValue:1}]', '[{fieldName:user_id,fieldComment:【用户ID】,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:user_name,fieldComment:【用户账号】,dataType:varchar,exampleValue:admin,fieldAliasName:null,cipherType:null,cryptType:null}]', 1, '9499ca728a', '0', 'test004', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (139, '1', 'admin', '2023-11-06 16:17:02', NULL, NULL, '2023-11-06 16:17:02', '', '测试表下拉框', 'v1.0', '/public/agile-data/api/v1.0/testcc', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4806,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id} ${AND api_name = :api_name}}', '[{paramName:api_id,nullable:1,paramComment:主键ID,whereType:=,paramType:Long,exampleValue:1,defaultValue:1},{paramName:api_name,nullable:1,paramComment:API名称,whereType:=,paramType:String,exampleValue:1,defaultValue:1}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '84c19ff9ce', '0', 'testcc', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (110, '3', 'admin', '2023-10-10 10:43:42', NULL, 'admin', '2023-10-10 10:43:42', '', '站点常乘客客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:date,exampleValue:2023-10,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:lineStatus,fieldComment:换乘方式,dataType:String,exampleValue:线路状态,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricMonth,fieldComment:指标月份,dataType:String,exampleValue:2023-10,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (101, '3', 'admin', '2023-10-09 17:56:20', NULL, 'admin', '2023-10-09 17:56:20', '', '站点客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:2023-10-01,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:2023-10-01,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:Long,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (97, '3', 'admin', '2023-10-09 17:46:07', NULL, 'admin', '2023-10-09 17:46:07', '', '线路客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', 'paramName:companyCode,nullable:1,paramComment:运营公司编码,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null}{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:主键,dataType:Long,exampleValue:2131,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'lineDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (113, '3', 'admin', '2023-10-10 11:02:17', NULL, 'admin', '2023-10-10 11:02:17', '', '站点常乘客换乘客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:exchangeType,nullable:0,paramComment:换乘方式,whereType:1,paramType:String,exampleValue:公交换乘,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqTransMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (106, '3', 'admin', '2023-10-10 10:11:14', NULL, 'admin', '2023-10-10 10:11:14', '', '站点换乘客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:exchangeType,nullable:0,paramComment:换乘方式,whereType:1,paramType:1,exampleValue:换乘公交,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationTransDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (107, '3', 'admin', '2023-10-10 10:14:14', NULL, 'admin', '2023-10-10 10:14:14', '', '站点换乘客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:date,exampleValue:2023-10,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1},{paramName:exchangeType,nullable:0,paramComment:换乘方式,whereType:1,paramType:1,exampleValue:换乘公交,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:exchangeType,fieldComment:换乘方式,dataType:String,exampleValue:换乘公交,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricMonth,fieldComment:指标月份,dataType:String,exampleValue:2023-10,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationTransMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (99, '3', 'admin', '2023-10-09 17:46:07', NULL, 'admin', '2023-10-09 17:46:07', '', '线路客流量-月', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricMonth,nullable:0,paramComment:指标月份,whereType:1,paramType:4,exampleValue:2023-10-01,defaultValue:1},{paramName:companyCode,nullable:1,paramComment:运营公司编码,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineStatus,fieldComment:线路状态 0表示暂停营运、1表示启用、2表示撤销,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyCode,fieldComment:公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司,dataType:String,exampleValue:00-01,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:companyName,fieldComment:运营公司名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:serviceType,fieldComment:营运模式 1:高峰线、3:全日线、4:夜宵线,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标日期 ,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时 yyyy-MM-dd,dataType:Date,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricHour,fieldComment:指标小时,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'lineMonth', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (109, '3', 'admin', '2023-10-10 10:18:05', NULL, 'admin', '2023-10-10 10:18:05', '', '站点常乘客客流量-日', 'v1.0', '/agile-gateway/public/product/download.do', 'POST', 'JSON', NULL, NULL, '', '[{paramName:pageSize,nullable:1,paramComment:分页大小,默认20,最大1000,whereType:1,paramType:2,exampleValue:1,defaultValue:1102},{paramName:pageNum,nullable:1,paramComment:页码数,默认1,whereType:1,paramType:2,exampleValue:20,defaultValue:1102},{paramName:lineName,nullable:1,paramComment:线路名称,whereType:1,paramType:1,exampleValue:1102,defaultValue:1102},{paramName:lineCode,nullable:1,paramComment:六位线路编码,whereType:1,paramType:1,exampleValue:1,defaultValue:674521},{paramName:metricDate,nullable:0,paramComment:指标日期,whereType:1,paramType:date,exampleValue:2023-10-01,defaultValue:1},{paramName:up,nullable:0,paramComment:线路方向:0上行,1下行,whereType:1,paramType:1,exampleValue:0,defaultValue:1},{paramName:levels,nullable:0,paramComment:站点序号,whereType:1,paramType:2,exampleValue:20,defaultValue:1}]', '[{fieldName:lineCode,fieldComment:六位线路编码,dataType:String,exampleValue:1102,fieldAliasName:,cipherType:null,cryptType:null,{fieldName:lineName,fieldComment:线路名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:up,fieldComment:线路方向:0上,1下,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levels,fieldComment:站点序号,dataType:Long,exampleValue:10,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:levelName,fieldComment:站点名称,dataType:String,exampleValue:1,fieldAliasName:,cipherType:null,cryptType:null},{paramName:lineStatus,fieldComment:换乘方式,dataType:String,exampleValue:线路状态,,fieldAliasName:,cipherType:null,cryptType:null}{paramName:metricDate,fieldComment:指标日期,dataType:String,exampleValue:2023-10-01,,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:metricValue,fieldComment:指标,dataType:Long,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:lineNo,fieldComment:五位线路编码,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null},{fieldName:id,fieldComment:ID,dataType:String,exampleValue:14560,fieldAliasName:,cipherType:null,cryptType:null}]', 0, '1', '0', 'stationFreqDay', '2', NULL); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (141, '1', 'admin1', '2023-11-14 10:07:24', NULL, 'admin1', '2023-11-14 13:40:20', '', 'wew', 'v2', '/public/agile-data/api/v2/s/d/fff', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4802,tableName:gen_table,fieldParams:[{columnName:business_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:生成业务名,reqable:1,resable:1},{columnName:class_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:实体类名称,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:创建者,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:创建时间,reqable:null,resable:null},{columnName:function_author,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:生成功能作者,reqable:null,resable:null},{columnName:function_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:生成功能名,reqable:null,resable:null},{columnName:gen_path,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:生成路径(不填默认项目路径),reqable:null,resable:null},{columnName:gen_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:生成代码方式(0zip压缩包 1自定义路径),reqable:null,resable:null},{columnName:module_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:生成模块名,reqable:null,resable:null},{columnName:options,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:其它生成选项,reqable:null,resable:null},{columnName:package_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:生成包路径,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:sub_table_fk_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:子表关联的外键名,reqable:null,resable:null},{columnName:sub_table_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:关联子表的表名,reqable:null,resable:null},{columnName:table_comment,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:表描述,reqable:null,resable:null},{columnName:table_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_gen_table''::regclass),columnComment:编号,reqable:null,resable:null},{columnName:table_name,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:2,dataDefault:null,columnComment:表名称,reqable:null,resable:null},{columnName:tpl_category,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:使用的模板(crud单表操作 tree树表操作),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:更新者,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:更新时间,reqable:null,resable:null}],sqlText:SELECT business_name FROM gen_table WHERE 1 = 1 ${AND business_name = :business_name}}', '[{paramName:business_name,nullable:0,paramComment:生成业务名,whereType:=,paramType:String,exampleValue:s,defaultValue:w}]', '[{fieldName:business_name,fieldComment:生成业务名,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 4, '5e6daadccb', '0', '1232', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (143, '1', 'admin', '2023-11-15 18:58:10', NULL, NULL, '2023-11-15 18:58:10', '', '演示001-副本20231017164617-副本20231031140644-副本', 'v.1', '/public/agile-data/api/v.1/a/b/c/s/copy23', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:35,configType:1,tableId:3701,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:1},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:1,resable:1},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_code, api_id, api_name FROM tbl_data_api WHERE 1 = 1 ${AND api_name LIKE ''%'' :api_name ''%''}}', '[{paramName:api_name,nullable:0,paramComment:API名称,whereType:LIKE,paramType:String,exampleValue:演示,defaultValue:演示}]', '[{fieldName:api_code,fieldComment:API code,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:2,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:api_name,fieldComment:API名称,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, 'dcda9a28e9', '0', 'API0000142', '1', 35); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (145, '1', 'admin', '2023-11-15 19:03:39', NULL, NULL, '2023-11-15 19:03:39', '', 'wew-副本', 'v2', '/public/agile-data/api/v2/s/d/fff', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4802,tableName:gen_table,fieldParams:[{columnName:business_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:生成业务名,reqable:1,resable:1},{columnName:class_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:实体类名称,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:创建者,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:创建时间,reqable:null,resable:null},{columnName:function_author,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:生成功能作者,reqable:null,resable:null},{columnName:function_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:生成功能名,reqable:null,resable:null},{columnName:gen_path,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:生成路径(不填默认项目路径),reqable:null,resable:null},{columnName:gen_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:生成代码方式(0zip压缩包 1自定义路径),reqable:null,resable:null},{columnName:module_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:生成模块名,reqable:null,resable:null},{columnName:options,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:其它生成选项,reqable:null,resable:null},{columnName:package_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:生成包路径,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:sub_table_fk_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:子表关联的外键名,reqable:null,resable:null},{columnName:sub_table_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:关联子表的表名,reqable:null,resable:null},{columnName:table_comment,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:表描述,reqable:null,resable:null},{columnName:table_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_gen_table''::regclass),columnComment:编号,reqable:null,resable:null},{columnName:table_name,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:2,dataDefault:null,columnComment:表名称,reqable:null,resable:null},{columnName:tpl_category,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:使用的模板(crud单表操作 tree树表操作),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:更新者,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:更新时间,reqable:null,resable:null}],sqlText:SELECT business_name FROM gen_table WHERE 1 = 1 ${AND business_name = :business_name}}', '[{paramName:business_name,nullable:0,paramComment:生成业务名,whereType:=,paramType:String,exampleValue:s,defaultValue:w}]', '[{fieldName:business_name,fieldComment:生成业务名,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '86875f8e7d', '0', 'API0000144', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (148, '1', 'admin', '2023-11-15 19:06:36', NULL, 'admin', '2023-11-17 14:19:48', '', 'wew-副本', 'v3', '/public/agile-data/api/v3/s/d/fff', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:4802,tableName:gen_table,fieldParams:[{columnName:business_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:10,dataDefault:null,columnComment:生成业务名,reqable:1,resable:1},{columnName:class_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:实体类名称,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:创建者,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:创建时间,reqable:null,resable:null},{columnName:function_author,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:12,dataDefault:null,columnComment:生成功能作者,reqable:null,resable:null},{columnName:function_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:生成功能名,reqable:null,resable:null},{columnName:gen_path,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:生成路径(不填默认项目路径),reqable:null,resable:null},{columnName:gen_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:13,dataDefault:null,columnComment:生成代码方式(0zip压缩包 1自定义路径),reqable:null,resable:null},{columnName:module_name,dataType:varchar,dataLength:30,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:9,dataDefault:null,columnComment:生成模块名,reqable:null,resable:null},{columnName:options,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:其它生成选项,reqable:null,resable:null},{columnName:package_name,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:生成包路径,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:20,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:sub_table_fk_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:子表关联的外键名,reqable:null,resable:null},{columnName:sub_table_name,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:关联子表的表名,reqable:null,resable:null},{columnName:table_comment,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:表描述,reqable:null,resable:null},{columnName:table_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_gen_table''::regclass),columnComment:编号,reqable:null,resable:null},{columnName:table_name,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:2,dataDefault:null,columnComment:表名称,reqable:null,resable:null},{columnName:tpl_category,dataType:varchar,dataLength:200,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:使用的模板(crud单表操作 tree树表操作),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:64,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:更新者,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:19,dataDefault:null,columnComment:更新时间,reqable:null,resable:null}],sqlText:SELECT business_name FROM gen_table WHERE 1 = 1 ${AND business_name = :business_name}}', '[{paramName:business_name,nullable:0,paramComment:生成业务名,whereType:=,paramType:String,exampleValue:s,defaultValue:w}]', '[{fieldName:business_name,fieldComment:生成业务名,dataType:varchar,exampleValue:3,fieldAliasName:null,cipherType:1,cryptType:1}]', 2, '8b29317c9d', '0', 'API0000147', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (149, '1', 'test88', '2023-12-04 13:32:09', NULL, NULL, '2023-12-04 13:32:09', '', '展示测试', 'v1.0', '/public/agile-data/api/v1.0/show', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:10194,tableName:tbl_data_metadata_source,fieldParams:[{columnName:conn_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:连接id,reqable:1,resable:1},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:0},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:db_schema,dataType:varchar,dataLength:500,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:数据源连接信息,reqable:null,resable:null},{columnName:db_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:数据源类型,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:is_sync,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:11,dataDefault:null,columnComment:元数据同步(0已同步 1同步中 2未同步),reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:14,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_metadata_source''::regclass),columnComment:主键ID,reqable:null,resable:1},{columnName:source_name,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:数据源名称,reqable:null,resable:1},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(0正常,1停用),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT conn_id, source_id, source_name FROM tbl_data_metadata_source WHERE 1 = 1 ${AND conn_id = :conn_id}}', '[{paramName:conn_id,nullable:1,paramComment:连接id,whereType:=,paramType:Long,exampleValue:1,defaultValue:1}]', '[{fieldName:conn_id,fieldComment:连接id,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:source_id,fieldComment:主键ID,dataType:int8,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null},{fieldName:source_name,fieldComment:数据源名称,dataType:varchar,exampleValue:1,fieldAliasName:null,cipherType:null,cryptType:null}]', 0, '93d8933353', '0', 'testshow', '1', 47); +INSERT INTO tbl_data_api (api_id, status, create_by, create_time, create_dept, update_by, update_time, remark, api_name, api_version, api_url, req_method, res_type, deny, limit_json, config_json, req_json, res_json, version_num, rec_token, del_flag, api_code, api_type, source_id) VALUES (150, '1', 'admin1', '2023-12-08 14:47:55', NULL, NULL, '2023-12-08 14:47:55', '测试数据', 'ceode', '1', '/public/agile-data/api/1/s/d/e/f', 'POST', 'JSON', NULL, '{enable:1,times:5,seconds:60}', '{sourceId:47,configType:1,tableId:10188,tableName:tbl_data_api,fieldParams:[{columnName:api_code,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:23,dataDefault:null,columnComment:API code,reqable:null,resable:null},{columnName:api_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:1,columnNullable:0,columnPosition:1,dataDefault:nextval(''seq_data_market_api''::regclass),columnComment:主键ID,reqable:1,resable:1},{columnName:api_name,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:9,dataDefault:null,columnComment:API名称,reqable:null,resable:null},{columnName:api_type,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:24,dataDefault:null,columnComment:类型:1敏捷API 2系统API,reqable:null,resable:null},{columnName:api_url,dataType:varchar,dataLength:255,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:11,dataDefault:null,columnComment:API路径,reqable:null,resable:null},{columnName:api_version,dataType:varchar,dataLength:60,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:10,dataDefault:null,columnComment:API版本,reqable:null,resable:null},{columnName:config_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:16,dataDefault:null,columnComment:执行配置,reqable:null,resable:null},{columnName:create_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:3,dataDefault:null,columnComment:创建人,reqable:null,resable:null},{columnName:create_dept,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:5,dataDefault:null,columnComment:创建人所属部门,reqable:null,resable:null},{columnName:create_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:4,dataDefault:null,columnComment:创建日期,reqable:null,resable:null},{columnName:del_flag,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:21,dataDefault:''0''::bpchar,columnComment:【删除标志】0代表存在 2代表删除,reqable:null,resable:null},{columnName:deny,dataType:varchar,dataLength:2000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:14,dataDefault:null,columnComment:IP黑名单多个,隔开,reqable:null,resable:null},{columnName:limit_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:15,dataDefault:null,columnComment:限流配置,reqable:null,resable:null},{columnName:rec_token,dataType:varchar,dataLength:100,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:20,dataDefault:''1''::character varying,columnComment:随机码,reqable:null,resable:null},{columnName:remark,dataType:varchar,dataLength:1000,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:8,dataDefault:null,columnComment:备注,reqable:null,resable:null},{columnName:req_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:17,dataDefault:null,columnComment:请求参数,reqable:null,resable:null},{columnName:req_method,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:12,dataDefault:null,columnComment:请求方式,reqable:null,resable:null},{columnName:res_json,dataType:text,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:18,dataDefault:null,columnComment:返回参数,reqable:null,resable:null},{columnName:res_type,dataType:varchar,dataLength:10,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:13,dataDefault:null,columnComment:返回格式,reqable:null,resable:null},{columnName:source_id,dataType:int8,dataLength:null,dataPrecision:64,dataScale:0,columnKey:0,columnNullable:1,columnPosition:25,dataDefault:null,columnComment:数据源id,reqable:null,resable:null},{columnName:status,dataType:bpchar,dataLength:1,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:0,columnPosition:2,dataDefault:null,columnComment:状态(1待注册,2已注册,3已发布),reqable:null,resable:null},{columnName:update_by,dataType:varchar,dataLength:50,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:6,dataDefault:null,columnComment:更新人,reqable:null,resable:null},{columnName:update_time,dataType:timestamp,dataLength:null,dataPrecision:null,dataScale:null,columnKey:0,columnNullable:1,columnPosition:7,dataDefault:null,columnComment:更新日期,reqable:null,resable:null},{columnName:version_num,dataType:int4,dataLength:null,dataPrecision:32,dataScale:0,columnKey:0,columnNullable:0,columnPosition:19,dataDefault:0,columnComment:版本号,reqable:null,resable:null}],sqlText:SELECT api_id FROM tbl_data_api WHERE 1 = 1 ${AND api_id = :api_id}}', '[{paramName:api_id,nullable:0,paramComment:主键ID,whereType:=,paramType:Number,exampleValue:95,defaultValue:95}]', '[{fieldName:api_id,fieldComment:主键ID,dataType:int8,exampleValue:95,fieldAliasName:null,cipherType:2,cryptType:1}]', 0, '6d44618b77', '0', 'eweq', '1', 47); + + +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (459, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:48', NULL, 20, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (460, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:51', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (461, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:20:47', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (462, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:42:55', NULL, 66, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (463, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:43:15', NULL, 18, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (471, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:30', NULL, 55, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (472, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:33', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (473, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:34', NULL, 11, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (474, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:39', NULL, 10, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (475, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:41', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (476, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:43', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (477, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 17:49:29', NULL, 9, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (478, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-15 16:25:19', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (479, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-17 17:02:52', NULL, 52, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +-- INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (480, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-21 09:33:02', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); + +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (480, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-21 09:33:02', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (479, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-17 17:02:52', NULL, 52, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (478, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-15 16:25:19', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (477, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 17:49:29', NULL, 9, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (476, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:43', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (475, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:41', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (474, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:39', NULL, 10, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (473, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:34', NULL, 11, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (472, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:33', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (471, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-10 15:09:30', NULL, 55, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (470, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:23:39', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (469, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:22:21', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (468, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:21:14', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (467, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:13:14', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (466, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 16:06:41', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (465, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 15:55:12', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (464, 137, NULL, '172.16.12.254', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-03 15:45:18', NULL, 10, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (463, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:43:15', NULL, 18, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (462, 138, NULL, '172.16.12.254', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-03 15:42:55', NULL, 66, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (461, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:20:47', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (460, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:51', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (459, 138, NULL, '172.16.12.104', '/public/agile-data/api/v1/test/004', '{pageSize:10,pageNum:1,user_id:1}', '2023-11-02 15:18:48', NULL, 20, '{pageNum:1,pageSize:10,total:1,rows:[{user_id:1,user_name:admin}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (458, 137, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds/sd', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 17:18:36', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (457, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:25', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (456, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:24', NULL, 2, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (455, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:23', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (454, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:22', NULL, 2, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (453, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:20', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (452, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:19', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (451, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:18', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (450, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:17', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (449, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:15', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (448, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:14', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (447, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:46:12', NULL, 5, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (446, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:07', NULL, 3, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (445, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:06', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (444, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:05', NULL, 8, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (443, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:04', NULL, 12, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (442, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:02', NULL, 12, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (441, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:24:00', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (440, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:58', NULL, 6, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (439, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:57', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (438, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:54', NULL, 7, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); +INSERT INTO tbl_data_api_log (api_log_id, api_id, caller_id, caller_ip, caller_url, caller_params, caller_date, caller_size, time, msg, status) VALUES (437, 135, NULL, '172.16.12.104', '/public/agile-data/api/v1.2/ds/ds', '{pageSize:10,api_id:119,pageNum:1}', '2023-11-01 16:23:53', NULL, 4, '{pageNum:1,pageSize:10,total:1,rows:[{api_id:119,api_code:dsds,api_name:sds}]}', '0'); + +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31938, 'business_name', '生成业务名', 'varchar', NULL, '30', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31939, 'class_name', '实体类名称', 'varchar', NULL, '100', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31940, 'create_by', '创建者', 'varchar', NULL, '64', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31941, 'create_time', '创建时间', 'timestamp', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31942, 'function_author', '生成功能作者', 'varchar', NULL, '50', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31943, 'function_name', '生成功能名', 'varchar', NULL, '50', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31944, 'gen_path', '生成路径(不填默认项目路径)', 'varchar', NULL, '200', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31945, 'gen_type', '生成代码方式(0zip压缩包 1自定义路径)', 'bpchar', NULL, '1', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31946, 'module_name', '生成模块名', 'varchar', NULL, '30', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_column (asset_column_id, column_name, column_comment, data_type, column_no, data_length, data_example, data_desc, rsv, data_unit) VALUES (31947, 'options', '其它生成选项', 'varchar', NULL, '1000', NULL, NULL, NULL, NULL); + + +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4219, 47, 'gen_table', '代码生成业务表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4220, 47, 'gen_table_column', '代码生成业务表字段', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4221, 47, 'tbl_batch_table_mapping', '【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4222, 47, 'tbl_batch_task', '【批处理任务表】记录任务处理情况,方便实现增量重跑', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4223, 47, 'tbl_data_api', '【API信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4224, 47, 'tbl_data_api_log', '【API调用日志信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4225, 47, 'tbl_data_asset_column', '数据资产基础元数据', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4226, 47, 'tbl_data_asset_table', '数据资产基础表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4227, 47, 'tbl_data_asset_table_column', '数据资产基础表与元数据关联表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4228, 47, 'tbl_data_metadata_column', '【元数据信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4229, 47, 'tbl_data_metadata_source', '【数据源信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4230, 47, 'tbl_data_metadata_source_conn', '数据源连接信息表', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4231, 47, 'tbl_data_metadata_table', '【数据库表信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4232, 47, 'tbl_data_sql_console_conn_num', '数据源连接数', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4233, 47, 'tbl_data_sql_console_export', 'SQL查询导出记录', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4234, 47, 'tbl_data_sql_console_file', '【SQL工作台文件】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4235, 47, 'tbl_data_sql_data_apply', '【SQL元数据权限申请表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4236, 47, 'tbl_data_sql_data_auth', '【元数据授权信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4237, 47, 'tbl_data_sql_log', 'SQL执行日志', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4238, 47, 'tbl_docker_apply_info', '【 容器申请】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4239, 47, 'tbl_docker_apply_lib', '【容器使用自传组件】包含组件和数据', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4240, 47, 'tbl_docker_apply_review', '【 数据注入申请审核表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4241, 47, 'tbl_docker_apply_review_dtl', '【数据注入申请明细】包含组件和数据', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4242, 47, 'tbl_docker_client_info', '【 服务器清单】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4243, 47, 'tbl_docker_config_hardware', '【实验室硬件配置信息表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4244, 47, 'tbl_docker_download_apply', '【 下载文件申请】容器内的文件下载', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4245, 47, 'tbl_docker_images', '【 容器可用镜像】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4246, 47, 'tbl_docker_port_list', '【 服务器端口】把可用端口配置在这里,端口是固定的几个', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4247, 47, 'tbl_docker_portainer_user', '【portainer管理账户信息】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4248, 47, 'tbl_docker_vpn', '【VPN用户表】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4249, 47, 'tbl_docker_with_user', '【 用户与容器信息】', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4250, 47, 'tbl_docker_with_user_account', '【 容器用户账户信息】设计成允许多个服务', NULL, NULL, NULL, NULL); +INSERT INTO tbl_data_asset_table (asset_table_id, source_id, table_name, table_comment, source, rsv1, rsv2, table_create_time) VALUES (4251, 47, 'tbl_org_api_auth', '【机构接口权限表】', NULL, NULL, NULL, NULL); + + + +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54140, 4219, 'business_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54141, 4219, 'class_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54142, 4219, 'create_by', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54143, 4219, 'create_time', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54144, 4219, 'function_author', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54145, 4219, 'function_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54146, 4219, 'gen_path', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54147, 4219, 'gen_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54148, 4219, 'module_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54149, 4219, 'options', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54150, 4219, 'package_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54151, 4219, 'remark', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54152, 4219, 'sub_table_fk_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54153, 4219, 'sub_table_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54154, 4219, 'table_comment', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54155, 4219, 'table_id', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54156, 4219, 'table_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54157, 4219, 'tpl_category', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54158, 4219, 'update_by', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54159, 4219, 'update_time', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54160, 4220, 'column_comment', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54161, 4220, 'column_id', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54162, 4220, 'column_name', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54163, 4220, 'column_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54164, 4220, 'create_by', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54165, 4220, 'create_time', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54166, 4220, 'dict_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54167, 4220, 'html_type', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54168, 4220, 'is_edit', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54169, 4220, 'is_increment', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54170, 4220, 'is_insert', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54171, 4220, 'is_list', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54172, 4220, 'is_pk', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54173, 4220, 'is_query', NULL); +INSERT INTO tbl_data_asset_table_column (asset_table_column_id, asset_table_id, column_name, rsv) VALUES (54174, 4220, 'is_required', NULL); + +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267908, 47, 10184, 'business_name', '生成业务名', '0', '1', '10', 'varchar', '30', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267909, 47, 10184, 'class_name', '实体类名称', '0', '1', '6', 'varchar', '100', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267910, 47, 10184, 'create_by', '创建者', '0', '1', '16', 'varchar', '64', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267911, 47, 10184, 'create_time', '创建时间', '0', '1', '17', 'timestamp', NULL, NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267912, 47, 10184, 'function_author', '生成功能作者', '0', '1', '12', 'varchar', '50', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267913, 47, 10184, 'function_name', '生成功能名', '0', '1', '11', 'varchar', '50', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267914, 47, 10184, 'gen_path', '生成路径(不填默认项目路径)', '0', '1', '14', 'varchar', '200', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267915, 47, 10184, 'gen_type', '生成代码方式(0zip压缩包 1自定义路径)', '0', '1', '13', 'bpchar', '1', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267916, 47, 10184, 'module_name', '生成模块名', '0', '1', '9', 'varchar', '30', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267917, 47, 10184, 'options', '其它生成选项', '0', '1', '15', 'varchar', '1000', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267918, 47, 10184, 'package_name', '生成包路径', '0', '1', '8', 'varchar', '100', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267919, 47, 10184, 'remark', '备注', '0', '1', '20', 'varchar', '500', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267920, 47, 10184, 'sub_table_fk_name', '子表关联的外键名', '0', '1', '5', 'varchar', '64', NULL, NULL, NULL, 9); +INSERT INTO tbl_data_metadata_column (column_id, source_id, table_id, column_name, column_comment, column_key, column_nullable, column_position, data_type, data_length, data_precision, data_scale, data_default, conn_id) VALUES (267921, 47, 10184, 'sub_table_name', '关联子表的表名', '0', '1', '4', 'varchar', '64', NULL, NULL, NULL, 9); + + + +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (53, '0', 'admin', '2023-11-07 15:57:53.952788', NULL, 'admin', '2023-11-07 15:58:03.220062', '', '9', 'sptcc_agile_test', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_test,sid:null}', 2, 'a2c5013833', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (40, '0', 'admin', '2023-10-17 20:13:36.85609', NULL, 'admin', '2023-10-17 20:25:02.563665', '', '9', '11', '2', '{host:11,port:11,username:11,password:11,dbName:11,sid:null}', 9, '835177cb69', '1', 15); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (46, '0', 'admin', '2023-10-30 16:01:24.765605', NULL, NULL, '2023-10-30 16:01:24.765605', '', '9', '读点', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:读点,sid:null}', 0, '1', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (44, '0', 'admin', '2023-10-30 15:30:28.540324', NULL, 'admin', '2023-10-30 15:30:51.175224', '', '5', 'public', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 2, 'a1f79d0324', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (45, '0', 'admin', '2023-10-30 15:55:57.832079', NULL, 'yts', '2023-11-10 17:37:55.732552', '', '5', 'test', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 26, 'b59392b659', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (39, '0', 'admin', '2023-10-17 13:59:20.31012', NULL, 'admin', '2023-10-19 16:20:21.915351', '', '9', 'db_hive1', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:db_hive1,sid:null}', 4, '71255cc102', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (41, '0', 'admin', '2023-10-19 19:10:59.589874', NULL, 'admin', '2023-10-31 14:45:06.80921', '', '9', 'db_hive1', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:db_hive1,sid:null}', 8, '312740b5f7', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (37, '0', 'admin', '2023-10-16 10:12:04.878404', NULL, 'admin', '2023-10-31 13:27:32.047503', '', '9', 'hive', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:hive,sid:null}', 20, '7df5debad8', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (38, '0', 'admin', '2023-10-16 10:18:39.726136', NULL, 'admin', '2023-11-02 17:44:01.416304', '', '9', 'default', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:default,sid:null}', 36, 'd969238d3b', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (55, '0', 'admin', '2023-11-07 16:10:31.865915', NULL, 'admin', '2023-11-07 16:17:37.302569', '', '9', 'sptcc_agile_test', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_test,sid:null}', 6, '28c1b7482d', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (52, '0', 'admin', '2023-11-07 15:57:29.88465', NULL, 'admin', '2023-11-07 16:17:39.703999', '', '9', 'sptcc_agile_dev', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_dev,sid:null}', 6, '911a6d614a', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (49, '0', 'admin', '2023-10-31 13:50:59.247177', NULL, 'admin', '2023-10-31 14:20:03.742601', '', '9', 'sptcc_agile_dev', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_dev,sid:null}', 6, '774a0bd819', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (47, '0', 'admin', '2023-10-30 16:39:13.81384', NULL, 'admin', '2023-11-30 15:09:52.81723', '', '5', 'public', '0', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 31, '17f8c0935e', '0', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (57, '0', 'yts', '2023-11-14 15:59:35.819045', NULL, 'yts', '2023-11-14 17:22:47.841832', '', '9', 'db_test', '2', '{host:127.0.0.1,port:10000,username:root,password:three,dbName:db_test,sid:null}', 7, 'd429a6bfb4', '0', 20); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (36, '0', 'admin', '2023-10-13 18:39:52.700626', NULL, 'admin', '2023-10-13 18:42:01.942339', '', '5', 'sjzt', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:sjzt,sid:null}', 5, 'ffd92ece74', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (58, '0', 'test88', '2023-12-04 18:09:46.947707', NULL, 'test88', '2023-12-04 18:09:50.7656', '', '5', 'public', '0', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:tanpuhui,sid:null}', 2, 'a339aae711', '0', 21); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (50, '0', 'admin', '2023-10-31 14:00:55.89506', NULL, 'admin', '2023-10-31 14:45:10.057417', '', '9', 'import_data', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:import_data,sid:null}', 7, '43a63151e8', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (48, '0', 'admin', '2023-10-31 13:37:38.282948', NULL, 'admin', '2023-11-01 14:11:35.222813', '', '9', 'hive', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:hive,sid:null}', 33, '8b00caf0c1', '0', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (56, '0', 'admin', '2023-11-13 11:12:56.38509', NULL, 'admin', '2023-11-30 15:09:43.605813', '', '5', 'test', '0', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 23, 'db08d85d3a', '0', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (42, '0', 'admin', '2023-10-26 10:40:19.633998', NULL, 'admin', '2023-10-27 16:22:40.152695', '', '5', 'tanpuhui', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:tanpuhui,sid:null}', 4, 'fb6b4223b6', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (35, '0', 'admin', '2023-10-13 18:37:48.282999', NULL, 'admin', '2023-10-19 14:48:47.245103', '', '5', 'keliubao', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:keliubao,sid:null}', 4, '4bef9a2a17', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (43, '0', 'admin', '2023-10-30 09:49:22.124128', NULL, NULL, '2023-10-30 09:49:22.124128', '', '5', 'tanpuhui', '2', '{host:172.16.12.105,port:5432,username:postgres,password:postgres,dbName:tanpuhui,sid:null}', 0, '1', '1', 9); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (54, '0', 'admin', '2023-11-07 16:02:35.710417', NULL, 'admin', '2023-11-07 16:07:18.018815', '', '9', 'sptcc_agile_test', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:sptcc_agile_test,sid:null}', 3, '65fde0cf6c', '1', 6); +INSERT INTO tbl_data_metadata_source (source_id, status, create_by, create_time, create_dept, update_by, update_time, remark, db_type, source_name, is_sync, db_schema, version_num, rec_token, del_flag, conn_id) VALUES (51, '0', 'admin', '2023-10-31 20:42:20.807932', NULL, 'admin', '2023-10-31 20:42:25.549616', '', '9', 'import_data', '2', '{host:172.16.12.101,port:10000,username:flink,password:admin123,dbName:import_data,sid:null}', 2, '9d0a2fb49e', '1', 6); + +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (7, '9', '11', 11, '11', '11', 'admin', '2023-09-22 09:49:22.018149', NULL, '2023-09-22 09:49:22.018149', 0, '1', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (8, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'admin', '2023-09-28 11:07:49.794011', NULL, '2023-09-28 11:07:49.794011', 0, '1', '1', '', NULL, 'keliubao', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (10, '5', '172.16.12.105', 54321, 'postgres', 'postgres', 'admin', '2023-10-08 11:32:38.995238', NULL, '2023-10-08 11:32:38.995238', 0, '1', '1', '', NULL, 'keliubao', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (11, '5', '11', 11, '11', '11', 'admin', '2023-10-08 13:18:48.542113', NULL, '2023-10-08 13:18:48.542113', 0, '1', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (12, '5', '11', 11, '11', '11', 'admin', '2023-10-08 13:21:08.891896', NULL, '2023-10-08 13:21:08.891896', 0, '1', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (13, '5', '11', 11, '11', '11', 'admin', '2023-10-08 13:21:25.256004', 'admin', '2023-10-08 13:21:35.27108', 1, 'd1ac38fa1d', '1', '', NULL, '11', NULL); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (6, '9', '172.16.12.101', 10000, 'flink', 'admin123', 'admin', '2023-09-21 15:24:03.985487', 'admin', '2023-09-21 15:24:15.656391', 1, '84b6d704ef', '0', '', NULL, 'default', 'hive测试环境'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (9, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'admin', '2023-09-28 11:16:34.039148', NULL, '2023-09-28 11:16:34.039148', 0, '1', '0', '', NULL, 'keliubao', 'pg测试环境'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (14, '5', '11', 11, '11', '11', 'admin', '2023-10-10 15:02:02.627797', NULL, '2023-10-10 15:02:02.627797', 0, '1', '1', '', NULL, '11', '11'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (15, '9', '11', 11, '11', '11', 'admin', '2023-10-17 20:13:25.056619', NULL, '2023-10-17 20:13:25.056619', 0, '1', '1', '', NULL, '11', '11'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (16, '5', '10.10.241.234', 5432, 'sptcc', 'sptcc123', 'admin', '2023-10-26 10:24:19.491282', NULL, '2023-10-26 10:24:19.491282', 0, '1', '1', '', NULL, 'default', '测试'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (17, '5', '10.10.241.234', 5432, 'root', '123456', 'admin', '2023-10-30 09:43:57.128823', NULL, '2023-10-30 09:43:57.128823', 0, '1', '1', '', NULL, 'default', '测试'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (18, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'admin', '2023-10-30 15:28:13.927447', NULL, '2023-10-30 15:28:13.927447', 0, '1', '1', '', NULL, 'tanpuhui', '碳普惠'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (19, '9', '172.16.12.102', 10000, 'flink', 'flink', 'admin', '2023-10-31 10:36:29.015041', NULL, '2023-10-31 10:36:29.015041', 0, '1', '0', '', NULL, 'default', '172.16.12.102'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (20, '9', '127.0.0.1', 10000, 'root', 'three', 'yts', '2023-11-14 15:59:23.832141', NULL, '2023-11-14 15:59:23.832141', 0, '1', '0', '', NULL, 'db_test', '本地hive'); +INSERT INTO tbl_data_metadata_source_conn (conn_id, db_type, host, port, username, password, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag, remark, sid, init_source, alias_name) VALUES (21, '5', '172.16.12.105', 5432, 'postgres', 'postgres', 'test88', '2023-12-04 18:09:36.76594', NULL, '2023-12-04 18:09:36.76594', 0, '1', '0', '', NULL, 'tanpuhui', 'tanpuhui'); + +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10184, 47, 'gen_table', '代码生成业务表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10185, 47, 'gen_table_column', '代码生成业务表字段', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10186, 47, 'tbl_batch_table_mapping', '【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10187, 47, 'tbl_batch_task', '【批处理任务表】记录任务处理情况,方便实现增量重跑', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10188, 47, 'tbl_data_api', '【API信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10189, 47, 'tbl_data_api_log', '【API调用日志信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10190, 47, 'tbl_data_asset_column', '数据资产基础元数据', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10191, 47, 'tbl_data_asset_table', '数据资产基础表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10192, 47, 'tbl_data_asset_table_column', '数据资产基础表与元数据关联表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10193, 47, 'tbl_data_metadata_column', '【元数据信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10194, 47, 'tbl_data_metadata_source', '【数据源信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10195, 47, 'tbl_data_metadata_source_conn', '数据源连接信息表', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10196, 47, 'tbl_data_metadata_table', '【数据库表信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10197, 47, 'tbl_data_sql_console_conn_num', '数据源连接数', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10198, 47, 'tbl_data_sql_console_export', 'SQL查询导出记录', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10199, 47, 'tbl_data_sql_console_file', '【SQL工作台文件】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10200, 47, 'tbl_data_sql_data_apply', '【SQL元数据权限申请表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10201, 47, 'tbl_data_sql_data_auth', '【元数据授权信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10202, 47, 'tbl_data_sql_log', 'SQL执行日志', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10203, 47, 'tbl_docker_apply_info', '【 容器申请】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10204, 47, 'tbl_docker_apply_lib', '【容器使用自传组件】包含组件和数据', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10205, 47, 'tbl_docker_apply_review', '【 数据注入申请审核表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10206, 47, 'tbl_docker_apply_review_dtl', '【数据注入申请明细】包含组件和数据', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10207, 47, 'tbl_docker_client_info', '【 服务器清单】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10208, 47, 'tbl_docker_config_hardware', '【实验室硬件配置信息表】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10209, 47, 'tbl_docker_download_apply', '【 下载文件申请】容器内的文件下载', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10210, 47, 'tbl_docker_images', '【 容器可用镜像】', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10211, 47, 'tbl_docker_port_list', '【 服务器端口】把可用端口配置在这里,端口是固定的几个', NULL, 9); +INSERT INTO tbl_data_metadata_table (table_id, source_id, table_name, table_comment, create_table_by, conn_id) VALUES (10212, 47, 'tbl_docker_portainer_user', '【portainer管理账户信息】', NULL, 9); + +INSERT INTO tbl_data_sql_console_conn_num (conn_num, max_conn_num, alarm_conn_num) VALUES (0, 10, 5); + + +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (41, 'SqlResult20231102143353.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:33:52', 'admin1', '2023-11-02 14:33:52', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (39, 'SqlResult20231102114325.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 11:43:24', 'admin1', '2023-11-02 11:43:24', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (11, 'SqlResult20231101094957.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-11-01 09:49:55', NULL, '2023-11-01 09:49:55', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (8, 'SqlResult20231101094052.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-11-01 09:40:50', NULL, '2023-11-01 09:40:50', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (6, 'SqlResult20231031201502.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:15:01', NULL, '2023-10-31 20:15:01', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (5, 'SqlResult20231031201104.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:11:04', NULL, '2023-10-31 20:11:04', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (4, 'SqlResult20231031200917.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:09:16', NULL, '2023-10-31 20:09:16', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (3, 'SqlResult20231031200514.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 20:05:14', NULL, '2023-10-31 20:05:14', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (2, 'SqlResult20231031195902.csv', 'SELECT * FROM tbl_data_metadata_source', '1', NULL, 1, 'admin', '2023-10-31 19:59:02', NULL, '2023-10-31 19:59:02', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (42, 'SqlResult20231102143354.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:33:54', 'admin1', '2023-11-02 14:33:54', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (43, 'SqlResult20231102143355.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:33:54', 'admin1', '2023-11-02 14:33:54', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (40, 'SqlResult20231102133131.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 13:31:31', 'admin1', '2023-11-02 13:31:31', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (22, 'SqlResult20231101153511.csv', 'SELECT * FROM tbl_data_metadata_source', '3', NULL, 100015, 'admin2', '2023-11-01 15:35:11', 'admin2', '2023-11-01 15:35:11', 0, '1', '1'); +INSERT INTO tbl_data_sql_console_export (export_id, export_name, sql_text, status, fail_reason, user_id, create_by, create_time, update_by, update_time, version_num, rec_token, del_flag) VALUES (44, 'SqlResult20231102145348.csv', 'SELECT *from teacher;', '2', NULL, 100014, 'admin1', '2023-11-02 14:53:47', 'admin1', '2023-11-02 14:53:47', 0, '1', '1'); + + +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (102, 'cc', 47, 'SELECT * FROM public.tbl_data_metadata_source_conn c +LEFT JOIN public.tbl_data_metadata_source s on c.conn_id = s.conn_id +WHERE ', 0, '1', 'admin', '2023-11-20 13:26:59.541963', NULL, '2023-11-20 13:26:59.541963', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (105, 'cc', 47, 'select * from public.tbl_data_metadata_column', 0, '1', 'yts', '2023-11-30 16:23:01.432052', NULL, '2023-11-30 16:23:01.432052', '0', 100018, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (80, '1111', 31, '', 1, '830435c9ad', 'admin', '2023-10-12 17:37:12.12105', 'admin', '2023-10-12 17:37:16.773115', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (74, 'create', 26, 'CREATE TABLE hive.a1 AS +SELECT + dtrmi.card_no, + dtrmi.txn_amt, + dtrmi.station_code +FROM + sptcc_agile_dev.dim_trade_route_match_info dtrmi + left join sptcc_agile_etl_prod.dim_bus_in_out_time_info dbioti on dtrmi.card_no = dbioti.bus_code +where + dtrmi.txn_date = ''2023-05-15'' +limit + 5', 1, '38819eb29c', 'admin', '2023-09-22 16:47:06.998802', 'admin', '2023-09-22 16:47:18.74358', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (81, 'dd', 31, 'SELECT * FROM tbl_data_api', 1, 'a11e225dbc', 'yts', '2023-10-12 18:15:46.917957', 'yts', '2023-10-12 18:16:07.996606', '0', 100007, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (75, 'zz', 34, 'SELECT * FROM dim_bus_in_out_time_info WHERE bus_stop_date = ''2023-08-25'' ', 15, '3000abc2d3', 'yts', '2023-10-08 14:13:30.000406', 'yts', '2023-10-12 19:26:03.433576', '0', 100007, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (94, 'test2', 38, 'SELECT *from teacher;', 1, '73fdaa9603', 'admin1', '2023-11-02 14:20:32.459908', 'admin1', '2023-11-02 14:20:46.578664', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (82, 'ccc', 34, 'SELECT + * + FROM + dim_bus_in_out_time_info + WHERE + bus_stop_date = ''2023-08-25''', 0, '1', 'jiuyv', '2023-10-12 20:34:49.08329', NULL, '2023-10-12 20:34:49.08329', '0', 100004, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (90, 'test4', 38, 'SELECT *from teacher;', 2, 'ce0c581aee', 'admin1', '2023-11-02 11:42:54.006819', 'admin1', '2023-11-02 11:44:40.502131', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (91, 'test4', 38, 'SELECT *from teacher;', 0, '1', 'admin1', '2023-11-02 13:34:11.199025', NULL, '2023-11-02 13:34:11.199025', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (92, 'test5', 38, NULL, 0, '1', 'admin1', '2023-11-02 13:34:39.069415', NULL, '2023-11-02 13:34:39.069415', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (83, 'test', 38, 'create table hive.test10 as select * from hive.stu', 1, 'c3d502b197', 'admin1', '2023-10-18 14:10:19.983275', 'admin1', '2023-11-02 14:19:53.821504', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (93, 'test1', 38, 'select t1.* from test1 t1 left join teacher t on t1.name = t.name;', 1, '56c680f79e', 'admin1', '2023-11-02 14:20:08.552399', 'admin1', '2023-11-02 14:20:26.168755', '1', 100014, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (87, 'cc', 47, 'SELECT * FROM public.tbl_sys_user u +LEFT JOIN test.tbl_sys_user_role r ON u.user_id = r.user_id', 0, '1', 'admin', '2023-10-30 16:45:57.625688', NULL, '2023-10-30 16:45:57.625688', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (78, '测试', 34, 'SELECT * FROM dws_line_metric_day WHERE metric_date = ''2023-08-25''', 0, '1', 'admin1', '2023-10-12 15:32:26.121081', NULL, '2023-10-12 15:32:26.121081', '0', 100013, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (79, 'jj', 34, NULL, 0, '1', 'admin1', '2023-10-12 15:34:07.301649', NULL, '2023-10-12 15:34:07.301649', '0', 100013, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (85, 'test', 41, 'SELECT * FROM db_hive1.test7', 2, '81c96a3eac', 'admin', '2023-10-19 16:21:31.922766', 'admin', '2023-10-19 19:11:17.015751', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (89, 'cc', 47, 'SELECT * FROM tbl_data_metadata_source', 0, '1', 'admin2', '2023-11-01 14:54:25.996942', NULL, '2023-11-01 14:54:25.996942', '0', 100015, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (84, 'ggg', 37, NULL, 0, '1', 'admin', '2023-10-19 14:31:46.851857', NULL, '2023-10-19 14:31:46.851857', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (76, '测试', 35, 'SELECT * FROM tbl_data_api', 2, '5bdab2b436', 'admin', '2023-10-11 15:45:12.772076', 'admin', '2023-10-30 09:57:52.527044', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (77, '测试2', 37, 'SELECT * FROM stu', 17, '43e0299bfa', 'admin', '2023-10-11 15:45:28.621678', 'admin', '2023-10-17 17:41:40.194213', '1', 1, 0, '1', 6); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (86, 'dc', 42, 'DROP TABLE test', 0, '1', 'admin', '2023-10-27 17:31:14.687651', NULL, '2023-10-27 17:31:14.687651', '1', 1, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (95, 'ccc', 47, 'SELECT * FROM tbl_data_metadata_source', 4, '99cf7fce31', 'yts', '2023-11-06 14:24:54.337601', 'yts', '2023-11-20 17:43:24.131415', '0', 100018, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (103, 'cc', 56, '', 0, '1', 'yts', '2023-11-23 17:42:36.510525', NULL, '2023-11-23 17:42:36.510525', '0', 100018, 0, '1', 9); +INSERT INTO tbl_data_sql_console_file (file_id, name, source_id, sql_text, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, user_id, pid, type, conn_id) VALUES (104, 'cc', 47, 'select * from public.tbl_data_metadata_column', 0, '1', 'test02', '2023-11-29 20:22:34.678061', NULL, '2023-11-29 20:22:34.678061', '0', 100023, 0, '1', 9); + + +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (71, 100013, '1', '2023-10-15', NULL, '1', 'yts', 1, '813ead4853', '0', 'admin1', '2023-10-12 15:24:11', 'yts', '2023-10-12 16:54:44', '', NULL, 'admin1', '2023-10-12 16:54:44', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (79, 100004, '1', '2023-10-26', NULL, '1', 'jiuyv', 1, '5c34c51b4b', '0', 'jiuyv', '2023-10-12 19:18:57', 'jiuyv', '2023-10-12 19:19:27', '', NULL, 'jiuyv', '2023-10-12 19:19:27', 'SAN000000000000078'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (81, 100015, '1', '2023-10-20', NULL, '1', 'admin2', 1, '6f7e9226f3', '0', 'admin2', '2023-10-16 13:28:36', 'admin2', '2023-10-16 13:28:41', '', NULL, 'admin2', '2023-10-16 13:28:41', 'SAN000000000000080'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (83, 100014, '1', '2023-10-31', 'qqq', '1', 'admin1', 1, '7bfd99082b', '0', 'admin1', '2023-10-16 16:41:40', 'admin1', '2023-10-16 16:41:45', '', NULL, 'admin1', '2023-10-16 16:41:45', 'SAN000000000000082'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (85, 100015, '1', '2023-10-31', NULL, '1', 'admin2', 1, '1087e238f4', '0', 'admin2', '2023-10-17 20:46:31', 'admin2', '2023-10-17 20:46:39', '', NULL, 'admin2', '2023-10-17 20:46:39', 'SAN000000000000084'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (87, 100014, '1', '2023-10-20', NULL, '1', 'admin1', 1, '216aba0601', '0', 'admin1', '2023-10-18 14:10:40', 'admin1', '2023-10-18 14:10:46', '', NULL, 'admin1', '2023-10-18 14:10:46', 'SAN000000000000086'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (91, 2, '1', '2025-10-31', 't', '1', 'zhoul', 1, 'cb9076d296', '0', 'zhoul', '2023-10-30 14:54:37', 'zhoul', '2023-10-30 14:54:54', '', NULL, 'zhoul', '2023-10-30 14:54:54', 'SAN000000000000090'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (77, 100007, '1', '2024-10-10', NULL, '2', 'admin1', 1, 'fb94e80210', '0', 'yts', '2023-10-12 16:54:57', 'admin1', '2023-11-01 14:52:53', '', 'ceshi ', 'yts', '2023-11-01 14:52:53', 'SAN000000000000076'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (93, 100015, '1', '2024-11-14', NULL, '1', 'admin1', 1, '83b4a70fbc', '0', 'admin2', '2023-11-01 14:48:46', 'admin1', '2023-11-01 14:52:56', '', NULL, 'admin2', '2023-11-01 14:52:56', 'SAN000000000000092'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (89, 100014, '1', '2023-11-01', NULL, '1', 'admin1', 1, '592ac1d40e', '0', 'admin1', '2023-10-30 10:03:52', 'admin1', '2023-11-01 14:52:58', '', NULL, 'admin1', '2023-11-01 14:52:58', 'SAN000000000000088'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (95, 100014, '1', '2023-11-17', NULL, '2', 'admin1', 1, 'cf075c055b', '0', 'admin1', '2023-11-01 14:53:13', 'admin1', '2023-11-01 14:53:31', '', 'ds ', 'admin1', '2023-11-01 14:53:31', 'SAN000000000000094'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (67, 100007, '1', '2024-10-23', NULL, '1', 'admin', 1, '9627b56093', '0', 'yts', '2023-10-08 14:03:43', 'admin', '2023-10-08 14:04:38', '', NULL, 'yts', '2023-10-08 14:04:38', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (68, 100007, '1', '2024-10-24', NULL, '1', 'yts', 1, '8a383799e9', '0', 'yts', '2023-10-11 16:44:11', 'yts', '2023-10-11 16:44:22', '', NULL, 'yts', '2023-10-11 16:44:22', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (69, 100013, '1', '2023-10-15', NULL, '1', 'admin1', 1, '04fadafe5e', '0', 'admin1', '2023-10-12 15:14:09', 'admin1', '2023-10-12 15:14:19', '', NULL, 'admin1', '2023-10-12 15:14:19', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (70, 100013, '1', '2023-10-15', NULL, '1', 'admin1', 1, '7aa63e6dcb', '0', 'admin1', '2023-10-12 15:19:50', 'admin1', '2023-10-12 15:20:56', '', NULL, 'admin1', '2023-10-12 15:20:56', NULL); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (97, 100014, '1', '2023-11-30', NULL, '1', 'admin1', 1, 'c08a95154d', '0', 'admin1', '2023-11-01 14:53:39', 'admin1', '2023-11-01 14:53:50', '', NULL, 'admin1', '2023-11-01 14:53:50', 'SAN000000000000096'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (73, 100007, '1', '2023-10-06', NULL, '2', 'admin', 1, '3537d64e36', '0', 'yts', '2023-10-12 15:49:06', 'admin', '2023-10-12 15:59:44', '', NULL, 'yts', '2023-10-12 15:59:44', 'SAN000000000000072'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (75, 100007, '1', '2024-10-10', NULL, '1', 'yts', 1, '89653e61e2', '0', 'yts', '2023-10-12 16:00:10', 'yts', '2023-10-12 16:00:38', '', NULL, 'yts', '2023-10-12 16:00:38', 'SAN000000000000074'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (99, 100014, '1', '2023-11-30', NULL, '1', 'admin1', 1, '93ab52d433', '0', 'admin1', '2023-11-02 11:38:27', 'admin1', '2023-11-02 11:38:31', '', NULL, 'admin1', '2023-11-02 11:38:31', 'SAN000000000000098'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (103, 100018, '1', '2023-11-04', NULL, '2', 'yts', 1, '5f193314c1', '0', 'yts', '2023-11-03 17:16:01', 'yts', '2023-11-03 17:16:46', '', '不允许', 'yts', '2023-11-03 17:16:46', 'SAN000000000000102'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (105, 100018, '1', '2023-11-10', '这里是申请说明,怎么就没有了', '1', 'yts', 1, '980f40c408', '0', 'yts', '2023-11-03 17:19:08', 'yts', '2023-11-06 14:24:14', '', NULL, 'yts', '2023-11-06 14:24:14', 'SAN000000000000104'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (101, 100014, '1', '2023-11-30', NULL, '2', 'admin', 1, 'f99c7a6cfb', '0', 'admin1', '2023-11-02 14:28:07', 'admin', '2023-11-07 15:55:53', '', '不允许申请', 'admin1', '2023-11-07 15:55:53', 'SAN000000000000100'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (107, 100018, '1', '2024-11-14', NULL, '1', 'yts', 1, 'a068dd0cb2', '0', 'yts', '2023-11-10 10:24:16', 'yts', '2023-11-10 10:24:22', '', NULL, 'yts', '2023-11-10 10:24:22', 'SAN000000000000106'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (109, 100018, '1', '2023-11-11', NULL, '1', 'yts', 1, '15ae580f58', '0', 'yts', '2023-11-10 17:39:26', 'yts', '2023-11-10 17:39:31', '', NULL, 'yts', '2023-11-10 17:39:31', 'SAN000000000000108'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (111, 100018, '1', '2024-11-07', NULL, '1', 'yts', 1, '335fb951d4', '0', 'yts', '2023-11-14 16:23:15', 'yts', '2023-11-14 16:23:21', '', NULL, 'yts', '2023-11-14 16:23:21', 'SAN000000000000110'); +INSERT INTO tbl_data_sql_data_apply (apply_id, user_id, data_check_strictly, end_time, explain, status, reviewer, version_num, rec_token, del_flag, create_by, create_time, update_by, update_time, remark, reason, user_name, review_time, apply_no) VALUES (113, 100018, '1', '2024-11-13', NULL, '1', 'yts', 1, 'e0fb91968c', '0', 'yts', '2023-11-14 17:22:58', 'yts', '2023-11-14 17:23:05', '', NULL, 'yts', '2023-11-14 17:23:05', 'SAN000000000000112'); + + +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (9, 100015, 'conn', 81, 0, 'pg测试环境'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (35, 100015, 'database', 81, 9, 'keliubao'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3697, 100015, 'table', 81, 35, 'gen_table(代码生成业务表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3698, 100015, 'table', 81, 35, 'gen_table_column(代码生成业务表字段)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3699, 100015, 'table', 81, 35, 'tbl_batch_table_mapping(【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3700, 100015, 'table', 81, 35, 'tbl_batch_task(【批处理任务表】记录任务处理情况,方便实现增量重跑)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3701, 100015, 'table', 81, 35, 'tbl_data_api(【API信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3702, 100015, 'table', 81, 35, 'tbl_data_api_log(【API调用日志信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3703, 100015, 'table', 81, 35, 'tbl_data_asset_column(数据资产基础元数据)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3704, 100015, 'table', 81, 35, 'tbl_data_asset_table(数据资产基础表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3705, 100015, 'table', 81, 35, 'tbl_data_asset_table_column(数据资产基础表与元数据关联表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3706, 100015, 'table', 81, 35, 'tbl_data_config(【api参数配置表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3707, 100015, 'table', 81, 35, 'tbl_data_metadata_column(【元数据信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3708, 100015, 'table', 81, 35, 'tbl_data_metadata_source(【数据源信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3709, 100015, 'table', 81, 35, 'tbl_data_metadata_source_conn(数据源连接信息表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3710, 100015, 'table', 81, 35, 'tbl_data_metadata_table(【数据库表信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3711, 100015, 'table', 81, 35, 'tbl_data_quality_report(数据质量报表)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3712, 100015, 'table', 81, 35, 'tbl_data_sql_console_conn_num(数据源连接数)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3713, 100015, 'table', 81, 35, 'tbl_data_sql_console_file(【SQL工作台文件】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3714, 100015, 'table', 81, 35, 'tbl_data_sql_data_apply(【SQL元数据权限申请表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3715, 100015, 'table', 81, 35, 'tbl_data_sql_data_auth(【元数据授权信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3716, 100015, 'table', 81, 35, 'tbl_data_sql_log(SQL执行日志)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3717, 100015, 'table', 81, 35, 'tbl_docker_apply_info(【 容器申请】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3718, 100015, 'table', 81, 35, 'tbl_docker_apply_lib(【容器使用自传组件】包含组件和数据)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3719, 100015, 'table', 81, 35, 'tbl_docker_client_info(【 服务器清单】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3720, 100015, 'table', 81, 35, 'tbl_docker_config_hardware(【实验室硬件配置信息表】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3721, 100015, 'table', 81, 35, 'tbl_docker_download_apply(【 下载文件申请】容器内的文件下载)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3722, 100015, 'table', 81, 35, 'tbl_docker_images(【 容器可用镜像】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3724, 100015, 'table', 81, 35, 'tbl_docker_portainer_user(【portainer管理账户信息】)'); +INSERT INTO tbl_data_sql_data_auth (object_id, user_id, object_type, apply_id, par_id, object_name) VALUES (3723, 100015, 'table', 81, 35, 'tbl_docker_port_list(【 服务器端口】把可用端口配置在这里,端口是固定的几个)'); + + +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14680, '9 ', 'default', 'CREATE table IF NOT EXISTS default.linl_tj_20230627 as select card_no, txn_counter, replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') as station_code, txn_time, card_product_code, txn_amt, inout_flag, hour_code, txn_nature from sptcc.dwd_consum_trans dct where txn_date = ''20230627'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code = 21', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:308 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:09.049', '2023-09-11 13:52:09.185', 136); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14681, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_metrochain as select distinct a.card_no, a.in_code, case when MINUTE (in_time)<30 then in_hour||'':00-''||in_hour||'':30'' else in_hour||'':30-''||int(in_hour)+1||'':00'' end as in_time_interval, a.in_time,a.in_amt,a.in_nature, a.out_code, case when MINUTE(out_time)<30 then out_hour||'':00-''||out_hour||'':30'' else out_hour||'':30-''||int(out_hour)+1||'':00'' end as out_time_interval, a.out_time, a.out_amt ,a.out_nature from ( select card_no, txn_counter as in_count, station_code as in_code, txn_time as in_time, txn_amt as in_amt, hour_code as in_hour, txn_nature as in_nature, lead(txn_counter,1,null) over (partition by card_no order by txn_time) as out_count, lead(station_code,1,null) over (partition by card_no order by txn_time) as out_code, lead(txn_time,1,null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt,1,null) over (partition by card_no order by txn_time) as out_amt, lead(hour_code,1,null) over (partition by card_no order by txn_time) as out_hour, lead(txn_nature,1,null) over (partition by card_no order by txn_time) as out_nature from default.linl_tj_20230627 )a where a.in_amt = 0 and a.out_amt is not null and (out_amt <> 0 or (out_code = in_code + 1 and in_code <> out_code)) ', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1147 Table not found ''linl_tj_20230627''', '2023-09-11 13:52:10.056', '2023-09-11 13:52:10.088', 32); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14682, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdchain as select distinct a.card_no, a.yh_nature, b.stattion_name as in_station_name, a.in_time, a.in_time_interval, c.stattion_name as out_station_name, a.out_time, a.out_time_interval from (select card_no, out_nature as yh_nature, in_code, in_time, in_time_interval, out_code, out_time, out_time_interval from default.linl_tj_metrochain where in_code = ''263'' or out_code = ''263'') a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:568 Table not found ''linl_tj_metrochain''', '2023-09-11 13:52:11.066', '2023-09-11 13:52:11.082', 16); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14683, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdage as select distinct a.card_no, a.yh_nature, b.age, a.in_station_name, a.in_time_interval, a.out_station_name, a.out_time_interval from default.linl_tj_pdchain a left join sptcc.dwd_userport_realcardproduct b', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:282 Table not found ''linl_tj_pdchain''', '2023-09-11 13:52:12.074', '2023-09-11 13:52:12.099', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14684, '9 ', 'default', ' create table IF NOT EXISTS linl_tj_incorrect as select card_no, exchange_mark, in_station_name, in_time_interval, out_station_name, out_time_interval, count(distinct age) as mark from default.linl_tj_airline group by card_no, exchange_mark, in_station_name, in_time_interval, out_station_name, out_time_interval having count(distinct age) > 1', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:228 Table not found ''linl_tj_airline''', '2023-09-11 13:52:13.089', '2023-09-11 13:52:13.116', 27); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14685, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_result as select distinct card_no, case when mark is not null then '' '' else age end as agerange, exchange_mark, in_station_name, in_time_interval, out_station_name, out_time_interval from (select a.*, b.mark from default.linl_tj_airline a left join default.linl_tj_incorrect b on a.card_no = b.card_no and a.in_station_name = b.in_station_name and a.in_time_interval = b.in_time_interval and a.out_time_interval = b.out_time_interval) c', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:361 Table not found ''linl_tj_airline''', '2023-09-11 13:52:14.093', '2023-09-11 13:52:14.109', 16); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14686, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515 as select card_no, txn_counter, settle_center_code as hy, device_code, txn_time, txn_code, settle_date, card_product_code, txn_amt, inout_flag, station_code as station_code_ys, case when settle_center_code = 21 then replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') else station_code end as station_code_tz, txn_nature, txn_date from sptcc.dwd_consum_trans dct where txn_date = ''20230515'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code in (77, 21)', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:550 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:15.106', '2023-09-11 13:52:15.127', 21); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14687, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515_metrochain as select distinct a.card_no, a.card_product_code, a.txn_date, a.in_counter, a.in_time, a.in_amt, a.in_station_code, a.out_counter, a.out_station_code, a.out_time, a.out_amt from (select distinct card_no, card_product_code, txn_date, txn_counter as in_counter, txn_time as in_time, txn_amt as in_amt, station_code_tz as in_station_code, lead(txn_counter, 1, null) over (partition by card_no order by txn_time) as out_counter, lead(station_code_tz, 1, null) over (partition by card_no order by txn_time) as out_station_code, lead(txn_time, 1, null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt, 1, null) over (partition by card_no order by txn_time) as out_amt from default.linl_consum_20230515 where hy = 21) a where a.in_amt = 0 and a.out_amt is not null and a.out_amt != 0', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1132 Table not found ''linl_consum_20230515''', '2023-09-11 13:52:16.109', '2023-09-11 13:52:16.135', 26); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14696, '9 ', 'default', ' ', '2', '查询失败:Error while compiling statement: FAILED: ParseException line 1:1 cannot recognize input near '''' '''' ''''', '2023-09-11 13:52:25.187', '2023-09-11 13:52:25.212', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14688, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515_od as select a.in_station_code, a.out_station_code, count(*) as num from (select distinct * from default.linl_consum_20230515_metrochain where in_station_code <> out_station_code) a group by a.in_station_code, a.out_station_code', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:155 Table not found ''linl_consum_20230515_metrochain''', '2023-09-11 13:52:17.117', '2023-09-11 13:52:17.142', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14689, '9 ', 'default', ' create table IF NOT EXISTS default.linl_consum_20230515_od_distance as select d.*, e.metro_distance from (select a.in_station_code, a.out_station_code, a.num, b.stattion_name as in_station_name, c.stattion_name as out_station_name from default.linl_consum_20230515_od a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_station_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_station_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')) d left join dim.od e on d.in_station_name = e.in_station and d.out_station_name = e.out_station', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:751 Table not found ''od''', '2023-09-11 13:52:18.129', '2023-09-11 13:52:18.154', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14690, '9 ', 'default', ' select card_no, txn_counter, replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') as station_code, txn_time, card_product_code, txn_amt, inout_flag, hour_code, txn_nature from sptcc.dwd_consum_trans dct where txn_date = ''20230627'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code = 21', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:256 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:19.14', '2023-09-11 13:52:19.162', 22); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14691, '9 ', 'default', ' select distinct a.card_no, a.in_code, case when MINUTE (in_time)<30 then in_hour||'':00-''||in_hour||'':30'' else in_hour||'':30-''||int(in_hour)+1||'':00'' end as in_time_interval, a.in_time,a.in_amt,a.in_nature, a.out_code, case when MINUTE(out_time)<30 then out_hour||'':00-''||out_hour||'':30'' else out_hour||'':30-''||int(out_hour)+1||'':00'' end as out_time_interval, a.out_time, a.out_amt ,a.out_nature from ( select card_no, txn_counter as in_count, station_code as in_code, txn_time as in_time, txn_amt as in_amt, hour_code as in_hour, txn_nature as in_nature, lead(txn_counter,1,null) over (partition by card_no order by txn_time) as out_count, lead(station_code,1,null) over (partition by card_no order by txn_time) as out_code, lead(txn_time,1,null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt,1,null) over (partition by card_no order by txn_time) as out_amt, lead(hour_code,1,null) over (partition by card_no order by txn_time) as out_hour, lead(txn_nature,1,null) over (partition by card_no order by txn_time) as out_nature from default.linl_tj_20230627 )a where a.in_amt = 0 and a.out_amt is not null and (out_amt <> 0 or (out_code = in_code + 1 and in_code <> out_code)) ', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1090 Table not found ''linl_tj_20230627''', '2023-09-11 13:52:20.142', '2023-09-11 13:52:20.166', 24); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14692, '9 ', 'default', ' select distinct a.card_no, a.yh_nature, b.stattion_name as in_station_name, a.in_time, a.in_time_interval, c.stattion_name as out_station_name, a.out_time, a.out_time_interval from (select card_no, out_nature as yh_nature, in_code, in_time, in_time_interval, out_code, out_time, out_time_interval from default.linl_tj_metrochain where in_code = ''263'' or out_code = ''263'') a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:514 Table not found ''linl_tj_metrochain''', '2023-09-11 13:52:21.147', '2023-09-11 13:52:21.172', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14693, '9 ', 'default', ' select card_no, txn_counter, settle_center_code as hy, device_code, txn_time, txn_code, settle_date, card_product_code, txn_amt, inout_flag, station_code as station_code_ys, case when settle_center_code = 21 then replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') else station_code end as station_code_tz, txn_nature, txn_date from sptcc.dwd_consum_trans dct where txn_date = ''20230515'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code in (77, 21)', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:490 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:22.154', '2023-09-11 13:52:22.176', 22); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14694, '9 ', 'default', ' select distinct a.card_no, a.card_product_code, a.txn_date, a.in_counter, a.in_time, a.in_amt, a.in_station_code, a.out_counter, a.out_station_code, a.out_time, a.out_amt from (select distinct card_no, card_product_code, txn_date, txn_counter as in_counter, txn_time as in_time, txn_amt as in_amt, station_code_tz as in_station_code, lead(txn_counter, 1, null) over (partition by card_no order by txn_time) as out_counter, lead(station_code_tz, 1, null) over (partition by card_no order by txn_time) as out_station_code, lead(txn_time, 1, null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt, 1, null) over (partition by card_no order by txn_time) as out_amt from default.linl_consum_20230515 where hy = 21) a where a.in_amt = 0 and a.out_amt is not null and a.out_amt != 0', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1062 Table not found ''linl_consum_20230515''', '2023-09-11 13:52:23.165', '2023-09-11 13:52:23.19', 25); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14695, '9 ', 'default', ' select d.*, e.metro_distance from (select a.in_station_code, a.out_station_code, a.num, b.stattion_name as in_station_name, c.stattion_name as out_station_name from default.linl_consum_20230515_od a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_station_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_station_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')) d left join dim.od e on d.in_station_name = e.in_station and d.out_station_name = e.out_station', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:680 Table not found ''od''', '2023-09-11 13:52:24.169', '2023-09-11 13:52:24.218', 49); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14697, '9 ', 'default', 'CREATE table IF NOT EXISTS default.linl_tj_20230627 as select card_no, txn_counter, replace(ltrim(replace(substring(device_code, 2, 4), ''0'', '' '')), '' '', ''0'') as station_code, txn_time, card_product_code, txn_amt, inout_flag, hour_code, txn_nature from sptcc.dwd_consum_trans dct where txn_date = ''20230627'' and txn_code = ''8451'' and txn_nature <> ''43'' and settle_center_code = 21', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:308 Table not found ''dwd_consum_trans''', '2023-09-11 13:52:26.198', '2023-09-11 13:52:26.224', 26); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14698, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_metrochain as select distinct a.card_no, a.in_code, case when MINUTE (in_time)<30 then in_hour||'':00-''||in_hour||'':30'' else in_hour||'':30-''||int(in_hour)+1||'':00'' end as in_time_interval, a.in_time,a.in_amt,a.in_nature, a.out_code, case when MINUTE(out_time)<30 then out_hour||'':00-''||out_hour||'':30'' else out_hour||'':30-''||int(out_hour)+1||'':00'' end as out_time_interval, a.out_time, a.out_amt ,a.out_nature from ( select card_no, txn_counter as in_count, station_code as in_code, txn_time as in_time, txn_amt as in_amt, hour_code as in_hour, txn_nature as in_nature, lead(txn_counter,1,null) over (partition by card_no order by txn_time) as out_count, lead(station_code,1,null) over (partition by card_no order by txn_time) as out_code, lead(txn_time,1,null) over (partition by card_no order by txn_time) as out_time, lead(txn_amt,1,null) over (partition by card_no order by txn_time) as out_amt, lead(hour_code,1,null) over (partition by card_no order by txn_time) as out_hour, lead(txn_nature,1,null) over (partition by card_no order by txn_time) as out_nature from default.linl_tj_20230627 )a where a.in_amt = 0 and a.out_amt is not null and (out_amt <> 0 or (out_code = in_code + 1 and in_code <> out_code)) ', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:1147 Table not found ''linl_tj_20230627''', '2023-09-11 13:52:27.212', '2023-09-11 13:52:27.238', 26); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14699, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdchain as select distinct a.card_no, a.yh_nature, b.stattion_name as in_station_name, a.in_time, a.in_time_interval, c.stattion_name as out_station_name, a.out_time, a.out_time_interval from (select card_no, out_nature as yh_nature, in_code, in_time, in_time_interval, out_code, out_time, out_time_interval from default.linl_tj_metrochain where in_code = ''263'' or out_code = ''263'') a left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') b on a.in_code = replace(ltrim(replace(b.station_code, ''0'', '' '')), '' '', ''0'') left join (select * from sptcc.dim_metro where line_name not like ''%奉浦%'') c on a.out_code = replace(ltrim(replace(c.station_code, ''0'', '' '')), '' '', ''0'')', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:568 Table not found ''linl_tj_metrochain''', '2023-09-11 13:52:28.219', '2023-09-11 13:52:28.246', 27); +INSERT INTO tbl_data_sql_log (sql_log_id, db_type, db_name, sql_text, status, fail_reason, start_time, end_time, total_times) VALUES (14700, '9 ', 'default', ' create table IF NOT EXISTS default.linl_tj_pdage as select distinct a.card_no, a.yh_nature, b.age, a.in_station_name, a.in_time_interval, a.out_station_name, a.out_time_interval from default.linl_tj_pdchain a left join sptcc.dwd_userport_realcardproduct b', '2', '查询失败:Error while compiling statement: FAILED: SemanticException [Error 10001]: Line 1:282 Table not found ''linl_tj_pdchain''', '2023-09-11 13:52:29.228', '2023-09-11 13:52:29.25', 22); + +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000035, 1, '688f82be8d', 2, '2023100000000005', '测试1', '测试演示实验室功能', '测试002', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', NULL, NULL, NULL, '1', NULL, '1', '15', '是的是的', 0, '02', NULL, '0', '00', '99', '100014', 'admin1', '2023-10-30 15:50:00', '100014', 'admin1', '2023-10-30 15:53:39', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000036, 3, '7069e783ed', 2, '2023100000000005', '测试1', 'SSD', '演示002', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-10-30 15:54:28', '2023-11-29 15:54:28', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-10-30 15:52:46', '100014', 'admin1', '2023-10-30 15:54:30', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000034, 3, '5c7cd0582c', 2, '2023060000000002', '张三丰', '演示', '演示001', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-10-26 19:32:28', '2023-11-25 19:32:28', NULL, '1', NULL, '1', '15', NULL, 0, '01', NULL, '1', '07', '00', '2', '管理员', '2023-10-26 09:41:04', '2', '管理员', '2023-10-26 19:32:31', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000037, 3, '97e3c3fc0d', 2, '2023060000000002', '张三丰', '颠三倒四', '测试', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-11-02 16:28:35', '2023-12-03 16:28:35', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-10-31 15:13:36', '100014', 'admin1', '2023-11-02 16:28:37', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000040, 2, '817b66e2f1', 2, '2023110000000009', '刘总', '演示', '客户演示', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-11-07 16:06:58', '2023-12-08 16:06:58', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '02', '00', '1', '管理员', '2023-11-07 16:06:54', '1', '管理员', '2023-11-07 16:07:04', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000038, 3, '0bc9605c8f', 2, '2023060000000002', '张三丰', '是的是的', '测试004', 'jupyter', 'jupyterlab-py310:0.0.1', '30', 'day', '2023-11-02 16:43:38', '2023-12-03 16:43:38', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-11-02 16:43:31', '100014', 'admin1', '2023-11-02 16:43:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000041, 2, '450443d1dd', 2, '2023060000000002', '张三丰', 'z', 'zeppelin(测试)', 'zeppelin', 'zeppelin-py39:0.0.1', '30', 'day', '2023-11-13 16:32:28', '2023-12-14 16:32:28', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '02', '00', '2', '管理员', '2023-11-13 16:31:53', '2', '管理员', '2023-11-13 16:32:29', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000042, 3, '1d88445b5d', 2, '1', '门户管理员', 'aabb', '测试', 'jupyter', 'jupyterlab-py310:0.0.1', '10', 'day', '2023-11-14 13:27:41', '2023-11-25 13:27:41', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100016', 'admin55', '2023-11-14 13:27:33', '100016', 'admin55', '2023-11-14 13:27:42', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000043, 2, 'd91ff197eb', 2, '1', '门户管理员', 'aabbcc', '测试03', 'jupyter', 'jupyterlab-py310:0.0.1', '6', 'day', '2023-11-16 13:47:54', '2023-11-23 13:47:54', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '02', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000039, 3, 'f61d2a0c24', 2, '2023060000000002', '张三丰', '是的是的', '测试005', 'jupyter', 'jupyterlab-py310:0.0.1', '12', 'day', '2023-11-02 16:47:17', '2023-11-15 16:47:17', NULL, '1', NULL, '1', '15', NULL, 0, '02', NULL, '1', '07', '00', '100014', 'admin1', '2023-11-02 16:47:14', '100014', 'admin1', '2023-11-02 16:47:19', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_info (apply_id, version_num, rec_token, docker_server_id, apply_user_id, apply_user_name, apply_desc, lab_title, service_type, docker_image_name, usage_time, usage_time_unit, start_date, end_date, delay_times, cpu_limits, cpu_seq, memory_limits, disc_limits, remarks, order_num, review_status, review_desc, release_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023070000000016, 99, '01b959f150', 2, '1', '门户管理员', '测试(别用)', '测试(别用)', 'jupyter', 'jupyterlab-py310:0.0.1', '11', 'day', '2023-10-19 17:35:11', '2023-11-21 17:35:11', NULL, '1', NULL, '1', '15', NULL, 0, '02', '', '0', '00', '00', '100004', '测试1', '2023-07-06 13:44:33', '2', '管理员', '2023-10-19 17:35:13', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (76, 4, '7d848f5da3', 2023070000000016, 'python', '222', 182, '1', 1, '02', NULL, NULL, NULL, '00', '99', '1', 'admin', '2023-10-18 13:36:13', '2', '管理员', '2023-10-19 14:17:57', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (81, 0, '89bbf1d6ea', 2023070000000016, 'data', '222', 183, '1', 0, '01', NULL, NULL, NULL, '00', '00', '1', 'admin', '2023-10-25 13:36:24', '1', 'admin', '2023-10-25 13:36:24', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (77, 26, 'a81ad3dce0', 2023070000000016, 'data', '222', 183, '1', 2, '02', NULL, 'ccic.zip', '同名文件已覆盖', '05', '99', '1', 'admin', '2023-10-18 13:36:13', '2', '管理员', '2023-11-01 12:20:23', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (88, 1, '8296c8c122', 2023100000000037, 'data', '需要切换组件类型', 248, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '100014', 'admin1', '2023-11-02 16:31:28', '100014', 'admin1', '2023-11-02 16:31:32', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (99, 1, 'fbb47507e7', 2023110000000040, 'data', '1', 279, '1', 4, '02', NULL, 'member - 副本.csv', NULL, '02', '00', '2', '管理员', '2023-11-22 09:41:51', '2', '管理员', '2023-11-22 09:41:52', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (89, 3, '5e3e2ed2ef', 2023110000000038, 'data', '打算', 250, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '100014', 'admin1', '2023-11-02 16:43:31', '2', '管理员', '2023-11-13 16:21:47', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (90, 7, '07e275f2ab', 2023110000000039, 'data', '大萨达', 251, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '100014', 'admin1', '2023-11-02 16:47:14', '2', '管理员', '2023-11-13 17:06:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (92, 1, '4a3a41495f', 2023110000000043, 'data', 'aa', 272, '1', 1, '02', NULL, NULL, NULL, '01', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:54', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (93, 1, '4a3a41495f', 2023110000000043, 'data', 'cc', 273, '1', 2, '02', NULL, NULL, NULL, '01', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:54', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (94, 1, '4a3a41495f', 2023110000000043, 'data', 'ddd', 274, '1', 3, '02', NULL, NULL, NULL, '01', '00', '100016', 'admin55', '2023-11-16 13:47:37', '100016', 'admin55', '2023-11-16 13:47:54', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (87, 3, '2b28228dc0', 2023070000000016, 'data', '1', 245, '1', 7, '02', NULL, 'ruoyi生成代码.zip', NULL, '00', '00', '2', '管理员', '2023-11-01 10:30:07', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (85, 3, '758f9a69ce', 2023070000000016, 'python', '222', 182, '1', 6, '02', NULL, NULL, '同名文件已覆盖', '00', '00', '1', '管理员', '2023-10-31 16:03:07', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (84, 3, 'db807d6f55', 2023070000000016, 'data', '222', 183, '1', 5, '02', NULL, 'ccic.zip', '同名文件已覆盖', '00', '00', '1', '管理员', '2023-10-31 16:03:07', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (78, 24, '74bd16eb14', 2023070000000016, 'python', 'py', 234, '1', 3, '02', NULL, 'anyio-4.0.0-py3-none-any.whl,certifi-2023.7.22-py3-none-any.whl,exceptiongroup-1.1.3-py3-none-any.whl,h11-0.14.0-py3-none-any.whl,httpcore-0.18.0-py3-none-any.whl,httpx-0.25.0-py3-none-any.whl,idna-3.4-py3-none-any.whl,sniffio-1.3.0-py3-none-any.whl', '', '00', '00', '2', '管理员', '2023-10-19 09:36:38', '2', '管理员', '2023-11-01 12:00:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (91, 8, '916eae61c1', 2023110000000040, 'data', '演示csv', 252, '1', 1, '02', NULL, 'SqlResult20231102114325.csv', NULL, '02', '00', '1', '管理员', '2023-11-07 16:06:54', '2', '管理员', '2023-11-22 09:41:52', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (98, 3, '4eb4db2927', 2023110000000040, 'data', '1', 278, '1', 3, '02', NULL, '测试4 - 测试.txt', NULL, '02', '00', '2', '管理员', '2023-11-22 09:36:38', '2', '管理员', '2023-11-23 11:05:08', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (95, 5, '9aeeaab70c', 2023110000000040, 'data', '1', 275, '1', 2, '02', NULL, '测试3.txt', NULL, '02', '00', '2', '管理员', '2023-11-22 09:31:20', '2', '管理员', '2023-11-23 11:12:08', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (96, 6, 'db18305d9f', 2023110000000041, 'data', '1', 276, '1', 1, '02', NULL, '测试3 - 副本.txt', '同名文件已覆盖', '05', '99', '2', '管理员', '2023-11-22 09:34:52', '2', '管理员', '2023-11-23 11:50:41', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_lib (apply_lib_id, version_num, rec_token, apply_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, plugin_names, handle_result, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (97, 3, '837830b82a', 2023110000000041, 'data', '1', 277, '1', 2, '02', NULL, '测试3 - 副本.txt', NULL, '02', '00', '2', '管理员', '2023-11-22 09:35:16', '2', '管理员', '2023-11-28 17:37:23', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2, 1, 'bb447f868e', '测试', 2023070000000016, '测试', '1', '门户管理员', 'aacc', 0, '01', '11', '00', '1', '门户管理员', '2023-10-24 16:07:19', '2', '管理员', '2023-10-27 14:18:10', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (5, 1, 'b4295014fd', '', 2023070000000016, '测试(别用)', '1', '门户管理员', NULL, 0, '02', NULL, '00', '1', '门户管理员', '2023-10-30 10:39:16', '1', '管理员', '2023-10-31 16:03:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (6, 0, '60dcd4848c', '测试aaabbcc', 2023070000000016, '测试(别用)', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-10-30 13:15:00', '1', '管理员', '2023-10-30 13:15:00', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (7, 0, 'a171a105b2', '', 2023070000000016, '测试(别用)', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-10-31 10:39:53', '1', '管理员', '2023-10-31 10:39:53', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023111600000026, 0, '3f9e65548a', '', 2023110000000043, '测试03', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 14:11:17', '1', '门户管理员', '2023-11-16 14:11:17', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023111600000030, 0, 'afdc912db6', '', 2023110000000043, '测试03', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 20:11:40', '1', '门户管理员', '2023-11-16 20:11:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review (review_id, version_num, rec_token, apply_remark, apply_id, lab_title, apply_user_id, apply_user_name, remarks, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112800000031, 0, 'd78dd63e5b', 'eeeqqq', 2023110000000043, '测试03', '1', '门户管理员', NULL, 0, '01', NULL, '00', '1', '门户管理员', '2023-11-28 16:47:18', '1', '门户管理员', '2023-11-28 16:47:18', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (1, 1, '7176180c46', 2, 'data', '测试', 104, '2', 0, '01', 'cc', '00', '1', '门户管理员', '2023-10-25 09:41:42', '2', '管理员', '2023-10-27 14:18:10', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2, 1, '7176180c46', 2, 'data', '测试', 226, '2', 0, '01', 'cc', '00', '1', '门户管理员', '2023-10-25 09:41:42', '2', '管理员', '2023-10-27 14:18:10', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (3, 1, 'ce1ec37765', 5, 'data', '222', 183, '1', 0, '02', NULL, '00', '1', '门户管理员', '2023-10-30 10:39:26', '1', '管理员', '2023-10-31 16:03:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (4, 1, 'ce1ec37765', 5, 'python', '222', 182, '1', 0, '02', NULL, '00', '1', '门户管理员', '2023-10-30 10:39:32', '1', '管理员', '2023-10-31 16:03:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (5, 0, 'f976f8f4e8', 6, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-10-30 13:15:01', '1', '管理员', '2023-10-30 13:15:01', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (6, 0, '0f8329a1de', 7, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-10-31 10:39:53', '1', '门户管理员', '2023-10-31 10:39:53', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (7, 0, '92813fe41e', 8, 'python', 'bbzz22', 262, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 13:45:59', '1', '门户管理员', '2023-11-14 13:45:59', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (8, 0, 'dda7c4fa11', 9, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 14:41:17', '1', '门户管理员', '2023-11-14 14:41:17', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (9, 0, 'ea74033cca', 10, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 16:31:45', '1', '门户管理员', '2023-11-14 16:31:45', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (10, 0, '56c96251c2', 11, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-14 16:36:57', '1', '门户管理员', '2023-11-14 16:36:57', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (11, 0, '1360ecfdaa', 15, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-15 17:59:36', '1', '门户管理员', '2023-11-15 17:59:36', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (12, 0, 'ef78a2c3ac', 2023111500000016, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-15 18:03:21', '1', '门户管理员', '2023-11-15 18:03:21', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (13, 0, '923f6f8a10', 2023111600000025, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 13:20:00', '1', '门户管理员', '2023-11-16 13:20:00', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (14, 0, 'de4da85c41', 2023111600000026, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 14:11:17', '1', '门户管理员', '2023-11-16 14:11:17', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (15, 0, '2e08d7ee4c', 2023111600000030, 'data', '222', 183, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-16 20:11:40', '1', '门户管理员', '2023-11-16 20:11:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_apply_review_dtl (review_dtl_id, version_num, rec_token, review_id, lib_type, lib_desc, file_id, data_source_type, order_num, review_status, review_desc, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (16, 0, '9cc134eda2', 2023112800000031, 'python', 'ccccddd', 238, '1', 0, '01', NULL, '00', '1', '门户管理员', '2023-11-28 16:47:18', '1', '门户管理员', '2023-11-28 16:47:18', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_client_info (docker_server_id, version_num, rec_token, docker_server_name, docker_server_ip, docker_server_port, docker_server_username, docker_server_password, cpu_limits, memory_limits, disc_limits, used_cpu_limits, used_memory_limits, used_disc_limits, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 1, 'ceb0ad0f08', '实验室主机2', '172.16.12.108', '22', 'flink', 'mIVYkELj5T+4MnD5+V542A==', '4', '7', '200', '0', '0', '0', '测试多机器', 1, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-29 19:53:19'); +INSERT INTO tbl_docker_client_info (docker_server_id, version_num, rec_token, docker_server_name, docker_server_ip, docker_server_port, docker_server_username, docker_server_password, cpu_limits, memory_limits, disc_limits, used_cpu_limits, used_memory_limits, used_disc_limits, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 47, '3726078177', '实验室主机', '172.16.12.108', '22', 'flink', 'mIVYkELj5T+4MnD5+V542A==', '4', '7', '200', '3', '3', '45', NULL, 2, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-11-16 20:55:47'); + + + +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 1, 1, 15, 1, '42ee9609b0', 1, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-07-04 20:03:46'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 2, 2, 20, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 1, 2, 15, 1, '42ee9609b0', 2, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-07-04 20:03:46'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (4, 2, 2, 50, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (5, 2, 2, 100, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (6, 2, 2, 150, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (7, 2, 2, 200, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (8, 2, 2, 250, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (9, 2, 2, 300, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (10, 4, 4, 250, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (11, 4, 4, 300, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (12, 4, 4, 300, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (13, 4, 4, 400, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (14, 4, 4, 500, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (15, 4, 4, 600, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (16, 8, 4, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (17, 8, 4, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (18, 8, 4, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (19, 8, 4, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (20, 8, 8, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (21, 8, 8, 1000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (22, 8, 8, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (23, 8, 8, 2000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (24, 8, 8, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (25, 8, 8, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (26, 8, 8, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (27, 8, 8, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (28, 8, 16, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (29, 8, 16, 10000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (30, 8, 16, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); +INSERT INTO tbl_docker_config_hardware (config_id, cpu, core_num, disk, version_num, rec_token, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (31, 8, 16, 20000, 0, '1', 3, '00', '00', '1', '管理员', '2023-06-30 10:41:48', '1', '管理员', '2023-06-30 10:41:48'); + + +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (23, 0, 'cace8a7cd8', 2023070000000016, '测试(别用)', '1', '门户管理员', 'aakk', 'bbb.zip', '23143', '1698717133', NULL, 0, '01', NULL, '01', '00', '1', '门户管理员', '2023-10-31 17:17:36', '1', '门户管理员', '2023-10-31 17:17:36', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (24, 1, '195e7d6e3a', 2023070000000016, '测试(别用)', '1', '门户管理员', 'cc', 'test.txt', '9', '1698633393', NULL, 0, '03', 's', '01', '00', '1', '门户管理员', '2023-11-02 09:53:05', '100014', 'admin1', '2023-11-02 17:03:09', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (20, 0, 'f2b7dfceb0', 2023100000000036, '演示002', '2023100000000005', '测试1', '加工数据', '20220810-jioayi.csv', '55574528', '1698655667', NULL, 0, '01', NULL, '01', '00', '2023100000000005', '测试1', '2023-10-30 16:50:48', '2023100000000005', '测试1', '2023-10-30 16:50:48', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112100000028, 1, 'a079dd0a0e', 2023110000000043, '测试03', '1', '门户管理员', 'cc', 'kk.zip', '238166227', '1700570716', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-11-21 20:45:27', '100016', 'admin55', '2023-11-21 20:46:01', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (15, 2, 'bdab732139', 2023070000000016, '测试(别用)', '1', '门户管理员', '测试', 'test.txt', '7', '1700725395', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-10-18 14:53:49', '100016', 'admin55', '2023-10-31 09:35:07', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (22, 1, '6bd3fc7924', 2023070000000016, '测试(别用)', '1', '门户管理员', 'ttrr', '测试.txt', '28', '1700790885', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-10-31 10:37:45', '100016', 'admin55', '2023-10-31 10:39:05', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112400000029, 0, '8642b15503', 2023110000000043, '测试03', '1', '门户管理员', 'cc', 'kk.zip', '238166227', '1700570716', NULL, 0, '01', NULL, '01', '00', '1', '门户管理员', '2023-11-24 14:21:02', '1', '门户管理员', '2023-11-24 14:21:02', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (21, 1, 'dd7707ff8c', 2023070000000016, '测试(别用)', '1', '门户管理员', 'ccbb', 'test2.csv', '67', '1700723304', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-10-31 09:46:24', '100016', 'admin55', '2023-10-31 09:46:53', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112900000030, 1, '3e258a1fd6', 2023110000000043, '测试03', '1', '门户管理员', 'aa', 'bb.zip', '1700', '1700037670', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-11-29 13:49:01', '100016', 'admin55', '2023-11-29 13:49:30', NULL, NULL, NULL); +INSERT INTO tbl_docker_download_apply (download_apply_id, version_num, rec_token, apply_id, lab_title, apply_user_id, apply_user_name, apply_desc, file_name, file_size, file_last_time, remarks, order_num, review_status, review_desc, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023112900000031, 1, '9222d4379e', 2023110000000043, '测试03', '1', '门户管理员', 'ccddd', '测试副本.zip', '1700', '1700037670', NULL, 0, '02', NULL, '01', '00', '1', '门户管理员', '2023-11-29 13:50:46', '100016', 'admin55', '2023-11-29 13:50:55', NULL, NULL, NULL); + +INSERT INTO tbl_docker_images (docker_image_id, version_num, rec_token, docker_image_name, service_type, docker_image_desc, file_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 0, '1', 'jupyterlab-py310:0.0.1', 'jupyter', '环境:软件jupyterlab,Python3.10 ,集成了常用包: NumPy ,Matplotlib ,Pandas,Seaborn,PyTorch等', NULL, NULL, 0, '00', '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_images (docker_image_id, version_num, rec_token, docker_image_name, service_type, docker_image_desc, file_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 0, '1', 'zeppelin-py39:0.0.1', 'zeppelin', '环境:软件zeppelin,Python3.9', NULL, NULL, 0, '00', '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); + + +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (4, 0, '1', 2, '9004', 'http://172.16.12.104:8080/lab004/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (5, 0, '1', 2, '9005', 'http://172.16.12.104:8080/lab005/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (6, 0, '1', 2, '9006', 'http://172.16.12.104:8080/lab006/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (7, 0, '1', 2, '9007', 'http://172.16.12.104:8080/lab007/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (8, 0, '1', 2, '9008', 'http://172.16.12.104:8080/lab008/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 0, '1', 2, '9001', 'http://172.16.12.104:8080/lab001/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 0, '1', 2, '9002', 'http://172.16.12.104:8080/lab002/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '1', '管理员', '2023-06-14 19:12:10'); +INSERT INTO tbl_docker_port_list (docker_port_id, version_num, rec_token, docker_server_id, docker_server_port, url_path, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 1, '8407252b29', 2, '9003', 'http://172.16.12.104:8080/lab003/', NULL, 0, '00', '1', '管理员', '2023-06-14 19:12:10', '100019', 'admin3', '2023-11-17 16:59:22'); + +INSERT INTO tbl_docker_portainer_user (docker_account_id, version_num, rec_token, api_http, api_key, admin_username, admin_password, remarks, order_num, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (1, 2, '53f90059f7', 'http://172.16.12.108:9000', 'ptr_cv5nSGlTS3GOqgl0r6BcWiFje9LRHkugxrXTVi257iU=', NULL, NULL, NULL, 1, '00', '1', '管理员', '2023-06-14 13:48:18', '100018', 'yts', '2023-11-21 10:22:43'); + +INSERT INTO tbl_docker_vpn (vpn_id, version_num, rec_token, vpn_ip, vpn_username, vpn_password, fortress_ip, fortress_username, fortress_password, apply_id, lab_title, apply_user_id, apply_user_name, start_date, end_date, send_flag, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (5, 2, '920e533f91', '127.0.0.1:8080', 'vpn12', 'n9pccyVFGDsgENOflKgvjg==', '127.0.0.1:8080', 'baoleiA1', 'n9pccyVFGDsgENOflKgvjg==', NULL, NULL, '2023060000000002', '张三丰', NULL, NULL, '0', '1', '00', '2', '管理员', '2023-11-17 11:01:19', '100019', 'admin3', '2023-11-17 16:59:33', NULL, NULL, NULL); + + +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000038, 7, '51ae940599', '测试004', '2023060000000002', '张三丰', '2023110000000038', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:43:40', '2', '管理员', '2023-11-13 16:22:37', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000040, 6, '18d9e95045', '客户演示', '2023110000000009', '刘总', '2023110000000040', 2, NULL, 0, '01', '00', '1', '管理员', '2023-11-07 16:07:04', '2', '管理员', '2023-11-13 17:06:16', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000042, 10, 'd991e089e7', '测试', '1', '门户管理员', '2023110000000042', 2, NULL, 0, '05', '00', '100016', 'admin55', '2023-11-14 13:27:42', '100016', 'admin55', '2023-11-16 13:47:29', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000039, 18, '4707c1e116', '测试005', '2023060000000002', '张三丰', '2023110000000039', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:47:19', '2', '管理员', '2023-11-16 20:55:46', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000041, 30, '38da0fecf4', 'zeppelin(测试)', '2023060000000002', '张三丰', '2023110000000041', 2, NULL, 0, '01', '00', '2', '管理员', '2023-11-13 16:32:29', '2', '管理员', '2023-11-28 17:37:20', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000037, 6, '2fff2e3e82', '测试', '2023060000000002', '张三丰', '2023100000000037', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:28:37', '100014', 'admin1', '2023-11-02 16:42:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000036, 3, '1465c466bc', '演示002', '2023100000000005', '测试1', '2023100000000036', 2, NULL, 0, '05', '00', '100014', 'admin1', '2023-10-30 15:54:30', '100014', 'admin1', '2023-11-02 16:45:48', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023100000000034, 5, 'e82282a129', '演示001', '2023060000000002', '张三丰', '2023100000000034', 2, NULL, 0, '05', '00', '2', '管理员', '2023-10-26 19:32:31', '100014', 'admin1', '2023-11-02 16:45:52', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user (apply_id, version_num, rec_token, lab_title, apply_user_id, apply_user_name, docker_container_id, docker_server_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (2023110000000043, 12, 'd2948796d2', '测试03', '1', '门户管理员', '2023110000000043', 2, NULL, 0, '01', '00', '100016', 'admin55', '2023-11-16 13:47:55', '1', '门户管理员', '2023-12-08 13:42:12', NULL, NULL, NULL); + +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (53, 0, 'fde5ccceaf', 2023110000000040, 'jupyter', 'http://172.16.12.104:8080/lab005/', NULL, 'VOo3SNcfnu1pgu1bDPF9KA==', 5, NULL, 0, '01', '00', '1', '管理员', '2023-11-07 16:07:04', '1', '管理员', '2023-11-07 16:07:04', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (54, 0, '220490c4de', 2023110000000041, 'zeppelin', 'http://172.16.12.104:8080/lab007/', 'admin', 'MbK1K2/Z41/V/SND00p0CQ==', 7, NULL, 0, '01', '00', '2', '管理员', '2023-11-13 16:32:29', '2', '管理员', '2023-11-13 16:32:29', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (56, 0, '7e1bd2d5b7', 2023110000000043, 'jupyter', 'http://172.16.12.104:8080/lab001/', NULL, 'AXbT3MC760cfkQRikurgLw==', 1, NULL, 0, '01', '00', '100016', 'admin55', '2023-11-16 13:47:55', '100016', 'admin55', '2023-11-16 13:47:55', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (48, 1, '4920b8de4f', 2023100000000034, 'jupyter', 'http://172.16.12.104:8080/lab005/', NULL, 'HwJ1FTVUtEcpDHudNGYcvA==', 5, NULL, 0, '05', '00', '2', '管理员', '2023-10-26 19:32:31', '2', '管理员', '2023-10-26 19:32:31', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (49, 1, '106551156d', 2023100000000036, 'jupyter', 'http://172.16.12.104:8080/lab005/', NULL, 'oxXRiE/Y+vEGWhizlS2yMw==', 5, NULL, 0, '05', '00', '100014', 'admin1', '2023-10-30 15:54:30', '100014', 'admin1', '2023-10-30 15:54:30', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (50, 1, '6484cdb29c', 2023100000000037, 'jupyter', 'http://172.16.12.104:8080/lab006/', NULL, '5k1O87ewcOIeKIWmMtd8KA==', 6, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:28:37', '100014', 'admin1', '2023-11-02 16:28:37', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (51, 1, '0463845cb1', 2023110000000038, 'jupyter', 'http://172.16.12.104:8080/lab006/', NULL, 'cOqlxatORZhsNdRCAYyF1w==', 6, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:43:40', '100014', 'admin1', '2023-11-02 16:43:40', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (52, 2, 'b69dd74beb', 2023110000000039, 'jupyter', 'http://172.16.12.104:8080/lab004/', NULL, 'YVv77wBgxZXmogZT0pwsEQ==', 4, NULL, 0, '05', '00', '100014', 'admin1', '2023-11-02 16:47:19', '2', '管理员', '2023-11-07 21:39:27', NULL, NULL, NULL); +INSERT INTO tbl_docker_with_user_account (account_id, version_num, rec_token, apply_id, service_type, login_url, login_username, login_password, docker_port_id, remarks, order_num, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (55, 1, '54475f9208', 2023110000000042, 'jupyter', 'http://172.16.12.104:8080/lab008/', NULL, 'eAyLpQKj3m0dPkWPIKH5RA==', 8, NULL, 0, '05', '00', '100016', 'admin55', '2023-11-14 13:27:42', '100016', 'admin55', '2023-11-14 13:27:42', NULL, NULL, NULL); + + +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (67, '5dd45006-50bb-4e61-a5eb-6fbac9738358', 33); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (68, '5dd45006-50bb-4e61-a5eb-6fbac9738358', 32); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (69, '5dd45006-50bb-4e61-a5eb-6fbac9738358', 30); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (77, 'bb', 30); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (80, 'JGH000000000000070', 12); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (81, 'JGH000000000000070', 32); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (167, 'JGH000000000000084', 119); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (168, 'JGH000000000000084', 116); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (169, 'JGH000000000000084', 114); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (170, 'JGH000000000000084', 97); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (171, 'JGH000000000000084', 107); +INSERT INTO tbl_org_api_auth (id, org_no, api_id) VALUES (172, 'JGH000000000000084', 108); + +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (1, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-17', '2023-07-17', '0', 0, '1', 'admin', '2023-07-17 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (2, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-17', '2023-07-20', '0', 1, '3861a2180c', 'admin', '2023-07-17 00:00:00', 'admin', '2023-07-17 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (4, '495932f9-e6f8-40be-ab3a-45292a5eb3b0', '2023-07-18', '2023-07-19', '0', 0, '1', 'yts', '2023-07-18 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (3, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-17', '2023-07-21', '1', 3, '1b8df22227', 'admin', '2023-07-17 00:00:00', 'yts', '2023-07-18 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (5, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-28', '2023-07-29', '0', 0, '1', 'yts', '2023-07-28 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (10, 'JGH000000000000084', 'data_begin', '111', '11', 0, '1', '', '2023-09-27 00:00:00', NULL, '2023-09-27 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (6, '5dd45006-50bb-4e61-a5eb-6fbac9738358', '2023-07-28', '2023-07-29', '0', 0, '1', 'yts', '2023-07-28 00:00:00', NULL, NULL, '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (8, '231', 'add:test:key', '测试', '2023-12-20', 0, '1', '', '2023-09-07 00:00:00', NULL, '2023-09-07 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (7, '231', 'add:test:key', '测试', '2023-12-20', 0, '1', '', '2023-09-07 00:00:00', NULL, '2023-09-07 00:00:00', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (11, 'JGH000000000000084', 'data_begin', '111', '111', 0, '1', '', '2023-10-09 16:00:04.31662', NULL, '2023-10-09 16:00:04.31662', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (12, 'JGH000000000000084', 'data_begin', '111', '11', 0, '1', '', '2023-10-09 17:11:53.786769', NULL, '2023-10-09 17:11:53.786769', '1', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (151, 'JGH000000000000084', 'downLoadRigth', '获取线路小时客流指标', 'lineHour', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (152, 'JGH000000000000084', 'downLoadRigth', '获取线路每日客流指标', 'lineDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (153, 'JGH000000000000084', 'downLoadRigth', '获取线路每月客流指标', 'lineMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (154, 'JGH000000000000084', 'downLoadRigth', '获取线路站点小时客流指标', 'stationHour', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (155, 'JGH000000000000084', 'downLoadRigth', '获取线路站点每日客流指标', 'stationDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (156, 'JGH000000000000084', 'downLoadRigth', '获取线路站点每月客流指标', 'stationMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (157, 'JGH000000000000084', 'downLoadRigth', '获取线路站点小时换乘指标', 'stationTransHour', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (158, 'JGH000000000000084', 'downLoadRigth', '获取线路站点每日换乘指标', 'stationTransDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (159, 'JGH000000000000084', 'downLoadRigth', '站点换乘月指标', 'stationTrnasMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (160, 'JGH000000000000084', 'downLoadRigth', '站点常乘客日指标', 'stationFreqDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (161, 'JGH000000000000084', 'downLoadRigth', '站点常乘客日指标', 'stationFreqMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (162, 'JGH000000000000084', 'downLoadRigth', '站点常乘客换乘月日指标', 'stationFreqTransDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (163, 'JGH000000000000084', 'downLoadRigth', '站点常乘客换乘月指标', 'stationFreqTransMonth', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (164, 'JGH000000000000084', 'downLoadRigth', '班次客流量', 'routeDay', 0, '1', '1', '2023-11-21 19:52:15.394954', NULL, '2023-11-21 19:52:15.394954', '0', '0'); +INSERT INTO tbl_org_config (config_id, org_no, config_key, config_desc, config_value, version_num, rec_token, create_by, create_time, update_by, update_time, del_flag, status) VALUES (66, 'JGH000000000000084', 'data_begin', 'dd', '2023-11-03', 0, '1', '', '2023-11-03 15:26:13.074658', NULL, '2023-11-03 15:26:13.074658', '1', '0'); + + +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000134', '演示004', '01', NULL, 'c4a262fa33d753b25c5bec359f98c530', 'ca26730c33e86bb03de44f85bcb92df2', '2023-10-03', '2024-11-15', '0', 7, '6ac7771317', '100014', 'admin1', '2023-10-31 14:17:11', '', 'admin', '2023-11-16 21:00:57', '0', NULL, 'Mpbca3BlrJ5PGxKpu7e8Mg==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000140', '机构到期', '02', NULL, '83bac02e390919f4ab9ca891567c681a', 'd40b3d407fbe4211ba6161004fc1de9c', '2023-11-01', '2024-11-13', '2', 5, '8c573e49da', '1', 'admin', '2023-11-09 19:37:11', '', 'admin', '2023-11-16 21:00:57', '0', NULL, 'Mpbca3BlrJ5PGxKpu7e8Mg==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000084', '机构一', '01', '1', 'c2fd8ac5a7c9c57c26f8692e4ac0e15b', '886f918cb40cb5a5014402a6c00cda74', '2023-07-02', '2024-07-26', '0', 37, '7be2f2162f', '1', 'admin', '2023-09-19 16:22:33', '1', 'admin', '2023-11-22 15:37:34', '0', '130.252.102.154', '18712387792', NULL, NULL, '1'); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000126', '11', '01', '11', 'cd90b31ca1259ee5e5a04400e8d32fcd', 'd86874d3da56da5c8f1b9362d2cf2ddd', '2023-10-12', '2024-10-19', '2', 2, '852932640f', '100007', 'yts', '2023-10-12 20:50:26', '', 'yts', '2023-11-09 19:47:21', '1', NULL, '12312312123', NULL, NULL, NULL); + +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (43, 'JGH000000000000084', '机构一', 111, 1, 0, '站点常乘客换乘客流量-日', '2023-11-09 16:24:35', 'system', '2023-11-09 16:24:35', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (40, 'JGH000000000000084', '机构一', 113, 2, 0, '站点常乘客换乘客流量-月', '2023-11-09 16:22:48', 'system', '2023-11-09 16:22:48', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (5, 'JGH000000000000084', '机构一', 128, 3, 5, 'sds-副本20231017102612', '2023-10-18 12:09:59', 'system', '2023-10-18 12:09:59', NULL, 4, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (44, 'JGH000000000000084', '机构一', 114, 1, 0, '班次客流量-日', '2023-11-09 16:25:01', 'system', '2023-11-09 16:25:01', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (6, 'JGH000000000000084', '机构一', 119, 4, 9, 'sds', '2023-10-27 14:20:37', 'system', '2023-10-27 14:20:37', NULL, 12, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (37, 'JGH000000000000084', '机构一', 102, 2, 0, '站点客流量-月', '2023-11-09 16:22:30', 'system', '2023-11-09 16:22:30', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (45, 'JGH000000000000084', '机构一', 107, 2, 0, '站点换乘客流量-月', '2023-11-09 16:37:16', 'system', '2023-11-09 16:37:16', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (8, 'JGH000000000000084', '机构一', 135, 2, 0, '测试003', '2023-11-01 17:08:09', 'system', '2023-11-01 17:08:09', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (34, 'JGH000000000000084', '机构一', 99, 1, 0, '线路客流量-月', '2023-11-09 16:22:14', 'system', '2023-11-09 16:22:14', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num + + +, rec_token, del_flag) VALUES (36, 'JGH000000000000084', '机构一', 100, 1, 0, '站点客流量-小时', '2023-11-09 16:22:28', 'system', '2023-11-09 16:22:28', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (46, 'JGH000000000000084', '机构一', 116, 0, 6, '文件下载', '2023-11-09 16:45:46', 'system', '2023-11-09 16:45:46', NULL, 5, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (39, 'JGH000000000000084', '机构一', 105, 1, 0, '站点换乘客流量-小时', '2023-11-09 16:22:43', 'system', '2023-11-09 16:22:43', NULL, 0, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (41, 'JGH000000000000084', '机构一', 109, 2, 0, '站点常乘客客流量-日', '2023-11-09 16:23:00', 'system', '2023-11-09 16:23:00', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (42, 'JGH000000000000084', '机构一', 110, 2, 0, '站点常乘客客流量-月', '2023-11-09 16:24:01', 'system', '2023-11-09 16:24:01', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (32, 'JGH000000000000084', '机构一', 97, 5, 3, '线路客流量-日', '2023-11-09 16:21:48', 'system', '2023-11-09 16:21:48', NULL, 7, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (33, 'JGH000000000000084', '机构一', 98, 3, 0, '线路客流量-小时', '2023-11-09 16:22:06', 'system', '2023-11-09 16:22:06', NULL, 2, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (38, 'JGH000000000000084', '机构一', 106, 2, 0, '站点换乘客流量-日', '2023-11-09 16:22:35', 'system', '2023-11-09 16:22:35', NULL, 1, '1', '0'); +INSERT INTO tbl_org_statistics (id, org_no, org_name, api_id, success_total, fail_total, api_name, create_time, create_by, update_time, update_by, version_num, rec_token, del_flag) VALUES (35, 'JGH000000000000084', '机构一', 101, 8, 0, '站点客流量-日', '2023-11-09 16:22:19', 'system', '2023-11-09 16:22:19', NULL, 7, '1', '0'); + + +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (22, 3, '4c1d04935a', 'dddd', '/images/console/14a1c8f0c40b46f3893fd0ae839c5e03.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-18 11:01:04', '100007', 'yts', '2023-07-20 14:32:30', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (25, 1, '1f15b47c3d', 'fasdfa', '/images/console/e3b52addfb704e92ab13976e9cf8549e.jpg', NULL, '1', NULL, '2', '99', '100007', 'yts', '2023-07-20 14:35:13', '100007', 'yts', '2023-07-20 14:51:21', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (21, 8, 'e2394cd6be', '2222', '

测试aaaa,asdas.

测试

测试

', NULL, '2', NULL, '3', '99', '100004', 'jiuyv', '2023-07-11 14:25:57', '100007', 'yts', '2023-07-20 14:54:36', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (23, 0, '1', 'asdfasd', '

asdfasdfasd

', NULL, '2', NULL, '1', '99', '100007', 'yts', '2023-07-18 11:02:13', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (33, 0, '1', 'iiiiiiii', '/images/console/6febb9c8866e46eb9855fc76b129395f.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:44:49', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (31, 0, '1', 'wwwww', '/images/console/1f71c13cd4244dbf87e597e82042b699.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:41:09', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (30, 0, '1', 'qqqqq', '

sdafgasdfasdfasdfasd

', NULL, '4', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:40:45', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (29, 0, '1', 'eeeeee', 'dasfasdfasdfasd', NULL, '3', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:40:01', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (28, 0, '1', 'ffffffff', NULL, NULL, '3', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:38:56', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (27, 0, '1', 'cccc', NULL, NULL, '3', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:37:35', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (24, 0, '1', 'sdfasdfsd', '/images/console/71286c0d3a2e46258f2ba38623c1eea3.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-20 14:34:42', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (39, 7, '317a0ab3e1', '久事乘车宝', '“久事乘车宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API形式,为用户提供久事集团旗下500+条地面公交线路实时到站预报数据,涵盖线路、站级、上下行、到站站距、到站距离、到站时间等多维度信息。', NULL, '3', NULL, '2', '00', '100004', 'jiuyv', '2023-08-21 14:31:45', '100004', 'jiuyv', '2023-09-11 16:07:31', 2, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (37, 9, '8b4da6393f', '交通行业首家DCMM认证企业', '/images/console/a4a0dd8076d94a929d01c1c593527193.png', NULL, '1', NULL, '3', '99', '100004', 'jiuyv', '2023-08-21 10:15:27', '100004', 'jiuyv', '2023-09-11 15:14:48', NULL, NULL, '交通卡公司获国家数据管理能力成熟度稳健级(3级)认证,数据标准统一,数据管理规范,数据治理较好', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (38, 7, '1d8bc35722', '久事客流宝', '“久事客流宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API、文件配送等形式,为用户提供地面公交线路客流数据,为企业、研究机构、政府部门的实时监测、运营调度、线网优化、商业选址、辅助决策等需求提供数据支撑。', NULL, '3', NULL, '2', '00', '100004', 'jiuyv', '2023-08-21 10:51:09', '100004', 'jiuyv', '2023-09-11 16:07:41', 1, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (20, 5, '8ba6d1128a', '测试应用场景', '

测试应用场景测试应用场景测试应用场景

测试应用场景测试应用场景测试应用场景

测试应用场景

', '2', '3', NULL, '1', '99', '1', 'admin', '2023-07-05 17:23:23', '100007', 'yts', '2023-07-27 16:48:50', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (18, 14, 'fb2dd821d0', '标题五', '/images/console/adf639c21b0f47968a568a7670e1bab6.jpg', '1', '1', NULL, '3', '99', '100007', 'yts', '2023-07-03 17:56:35', '100004', 'jiuyv', '2023-08-21 10:13:03', NULL, NULL, '小标题', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (35, 9, 'e163087cfc', '市数商协会会员', '/images/console/66bdc6cf8fd3466db925966d360f59cd.png', NULL, '1', NULL, '3', '99', '100004', 'jiuyv', '2023-08-21 10:12:44', '100004', 'jiuyv', '2023-09-11 15:14:35', NULL, NULL, '与各行业头部数商企业一同,推进数据创造、消费、流通、交易,最大程度释放数据价值', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (36, 10, '84eb32d447', '市级企业技术中心(暂未)', '/images/console/28cc67293f534beaa79a020ee56d27c5.png', NULL, '1', NULL, '3', '99', '100004', 'jiuyv', '2023-08-21 10:14:01', '100004', 'jiuyv', '2023-09-11 15:14:37', NULL, NULL, '交通卡公司获第30批市级企业技术中心认定企业,持续推进关键核心技术攻关,不断促进产学研用协同创新', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (41, 5, '90d65a87a6', '久事客流宝', '/images/console/a01b4120ec9d4d559c073f953dfbc9c9.jpg', NULL, '4', NULL, '3', '99', '100004', 'jiuyv', '2023-08-22 18:59:08', '100004', 'jiuyv', '2023-09-11 15:22:24', NULL, NULL, '“久事客流宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API、文件配送等形式,为用户', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (40, 20, 'ec78d02e27', '用户画像', '-覆盖5000万的公共交通卡实名用户 +-支持性别、年龄、消费城市、高频线路/站点等40+个性化用户标签 +-常用于站点广告投放、商铺选址、客群洞察等场景', NULL, '3', NULL, '2', '00', '100004', 'jiuyv', '2023-08-21 14:32:03', '100014', 'admin1', '2023-10-17 10:41:49', 3, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (42, 5, '7aa1cc55e2', '久事乘车宝', '/images/console/b1c4bef7faad45b99d22697eef0f2492.jpg', NULL, '4', NULL, '3', '99', '1', 'admin', '2023-09-07 19:17:19', '100004', 'jiuyv', '2023-09-11 15:22:22', NULL, NULL, '“久事乘车宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API形式,为用户提供久事集团', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (34, 1, '906a0f30f8', 'fffffff', '/images/console/4270e66ac8bd44328b2cc09795da0804.jpg', NULL, '1', NULL, '1', '99', '100007', 'yts', '2023-07-27 16:47:59', '100004', 'jiuyv', '2023-09-12 14:08:12', 4, NULL, 'dfasdfsadfasdfsdaf', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (26, 5, 'dca2e730c5', '助力数字城市建设,交通卡新产品“久事客流宝”拿下上海数据交易所“第一单”!', '

助力数字城市建设,交通卡新产品“久事客流宝”拿下上海数据交易所“第一单”!

', NULL, '2', NULL, '2', '00', '100007', 'yts', '2023-07-20 14:54:47', '1', 'admin', '2023-09-08 17:28:56', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (5, 13, 'ba18807a06', '交通卡公司成功通过国家数据管理能力成熟度评审,成上海交通行业首家获评企业!', '

交通卡公司成功通过国家数据管理能力成熟度评审,成上海交通行业首家获评企业!

', '2', '2', NULL, '2', '00', '1', 'admin', '2023-06-25 15:37:19', '1', 'admin', '2023-09-08 17:28:59', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (32, 9, 'd07ba62633', '交通卡公司新产品“久事乘车宝”近日在上海数据交易所成功挂牌!', '

在久事集团指导下,交通卡公司和久事公交共同推出的“久事乘车宝”数据产品,近日在上海数据交易所成功挂牌。

“久事乘车宝”是通过API形式,为用户提供久事集团旗下公交线路实时到站预报数据。该产品是依托久事集团“云数据中心”强大的计算能力,通过前端感知、后端算法互为加强,研发了国内领先的公交到站预报模型。目前,公交到站预报准确率已达到97%以上,市民在公交车站、“随申办”APP、“上海公交”APP可进行公交到站预报信息的实时查询,从而告别等车焦虑。

“久事乘车宝”数据产品的研发和推出是久事集团践行“人民城市”理念,推进出行服务数字化转型的重要实践,可为企事业单位、行业主管部门、研究机构提供服务,推动数据要素流通、释放数字红利、促进上海市数字经济发展。

', NULL, '2', NULL, '2', '00', '100007', 'yts', '2023-07-27 16:41:50', '100004', 'jiuyv', '2023-09-12 14:13:05', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (19, 3, '597fa276d1', '标题六ddd', '

hello

', '2', '4', NULL, '1', '99', '100007', 'yts', '2023-07-03 17:57:32', '100007', 'yts', '2023-07-18 11:00:37', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (43, 4, '37c210a04e', '用户画像', '/images/console/e097514f6bcb464192f0eb58ef276537.jpg', NULL, '4', NULL, '3', '99', '1', 'admin', '2023-09-11 09:54:57', '100004', 'jiuyv', '2023-09-11 16:15:47', NULL, NULL, '-覆盖5000万的公共交通卡实名用户 +-支持性别、年龄、消费城市、高频线路/站点等40+个性化用户标', NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (51, 1, '8158cfb781', '撒打发斯蒂芬', '发生的发生的', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:47:00', '1', 'admin', '2023-10-17 20:47:10', 1, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (52, 0, '1', '啊啊啊', '啊啊啊', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:52:35', NULL, NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (53, 0, '1', '啊啊啊', '啊啊啊', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:53:12', NULL, NULL, NULL, 0, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (54, 0, '1', '发生的发生的', '大法师的', NULL, '3', NULL, '1', '99', '1', 'admin', '2023-10-17 20:54:15', NULL, NULL, NULL, 0, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (50, 4, '62faba0612', '测试', '

是多少

', NULL, '2', NULL, '2', '00', '1', 'admin', '2023-10-11 16:36:11', '1', 'admin', '2023-10-17 21:20:33', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (44, 18, '9997a0b975', '市交通行业首家DCMM认证企业', NULL, NULL, '1', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:11:48', '100015', 'admin2', '2023-11-09 13:37:24', 2, NULL, '交通卡公司获国家数据管理能力成熟度稳健级(3级)认证,数据标准统一,数据管理规范,数据治理较好。', '/images/console/0add92ad6cbf452b9c0d77742a7099c5.jpg'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (49, 13, 'f3db60bbf5', '用户画像', '

-覆盖5000万的公共交通卡实名用户

-支持性别、年龄、消费城市、高频线路/站点等40+个性化用户标签

-常用于站点广告投放、商铺选址、客群洞察等场景

 

', NULL, '4', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:22:12', '100015', 'admin2', '2023-11-29 17:32:26', 3, NULL, NULL, '/images/console/cdbea889774e4bf7bbd3bcaa72ec576d.png'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (46, 10, '0ea7246a4a', '市数商协会会员', NULL, NULL, '1', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:14:23', '100015', 'admin2', '2023-11-09 13:37:18', 1, NULL, '与各行业头部数商企业一同,推进数据创造、消费、流通、交易,最大程度释放数据价值。', '/images/console/b3d083cfc2b44dd4806b3830870e584c.jpg'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (45, 11, 'e78f8c7c8b', '市级企业技术中心', NULL, NULL, '1', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:13:53', '100015', 'admin2', '2023-11-09 13:37:28', 3, NULL, '交通卡公司获第30批市级企业技术中心认定企业,持续推进关键核心技术攻关,不断促进产学研用协同创新。', '/images/console/c2ca541e8dcd4dcd95402ac13f9113ab.jpg'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (47, 13, '6aceedd511', '久事客流宝', '

“久事客流宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API、文件配送等形式,为用户提供地面公交线路客流数据,为企业、研究机构、政府部门的实时监测、运营调度、线网优化、商业选址、辅助决策等需求提供数据支撑。

l 实时数据类

可提供全市范围地面公交线路整体客流数据。

l 非实时数据类

-可提供全市范围地面公交营运单位级、线路级客流数据,以及线路级换乘客流数据。

-可提供久事集团旗下500+条地面公交线路班次级、车辆级、站点级客流数据,以及站点级换乘客流数据。

-可根据用户需求,定制化提供区域级客流数据。

', NULL, '4', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:17:00', '100015', 'admin2', '2023-11-29 17:32:32', 1, NULL, NULL, '/images/console/53f1b8b838174db6b114c73d0b149869.png'); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (55, 5, 'a1513d77a0', '测试', '

文本信息

', NULL, '2', NULL, '3', '00', '1', 'admin', '2023-10-31 16:48:14', '100019', 'admin3', '2023-11-17 16:21:53', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_content (content_id, version_num, rec_token, content_title, content_text, content_type, show_type, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sort, show_index, subtitle, img_url) VALUES (48, 22, 'ed6470bf3d', '久事乘车宝', '

“久事乘车宝”数据产品日前已在上海数据交易所正式登记挂牌。该产品可通过API形式,为用户提供久事集团旗下500+条地面公交线路实时到站预报数据,涵盖线路、站级、上下行、到站站距、到站距离、到站时间等多维度信息。

该产品依托久事集团“云数据中心”强大的计算能力,通过前端感知、后端算法互为加强,研发了国内领先的公交到站预报模型,数据准确率达97%以上。

该产品可以运用于信息技术服务、交通运输、公用事业、科学研究等多个领域。

-可应用于信息服务。为公众提供公交到站预报信息实时查询服务,解决市民的“等车焦虑”,以及帮助公众更好地规划公交出行,合理安排出行时间。

-可应用于公交运营。利用产品数据,来监控车辆运行情况、优化调度计划,提高运营效率,减少车辆拥堵和滞留,保障公交高质量服务。

-可应用于线网优化。基于实时数据,进行更为科学的公交线路规划、调整和优化,确保公共交通资源得到最大化利用,更好地满足广大市民的出行需求。

-可应用于科学研究。实时的公交运营数据可为交通客流、城市规划以及相关领域的研究提供数据支撑,为科学研究领域注入更多的活力和深度。

', NULL, '4', NULL, '2', '00', '100004', 'jiuyv', '2023-09-11 15:18:10', '100015', 'admin2', '2023-11-29 17:32:28', 2, NULL, NULL, '/images/console/22624b08dbfd4a69b3232e3bffd91ceb.png'); + + +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (116, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-16 20:15:51'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (117, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-16 20:16:13'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (118, 'test2', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 14:47:04'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (119, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 15:01:32'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (120, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 16:07:46'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (121, 'admin', '172.16.12.254', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-20 17:23:59'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (122, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 11:37:27'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (123, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 11:37:27'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (124, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:14:39'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (125, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:14:39'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (126, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:32:07'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (127, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:32:07'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (128, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:33:27'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (129, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:33:28'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (130, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:37:09'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (131, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:38:19'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (132, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:55:29'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (133, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:55:29'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (134, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 13:56:49'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (135, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '退出登录', '2023-11-21 13:57:02'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (136, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 14:07:54'); +INSERT INTO tbl_portal_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (137, 'admin', '127.0.0.1', '内网IP', 'Chrome 11', 'Windows 10', '0', '登录成功', '2023-11-21 14:22:57'); + + +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (56, '实验室-数据注入申请', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.fileBind()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/fileBind', '172.16.12.107', '内网IP', '{applyId:2023110000000043,recToken:c521fbb94b,applyDesc:,fileIds:[183]}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-16 20:11:40'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (57, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户管理员', NULL, '/portal-service/portalUser/resetUserPwd', '130.252.101.48', 'XX XX', '{userId:1,password:$2a$10$.lobUGG6qW2lsQt0.AWAxe3KbrZ8hyY3jnkrLy.fw5er5lJtiHcie,oldPassword:TesjSBYcX6RgWQN1ylSuj2NTilVG27obk2NU031IehjnQycYJY3o8IxiT74xgjyGXtth6jgB0zd3VKhETH7GMwFG5wBI8Zsz+F7J2wCPSNEwyxsIwNxcURTDnqYR7HhTKCH/wjgsdsxm4BW/RuWyWI+8FrhJna5eRPvgP4xtfqk=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 14:24:50'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (58, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户管理员', NULL, '/portal-service/portalUser/resetUserPwd', '130.252.101.48', 'XX XX', '{userId:1,password:$2a$10$eDv7Z0/RigT5FAmp1u6dkOyE0G66KD5eanSg9zIHn4lu4H59N7LoS,oldPassword:A5Np6rk86b8+82y1Ov6CPv+DO8REOxDkhImXQ251TkaH4NQySaXkfymY9NxR+tW3q2zY+JITflGYiG4HRV1t1XChkP1jPR46riwbMkID20Vihubi2qz7Kb068HIuPbKrnunkDnwLXaVO3nbqsxr84SF+My4G+bDnxB9cprQIC7o=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 14:27:42'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (59, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户管理员', NULL, '/portal-service/portalUser/resetUserPwd', '130.252.101.48', 'XX XX', '{userId:1,password:$2a$10$mcs.j1UiDIaLGtsHT7dqrujvv/xKGAhQxJSMLpDSxu2h6XYBAKmKO,oldPassword:XO2dnNY5VHsIKQj2On9yTaQVDlQxSKuPEGVlRJMAW+QhB21IHNufTi8BTuNWThOToWACK5y/QsTg3l9ngfPk10r69DQkj6wu7NSsjHw8ctTksvo7YwuxU2bQFh8BEQngFzrskOj9Scokr8RBY1I2z9c0k+Xw7hpIkf5vI//7bFc=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 14:31:19'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (60, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,fileName:kk.zip,applyDesc:cc}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-21 20:45:27'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (61, '实验室-重启', 2, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.restart()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/restart', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,recToken:c521fbb94b}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-23 14:40:51'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (62, '实验室-重启', 2, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.restart()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/restart', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,recToken:0d44f07b66}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-23 14:51:01'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (63, '个人信息-重置密码', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalUserController.resetUserPwd()', 'POST', 1, '门户测试', NULL, '/portal-service/portalUser/resetUserPwd', '172.16.12.107', '内网IP', '{userId:2023100000000006,password:$2a$10$WPm3R9cMsRohTtA4CsIP4uXLDpBKJZlzCO8.4edDxoty6X9kDFveS,oldPassword:PJeOCiPZu/bCfyACPFdIXqCnZP5pb12sBWXUKfyyA2fjXgqD/plDJfLNYZdsK1MT3TE+figXoYiipvKVUdJr3d7DjUoj+Ig3faKvRWOI+EEhbzHYL+xROHjKEEl8o/CeOruRZwVYUv6lgv/hkp2i5TdQdrkLn/SDiVTliWIzRH4=}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-24 13:58:43'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (64, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '172.16.12.107', '内网IP', '{applyId:2023110000000043,fileName:kk.zip,applyDesc:cc}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-24 14:21:02'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (65, '实验室-数据注入申请', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.fileBind()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/fileBind', '172.16.12.107', '内网IP', '{applyId:2023110000000043,recToken:604ce3569f,applyDesc:eeeqqq,fileIds:[238]}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-28 16:47:18'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (66, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,fileName:bb.zip,applyDesc:aa}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-29 13:49:02'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (67, '实验室-申请下载', 1, 'com.jiuyv.sptccc.agile.portal.controller.DockerWithUserController.applyDown()', 'PUT', 1, '门户管理员', NULL, '/portal-service/dockerWithUser/applyDown', '130.252.101.48', 'XX XX', '{applyId:2023110000000043,fileName:测试副本.zip,applyDesc:ccddd}', '{code:success,msg:操作成功}', 0, NULL, '2023-11-29 13:50:46'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (68, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '130.252.101.48', 'XX XX', 'python aadd', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 14:58:36'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (69, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '130.252.101.48', 'XX XX', 'python aadd', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 15:03:04'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (70, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '172.16.12.107', '内网IP', 'python gggtttt', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 16:02:35'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (71, '我的资源-上传文件', 1, 'com.jiuyv.sptccc.agile.portal.controller.FileController.uploadFiles()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/file/uploadFiles', '172.16.12.107', '内网IP', 'python yy666', '{code:success,msg:操作成功}', 0, NULL, '2023-11-30 16:06:22'); +INSERT INTO tbl_portal_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (72, '我的消息-查看消息', 2, 'com.jiuyv.sptccc.agile.portal.controller.PortalMessageController.detail()', 'POST', 1, '门户管理员', NULL, '/public/portal-service/message/detail', '130.252.101.48', 'XX XX', '57', '{code:success,msg:操作成功,data:{msgId:57,msgTitle:实验室(2023110000000042)收回,msgText:您的实验室“测试”已被强制收回,将不再提供服务,如有疑问请拨打联系电话:(021-60825678)。,msgType:17,msgStatus:1,createTime:2023-11-16 05:44:00}}', 0, NULL, '2023-12-05 15:47:21'); + +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023090000000003, 2, '1', NULL, 'aaaa', 'aaaa', NULL, NULL, NULL, NULL, NULL, '$2a$10$GgF65HGddAHTC.YigDFDWuidNki0ffwJ0UgFVSlzYiXMZMLz6aMZ2', NULL, NULL, NULL, NULL, NULL, '0', '2', NULL, NULL, NULL, 0, NULL, NULL, '1', '管理员', '2023-09-06 17:10:16', NULL, NULL, NULL, NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000009, 0, '1', NULL, 'adminliu', 'liuquan', NULL, NULL, 'K1V+hZd5/a9Et/aw3cfVXQ==', '0', NULL, '$2a$10$KiHtBdwsnlteKr4f2Ssl7elDoZBjPmlRerh6XORlW4.VkPMD10gC2', '演示', NULL, '232903209809222', NULL, NULL, '0', '0', '172.16.12.254', '2023-11-08 14:36:43', '0', 0, '2023-11-08 14:36:32', NULL, '1', '管理员', '2023-11-07 16:04:19', NULL, NULL, '2023-11-08 14:37:29', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000008, 1, '4e09f0f8f2', NULL, 'admin3', '测试', NULL, NULL, 'K1V+hZd5/a9Et/aw3cfVXQ==', '0', NULL, '0', NULL, NULL, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, NULL, NULL, '100014', 'admin1', '2023-10-31 14:40:34', '100016', 'admin55', '2023-11-09 16:53:08', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000004, 3, 'b12fdc8904', NULL, 'test1', '测试1', NULL, NULL, NULL, '0', NULL, '$2a$10$6/TFwxB1P7jNH5hzcA0JAuTmsrDxEqgzqp4aDwijfRphefElWufTS', NULL, NULL, NULL, NULL, NULL, '0', '0', NULL, NULL, NULL, 0, NULL, NULL, '1', '管理员', '2023-10-11 15:57:15', '100019', 'admin3', '2023-11-16 18:34:38', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000006, 10, 'c14073cfc1', NULL, 'admin55', '门户测试', NULL, '+hCBfvoE1AFCHG8QaEh2uQ==', 'FLfuV8lDRrL1S84g5dm9oQ==', '0', NULL, '$2a$10$WPm3R9cMsRohTtA4CsIP4uXLDpBKJZlzCO8.4edDxoty6X9kDFveS', '测试企业', '88', '9999999999999', NULL, '测试地址', '0', '0', '172.16.12.254', '2023-11-24 13:58:29', '0', 1, '2023-11-28 16:36:17', '测试备注', '1', '管理员', '2023-10-20 14:39:44', '100016', 'admin55', '2023-11-28 16:37:11', '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000010, 10, '1f53935033', NULL, 'admin66', '测试2', NULL, 'h79/6DkHoKCkv2+EtFcDCw==', 'ghX9kf1Q/A83hwzaSXNYhw==', '0', NULL, '$2a$10$dwTBdtd12Ej2UlItSH3fUuqqO9MuypsdlOz2hiwJZWKrv4NqefC5.', 'cc', 'bb', '1111111111111111', NULL, 'aaaaa', '0', '0', '127.0.0.1', '2023-11-21 15:05:59', '0', 0, '2023-11-21 15:04:56', NULL, '100016', 'admin55', '2023-11-09 16:59:00', '100016', 'admin55', '2023-11-21 15:05:56', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (18, 1, '1', NULL, 'shuk', 'shuk', NULL, '1KpmsmENvm4hQAiIT0YY0V31x0mvmJZyeR6mGBVoiI0=', 'sk3OF3rwVN7VpGSpemXHuQ==', '0', NULL, '$2a$10$5hxOW1UIMcgL3s6t1Pg/qulAITgkh/1ikTHYVdq8Es.hq/RxKqmXm', 'ceshi ', NULL, '2321233333211', NULL, NULL, '0', '0', '10.10.241.218', '2023-11-21 15:47:50', '0', 0, '2023-11-21 15:47:38', NULL, '16', 'admin1', '2023-11-21 14:29:35', '16', 'admin1', '2023-11-21 15:47:50', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000017, 2, '2a5de3f6bd', NULL, 'test3', '测试1', NULL, NULL, '78+O8ADpYZEDQWoiBeosrg==', '0', NULL, '$2a$10$olHo.LdmGaYHVljmp8ka3.F7JgxKKIZ56OAB1xDDhbiZRM5dVAVDy', NULL, NULL, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, NULL, NULL, '1', '管理员', '2023-11-21 15:34:20', '1', '管理员', '2023-11-21 16:57:26', NULL); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023060000000002, 4, 'bccf2a7a4f', 1, 'zhangsf', '张三丰', '00', '', '13855556666', '1', '/images/portal/16ed81d9f13d4e5cabcc6d21b22a06d1.jpg', '1', NULL, NULL, NULL, NULL, 'aa', '0', '0', '172.16.12.254', '2023-11-02 19:57:34', '0', 0, '2023-05-26 16:02:24', '', 'admin', '管理员', '2023-04-04 13:29:07', '100014', 'admin1', '2023-11-03 13:24:20', '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023110000000011, 0, '1', NULL, '压测', 'test0', NULL, NULL, '0M2GcOW6GRbbzHoe+wQ21A==', '0', NULL, '$2a$10$PzyoAoc.jE66pwKfU5q9ue7MwKyL4jYo2d1fpEwoAtmRzaz4y0P12', NULL, NULL, '32143232312', NULL, NULL, '0', '0', NULL, NULL, NULL, NULL, NULL, NULL, '1', '管理员', '2023-11-14 15:26:09', NULL, NULL, NULL, '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (2023100000000005, 11, '95f33ae495', NULL, 'test2', '测试1', NULL, 'O8dyy6bCfL+eziJFikbymg==', 'gyvOhHepdlRtoms79soE4w==', NULL, NULL, '$2a$10$.EIpeblf5yEsaSihZO2D8.Lvip24v3oA8DaipvGF9FwHInQTIzeSO', '测试企业', '研究', '1231983921839d', NULL, '测试长度。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。', '0', '0', '127.0.0.1', '2023-12-06 17:00:25', '0', 0, '2023-11-21 15:05:11', NULL, '1', '管理员', '2023-10-11 16:01:51', '1', '管理员', '2023-12-06 17:01:23', '1'); +INSERT INTO tbl_portal_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, enterprise_name, industry_category, social_credit_code, enterprise_industry, enterprise_address, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, remark, create_by, create_by_name, create_time, update_by, update_by_name, update_time, first_flag) VALUES (1, 15, '1', 1, 'admin', '门户管理员', '00', 'admin@admin.com', '13855556666', '1', '/images/portal/fca2104d499048feb53f872dbc110fa1.png', '$2a$10$mcs.j1UiDIaLGtsHT7dqrujvv/xKGAhQxJSMLpDSxu2h6XYBAKmKO', '测试企业', '88', '9999999999999', NULL, '测试地址', '0', '0', '127.0.0.1', '2023-12-08 13:42:07', '0', 0, '2023-12-06 16:24:43', '', 'admin', '管理员', '2023-04-04 13:29:07', NULL, NULL, '2023-12-08 13:42:04', '1'); + + +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (16, 1, '门户管理员', '实验室(2023070000000016)即将到期', '您的实验室即将到期,实验室编号:2023070000000016,到期时间2023-10-03 15:51', '3', '0', '00', 'system', '系统自动', '2023-09-30 23:29:59', 'system', '系统自动', '2023-09-30 23:29:59'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (2, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020', '1', '0', '00', 'system', '系统自动', '2023-07-10 19:58:52', 'system', '系统自动', '2023-07-10 19:58:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (9, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 19:50', '1', '0', '00', 'system', '系统自动', '2023-07-20 19:50:49', 'system', '系统自动', '2023-07-20 19:50:49'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (10, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 19:53', '1', '0', '00', 'system', '系统自动', '2023-07-20 19:53:59', 'system', '系统自动', '2023-07-20 19:53:59'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (11, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 20:07', '1', '0', '00', 'system', '系统自动', '2023-07-20 20:07:45', 'system', '系统自动', '2023-07-20 20:07:45'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (31, 2023060000000002, '张三丰', '实验室(2023100000000034)申请通过', '您申请的实验室已创建,实验室编号:2023100000000034,到期时间2023-11-25 19:32', '1', '0', '00', 'system', '系统自动', '2023-10-26 19:32:32', 'system', '系统自动', '2023-10-26 19:32:32'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (19, 2023060000000002, '张三丰', '实验室(2023070000000021)申请通过', '您申请的实验室已创建,实验室编号:2023070000000021,到期时间2023-11-16 10:23', '1', '0', '00', 'system', '系统自动', '2023-10-17 10:23:57', 'system', '系统自动', '2023-10-17 10:23:57'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (29, 1, '门户管理员', '实验室(2023100000000033)申请通过', '您申请的实验室已创建,实验室编号:2023100000000033,到期时间2023-10-24 20:44', '1', '1', '00', 'system', '系统自动', '2023-10-19 20:44:58', '1', '门户管理员', '2023-12-05 15:49:25'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (12, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-07-31 20:14', '1', '0', '00', 'system', '系统自动', '2023-07-20 20:14:22', 'system', '系统自动', '2023-07-20 20:14:22'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (13, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-08-01 14:33', '1', '0', '00', 'system', '系统自动', '2023-07-21 14:33:43', 'system', '系统自动', '2023-07-21 14:33:43'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (14, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-03 15:35', '1', '0', '00', 'system', '系统自动', '2023-09-22 15:35:28', 'system', '系统自动', '2023-09-22 15:35:28'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (4, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间{expirationTime}', '1', '0', '00', 'system', '系统自动', '2023-07-11 13:00:15', 'system', '系统自动', '2023-07-11 13:00:15'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (5, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-08-02 13:05', '1', '0', '00', 'system', '系统自动', '2023-07-11 13:05:11', 'system', '系统自动', '2023-07-11 13:05:11'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (3, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020', '1', '0', '00', 'system', '系统自动', '2023-07-11 11:52:46', 'system', '系统自动', '2023-07-11 11:52:46'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (7, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-08-02 14:41', '1', '0', '00', 'system', '系统自动', '2023-07-11 14:41:45', 'system', '系统自动', '2023-07-11 14:41:45'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (30, 1, '门户管理员', '实验室(2023100000000033)即将到期', '您的实验室即将到期,实验室编号:2023100000000033,到期时间2023-10-24 20:44', '3', '0', '00', 'system', '系统自动', '2023-10-21 23:29:59', 'system', '系统自动', '2023-10-21 23:29:59'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (15, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-03 15:51', '1', '0', '00', 'system', '系统自动', '2023-09-22 15:51:18', 'system', '系统自动', '2023-09-22 15:51:18'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (28, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 17:35', '1', '0', '00', 'system', '系统自动', '2023-10-19 17:35:48', 'system', '系统自动', '2023-10-19 17:35:48'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (27, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 17:19', '1', '0', '00', 'system', '系统自动', '2023-10-19 17:20:09', 'system', '系统自动', '2023-10-19 17:20:09'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (18, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-11-08 10:09', '1', '0', '00', 'system', '系统自动', '2023-10-17 10:09:55', 'system', '系统自动', '2023-10-17 10:09:55'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (20, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-28 15:30', '1', '0', '00', 'system', '系统自动', '2023-10-17 15:30:11', 'system', '系统自动', '2023-10-17 15:30:11'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (21, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 10:00', '1', '0', '00', 'system', '系统自动', '2023-10-19 10:00:42', '1', '门户管理员', '2023-11-14 14:52:16'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (22, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 10:50', '1', '0', '00', 'system', '系统自动', '2023-10-19 10:51:25', '1', '门户管理员', '2023-11-14 14:52:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (23, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 14:23', '1', '0', '00', 'system', '系统自动', '2023-10-19 14:24:55', '1', '门户管理员', '2023-11-14 14:52:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (24, 1, '门户管理员', '实验室(2023070000000016)申请通过', '您申请的实验室已创建,实验室编号:2023070000000016,到期时间2023-10-30 16:39', '1', '0', '00', 'system', '系统自动', '2023-10-19 16:40:36', '1', '门户管理员', '2023-11-14 14:52:52'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (53, 2023060000000002, '张三丰(zhangsf)', '实验室(2023110000000041)重新初始化', '您的实验室“zeppelin(测试)”已重新初始化,实验室编号:2023110000000041,如有疑问请拨打联系电话:(021-60825678)。', '6', '0', '00', 'system', '系统自动', '2023-11-15 17:38:38', 'system', '系统自动', '2023-11-15 17:38:38'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (6, 1, '门户管理员', '实验室(2023070000000020)申请通过', '您申请的实验室已创建,实验室编号:2023070000000020,到期时间2023-08-02 13:19', '1', '0', '00', 'system', '系统自动', '2023-07-11 13:19:32', '1', '门户管理员', '2023-11-14 17:07:07'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (8, 2023060000000002, '张三丰', '实验室(2023070000000021)申请通过', '您申请的实验室已创建,实验室编号:2023070000000021,到期时间2023-08-10 20:16', '1', '0', '00', 'system', '系统自动', '2023-07-11 20:16:50', 'system', '系统自动', '2023-07-11 20:16:50'); +INSERT INTO tbl_portal_user_msg (msg_id, user_id, nike_name, msg_title, msg_text, msg_type, msg_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (17, 2023100000000005, '测试1', '实验室(2023100000000029)申请通过', '您申请的实验室已创建,实验室编号:2023100000000029,到期时间2023-10-14 11:16', '1', '0', '00', 'system', '系统自动', '2023-10-12 11:16:22', 'system', '系统自动', '2023-10-12 11:16:22'); + + +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', '2023-08-25', 2875, '2023-11-09 14:35:30.598151', NULL, 135491951); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', '2023-08-25', 2602, '2023-11-09 14:35:30.631274', NULL, 135491952); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010000', '100', '1', '00-01', '巴士一公司', '3', '2023-08-25', 3300, '2023-11-09 14:35:30.631274', NULL, 135491953); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('101400', '1014', '1', '00-06', '巴士四公司', '1', '2023-08-25', 725, '2023-11-09 14:35:30.631274', NULL, 135491954); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010200', '102', '1', '00-01', '巴士一公司', '5', '2023-08-25', 141, '2023-11-09 14:35:30.631274', NULL, 135491955); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010300', '103', '1', '00-01', '巴士一公司', '3', '2023-08-25', 5748, '2023-11-09 14:35:30.631274', NULL, 135491956); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '1', '00-06', '巴士四公司', '3', '2023-08-25', 2513, '2023-11-09 14:35:30.631274', NULL, 135491957); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010500', '105', '1', '00-04', '巴士三公司', '3', '2023-08-25', 2423, '2023-11-09 14:35:30.631274', NULL, 135491958); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010600', '106', '1', '00-04', '巴士三公司', '3', '2023-08-25', 1662, '2023-11-09 14:35:30.631274', NULL, 135491959); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010700', '107', '1', '00-10', '巴士五公司', '5', '2023-08-25', 1631, '2023-11-09 14:35:30.631274', NULL, 135491960); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010800', '108', '1', '00-10', '巴士五公司', '3', '2023-08-25', 7863, '2023-11-09 14:35:30.631274', NULL, 135491961); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('010880', '108区间', '1', '00-10', '巴士五公司', '1', '2023-08-25', 402, '2023-11-09 14:35:30.631274', NULL, 135491962); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('001100', '11', '1', '00-06', '巴士四公司', '3', '2023-08-25', 1822, '2023-11-09 14:35:30.631274', NULL, 135491963); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011000', '110', '1', '00-10', '巴士五公司', '3', '2023-08-25', 12314, '2023-11-09 14:35:30.631274', NULL, 135491964); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011100', '111', '1', '00-12', '巴士二公司', '3', '2023-08-25', 2554, '2023-11-09 14:35:30.631274', NULL, 135491965); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011200', '112', '1', '00-04', '巴士三公司', '3', '2023-08-25', 4305, '2023-11-09 14:35:30.631274', NULL, 135491966); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011280', '112区间', '1', '00-04', '巴士三公司', '3', '2023-08-25', 3194, '2023-11-09 14:35:30.631274', NULL, 135491967); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011300', '113', '1', '00-04', '巴士三公司', '3', '2023-08-25', 3478, '2023-11-09 14:35:30.631274', NULL, 135491968); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011500', '115', '1', '00-01', '巴士一公司', '3', '2023-08-25', 4334, '2023-11-09 14:35:30.631274', NULL, 135491969); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011690', '116', '1', '00-10', '巴士五公司', '3', '2023-08-25', 6640, '2023-11-09 14:35:30.631274', NULL, 135491970); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011700', '117', '1', '00-04', '巴士三公司', '3', '2023-08-25', 2401, '2023-11-09 14:35:30.631274', NULL, 135491971); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('011800', '118', '1', '00-10', '巴士五公司', '3', '2023-08-25', 4618, '2023-11-09 14:35:30.631274', NULL, 135491972); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('012000', '120', '1', '00-04', '巴士三公司', '3', '2023-08-25', 1471, '2023-11-09 14:35:30.631274', NULL, 135491973); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120104', '1201', '1', '00-01', '巴士一公司', '3', '2023-08-25', 987, '2023-11-09 14:35:30.631274', NULL, 135491974); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120304', '1203', '1', '00-12', '巴士二公司', '3', '2023-08-25', 1102, '2023-11-09 14:35:30.631274', NULL, 135491975); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120404', '1204', '1', '00-12', '巴士二公司', '3', '2023-08-25', 501, '2023-11-09 14:35:30.631274', NULL, 135491976); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120490', '1204B', '1', '00-12', '巴士二公司', '3', '2023-08-25', 420, '2023-11-09 14:35:30.631274', NULL, 135491977); +INSERT INTO tbl_prd_line_metric_day (line_code, line_name, line_status, company_code, company_name, service_type, metric_date, metric_value, create_time, line_no, id) VALUES ('120504', '1205', '1', '00-06', '巴士四公司', '3', '2023-08-25', 455, '2023-11-09 14:35:30.631274', NULL, 135491978); + + +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 5, '2023-08-25', 46, '2023-11-09 14:36:08.307074', NULL, 1738985); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 6, '2023-08-25', 106, '2023-11-09 14:36:08.314398', NULL, 1738986); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 7, '2023-08-25', 224, '2023-11-09 14:36:08.314398', NULL, 1738987); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 8, '2023-08-25', 288, '2023-11-09 14:36:08.314398', NULL, 1738988); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 9, '2023-08-25', 236, '2023-11-09 14:36:08.314398', NULL, 1738989); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 10, '2023-08-25', 184, '2023-11-09 14:36:08.314398', NULL, 1738990); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 11, '2023-08-25', 193, '2023-11-09 14:36:08.314398', NULL, 1738991); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 12, '2023-08-25', 196, '2023-11-09 14:36:08.314398', NULL, 1738992); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 13, '2023-08-25', 149, '2023-11-09 14:36:08.314398', NULL, 1738993); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 14, '2023-08-25', 164, '2023-11-09 14:36:08.314398', NULL, 1738994); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 15, '2023-08-25', 185, '2023-11-09 14:36:08.314398', NULL, 1738995); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 16, '2023-08-25', 175, '2023-11-09 14:36:08.314398', NULL, 1738996); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 17, '2023-08-25', 180, '2023-11-09 14:36:08.314398', NULL, 1738997); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 18, '2023-08-25', 187, '2023-11-09 14:36:08.314398', NULL, 1738998); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 19, '2023-08-25', 112, '2023-11-09 14:36:08.314398', NULL, 1738999); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 20, '2023-08-25', 85, '2023-11-09 14:36:08.314398', NULL, 1739000); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 21, '2023-08-25', 86, '2023-11-09 14:36:08.314398', NULL, 1739001); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 22, '2023-08-25', 56, '2023-11-09 14:36:08.314398', NULL, 1739002); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', 23, '2023-08-25', 23, '2023-11-09 14:36:08.314398', NULL, 1739003); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 6, '2023-08-25', 13, '2023-11-09 14:36:08.314398', NULL, 1739004); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 7, '2023-08-25', 157, '2023-11-09 14:36:08.314398', NULL, 1739005); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 8, '2023-08-25', 303, '2023-11-09 14:36:08.314398', NULL, 1739006); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 9, '2023-08-25', 187, '2023-11-09 14:36:08.314398', NULL, 1739007); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 10, '2023-08-25', 101, '2023-11-09 14:36:08.314398', NULL, 1739008); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 11, '2023-08-25', 68, '2023-11-09 14:36:08.314398', NULL, 1739009); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 12, '2023-08-25', 56, '2023-11-09 14:36:08.314398', NULL, 1739010); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 13, '2023-08-25', 81, '2023-11-09 14:36:08.314398', NULL, 1739011); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 14, '2023-08-25', 123, '2023-11-09 14:36:08.314398', NULL, 1739012); +INSERT INTO tbl_prd_line_metric_hour (line_code, line_name, line_status, company_code, company_name, service_type, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', 15, '2023-08-25', 124, '2023-11-09 14:36:08.314398', NULL, 1739013); + + +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '1', '00-04', '巴士三公司', '3', '2023-08', 2875, '2023-11-09 14:36:08.600077', NULL, 32547); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000400', '04', '1', '00-10', '巴士五公司', '3', '2023-08', 2602, '2023-11-09 14:36:08.60549', NULL, 32548); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000600', '6', '1', '00-01', '巴士一公司', '3', '2023-08', 5313, '2023-11-09 14:36:08.60549', NULL, 32549); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('000800', '8', '1', '00-01', '巴士一公司', '3', '2023-08', 1475, '2023-11-09 14:36:08.60549', NULL, 32550); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001100', '11', '1', '00-06', '巴士四公司', '3', '2023-08', 1822, '2023-11-09 14:36:08.60549', NULL, 32551); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001300', '13', '1', '00-01', '巴士一公司', '3', '2023-08', 3424, '2023-11-09 14:36:08.60549', NULL, 32552); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001400', '14', '1', '00-01', '巴士一公司', '3', '2023-08', 3278, '2023-11-09 14:36:08.60549', NULL, 32553); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001500', '15', '1', '00-01', '巴士一公司', '3', '2023-08', 2101, '2023-11-09 14:36:08.60549', NULL, 32554); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001700', '17', '1', '00-06', '巴士四公司', '3', '2023-08', 2767, '2023-11-09 14:36:08.60549', NULL, 32555); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001800', '18', '1', '00-06', '巴士四公司', '3', '2023-08', 3413, '2023-11-09 14:36:08.60549', NULL, 32556); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('001900', '19', '1', '00-01', '巴士一公司', '3', '2023-08', 3358, '2023-11-09 14:36:08.60549', NULL, 32557); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002000', '20', '1', '00-01', '巴士一公司', '3', '2023-08', 6575, '2023-11-09 14:36:08.60549', NULL, 32558); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002100', '21', '1', '00-01', '巴士一公司', '3', '2023-08', 9073, '2023-11-09 14:36:08.60549', NULL, 32559); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002200', '22', '1', '00-01', '巴士一公司', '3', '2023-08', 3063, '2023-11-09 14:36:08.60549', NULL, 32560); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002300', '23', '1', '00-01', '巴士一公司', '3', '2023-08', 4126, '2023-11-09 14:36:08.60549', NULL, 32561); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002400', '24', '1', '00-01', '巴士一公司', '3', '2023-08', 4168, '2023-11-09 14:36:08.60549', NULL, 32562); +INSERT INTO tbl_prd_line_metric_month (line_code, line_name, line_status, company_code, company_name, service_type, metric_month, metric_value, create_time, line_no, id) VALUES ('002500', '25', '1', '00-01', '巴士一公司', '3', '2023-08', 7407, '2023-11-09 14:36:08.60549', NULL, 32563); + + + +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '蓝村路南泉路', 1, '2023-08-25', 131, '2023-11-09 14:35:58.795016', NULL, 127361); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦建路东方路', 2, '2023-08-25', 94, '2023-11-09 14:35:58.807329', NULL, 127362); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路宁阳路', 3, '2023-08-25', 142, '2023-11-09 14:35:58.807329', NULL, 127363); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路浦电路', 4, '2023-08-25', 321, '2023-11-09 14:35:58.807329', NULL, 127364); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路商城路', 5, '2023-08-25', 101, '2023-11-09 14:35:58.807329', NULL, 127365); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '浦东南路浦东大道', 6, '2023-08-25', 87, '2023-11-09 14:35:58.807329', NULL, 127366); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安东路浙江中路', 7, '2023-08-25', 140, '2023-11-09 14:35:58.807329', NULL, 127367); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安中路石门一路', 8, '2023-08-25', 47, '2023-11-09 14:35:58.807329', NULL, 127368); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安中路陕西北路', 9, '2023-08-25', 81, '2023-11-09 14:35:58.807329', NULL, 127369); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安西路华山路', 10, '2023-08-25', 81, '2023-11-09 14:35:58.807329', NULL, 127370); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '延安西路镇宁路', 11, '2023-08-25', 50, '2023-11-09 14:35:58.807329', NULL, 127371); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '江苏路延安西路', 12, '2023-08-25', 80, '2023-11-09 14:35:58.807329', NULL, 127372); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '江苏路愚园路', 13, '2023-08-25', 32, '2023-11-09 14:35:58.807329', NULL, 127373); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路谈家渡路', 14, '2023-08-25', 22, '2023-11-09 14:35:58.807329', NULL, 127374); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路白玉路', 15, '2023-08-25', 29, '2023-11-09 14:35:58.807329', NULL, 127375); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路南石路', 16, '2023-08-25', 7, '2023-11-09 14:35:58.807329', NULL, 127376); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路铜川路', 17, '2023-08-25', 6, '2023-11-09 14:35:58.807329', NULL, 127377); +INSERT INTO tbl_prd_line_station_metric_day (line_code, line_name, up, level_name, levels, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '曹杨路芝川路', 18, '2023-08-25', 1, '2023-11-09 14:35:58.807329', NULL, 127378); + + + +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 13, '2023-08-25', 7, '2023-11-09 14:36:01.034693', NULL, 1538323); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 14, '2023-08-25', 5, '2023-11-09 14:36:01.034693', NULL, 1538324); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 15, '2023-08-25', 17, '2023-11-09 14:36:01.034693', NULL, 1538325); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 16, '2023-08-25', 16, '2023-11-09 14:36:01.034693', NULL, 1538326); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 17, '2023-08-25', 10, '2023-11-09 14:36:01.034693', NULL, 1538327); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 18, '2023-08-25', 5, '2023-11-09 14:36:01.034693', NULL, 1538328); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 19, '2023-08-25', 2, '2023-11-09 14:36:01.034693', NULL, 1538329); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 20, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538330); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 1, '龙华', 22, '2023-08-25', 3, '2023-11-09 14:36:01.034693', NULL, 1538331); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 4, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538332); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 5, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538333); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 6, '2023-08-25', 21, '2023-11-09 14:36:01.034693', NULL, 1538334); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 7, '2023-08-25', 16, '2023-11-09 14:36:01.034693', NULL, 1538335); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 8, '2023-08-25', 16, '2023-11-09 14:36:01.034693', NULL, 1538336); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 9, '2023-08-25', 11, '2023-11-09 14:36:01.034693', NULL, 1538337); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 10, '2023-08-25', 11, '2023-11-09 14:36:01.034693', NULL, 1538338); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 11, '2023-08-25', 3, '2023-11-09 14:36:01.034693', NULL, 1538339); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 12, '2023-08-25', 7, '2023-11-09 14:36:01.034693', NULL, 1538340); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 13, '2023-08-25', 9, '2023-11-09 14:36:01.034693', NULL, 1538341); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 14, '2023-08-25', 11, '2023-11-09 14:36:01.034693', NULL, 1538342); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 15, '2023-08-25', 4, '2023-11-09 14:36:01.034693', NULL, 1538343); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 16, '2023-08-25', 6, '2023-11-09 14:36:01.034693', NULL, 1538344); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 17, '2023-08-25', 6, '2023-11-09 14:36:01.034693', NULL, 1538345); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 18, '2023-08-25', 8, '2023-11-09 14:36:01.034693', NULL, 1538346); +INSERT INTO tbl_prd_line_station_metric_hour (line_code, line_name, up, levels, level_name, metric_hour, metric_date, metric_value, create_time, line_no, id) VALUES ('010400', '104', '上行', 2, '天钥桥路中山南二路', 19, '2023-08-25', 1, '2023-11-09 14:36:01.034693', NULL, 1538347); + + +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 7, '延安东路浙江中路', '2023-08', 140, '2023-11-09 14:35:43.522737', NULL, 109168); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 8, '延安中路石门一路', '2023-08', 47, '2023-11-09 14:35:43.526955', NULL, 109169); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 9, '延安中路陕西北路', '2023-08', 81, '2023-11-09 14:35:43.526955', NULL, 109170); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 10, '延安西路华山路', '2023-08', 81, '2023-11-09 14:35:43.526955', NULL, 109171); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 11, '延安西路镇宁路', '2023-08', 50, '2023-11-09 14:35:43.526955', NULL, 109172); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 16, '曹杨路南石路', '2023-08', 7, '2023-11-09 14:35:43.526955', NULL, 109173); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 15, '曹杨路白玉路', '2023-08', 29, '2023-11-09 14:35:43.526955', NULL, 109174); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 18, '曹杨路芝川路', '2023-08', 1, '2023-11-09 14:35:43.526955', NULL, 109175); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 14, '曹杨路谈家渡路', '2023-08', 22, '2023-11-09 14:35:43.526955', NULL, 109176); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 17, '曹杨路铜川路', '2023-08', 6, '2023-11-09 14:35:43.526955', NULL, 109177); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 12, '江苏路延安西路', '2023-08', 80, '2023-11-09 14:35:43.526955', NULL, 109178); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 13, '江苏路愚园路', '2023-08', 32, '2023-11-09 14:35:43.526955', NULL, 109179); +INSERT INTO tbl_prd_line_station_metric_month (line_code, line_name, up, levels, level_name, metric_month, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', 5, '浦东南路商城路', '2023-08', 101, '2023-11-09 14:35:43.526955', NULL, 109180); + + + +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '公交换公交', '2023-08-25', 23, '2023-11-09 14:35:32.240675', NULL, '蓝村路南泉路', 294934); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '地铁换公交', '2023-08-25', 9, '2023-11-09 14:35:32.255085', NULL, '蓝村路南泉路', 294935); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '非换乘', '2023-08-25', 99, '2023-11-09 14:35:32.255085', NULL, '蓝村路南泉路', 294936); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '公交换公交', '2023-08-25', 42, '2023-11-09 14:35:32.255085', NULL, '浦建路东方路', 294937); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '地铁换公交', '2023-08-25', 4, '2023-11-09 14:35:32.255085', NULL, '浦建路东方路', 294938); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '非换乘', '2023-08-25', 48, '2023-11-09 14:35:32.255085', NULL, '浦建路东方路', 294939); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '公交换公交', '2023-08-25', 13, '2023-11-09 14:35:32.255085', NULL, '浦东南路宁阳路', 294940); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '地铁换公交', '2023-08-25', 9, '2023-11-09 14:35:32.255085', NULL, '浦东南路宁阳路', 294941); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '非换乘', '2023-08-25', 120, '2023-11-09 14:35:32.255085', NULL, '浦东南路宁阳路', 294942); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '公交换公交', '2023-08-25', 29, '2023-11-09 14:35:32.255085', NULL, '浦东南路浦电路', 294943); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '地铁换公交', '2023-08-25', 2, '2023-11-09 14:35:32.255085', NULL, '浦东南路浦电路', 294944); +INSERT INTO tbl_prd_line_station_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '非换乘', '2023-08-25', 290, '2023-11-09 14:35:32.255085', NULL, '浦东南路浦电路', 294945); + +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '公交换公交', 10, '2023-08-25', 1, '2023-11-09 14:35:46.061181', NULL, '上海西站', 2250944); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '公交换公交', 13, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250945); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '地铁换公交', 7, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250946); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '地铁换公交', 11, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250947); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '地铁换公交', 15, '2023-08-25', 1, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250948); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 5, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250949); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 6, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250950); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 7, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250951); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 8, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250952); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 9, '2023-08-25', 7, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250953); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 11, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250954); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 12, '2023-08-25', 2, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250955); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 13, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250956); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 14, '2023-08-25', 5, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250957); +INSERT INTO tbl_prd_line_station_trans_hour (line_code, line_name, up, levels, exchange_type, metric_hour, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '非换乘', 15, '2023-08-25', 4, '2023-11-09 14:35:46.074457', NULL, '上海西站', 2250958); + + + +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '公交换公交', '2023-08', 37, '2023-11-09 14:35:42.054173', NULL, '延安东路浙江中路', 252802); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:42.059253', NULL, '延安东路浙江中路', 252803); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '非换乘', '2023-08', 101, '2023-11-09 14:35:42.059253', NULL, '延安东路浙江中路', 252804); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '公交换公交', '2023-08', 14, '2023-11-09 14:35:42.059253', NULL, '延安中路石门一路', 252805); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '地铁换公交', '2023-08', 6, '2023-11-09 14:35:42.059253', NULL, '延安中路石门一路', 252806); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '非换乘', '2023-08', 27, '2023-11-09 14:35:42.059253', NULL, '延安中路石门一路', 252807); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '公交换公交', '2023-08', 12, '2023-11-09 14:35:42.059253', NULL, '延安中路陕西北路', 252808); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:42.059253', NULL, '延安中路陕西北路', 252809); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '非换乘', '2023-08', 67, '2023-11-09 14:35:42.059253', NULL, '延安中路陕西北路', 252810); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '公交换公交', '2023-08', 16, '2023-11-09 14:35:42.059253', NULL, '延安西路华山路', 252811); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '地铁换公交', '2023-08', 14, '2023-11-09 14:35:42.059253', NULL, '延安西路华山路', 252812); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '非换乘', '2023-08', 51, '2023-11-09 14:35:42.059253', NULL, '延安西路华山路', 252813); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '公交换公交', '2023-08', 12, '2023-11-09 14:35:42.059253', NULL, '延安西路镇宁路', 252814); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:42.059253', NULL, '延安西路镇宁路', 252815); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '非换乘', '2023-08', 36, '2023-11-09 14:35:42.059253', NULL, '延安西路镇宁路', 252816); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 16, '公交换公交', '2023-08', 4, '2023-11-09 14:35:42.059253', NULL, '曹杨路南石路', 252817); +INSERT INTO tbl_prd_line_station_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 16, '地铁换公交', '2023-08', 1, '2023-11-09 14:35:42.059253', NULL, '曹杨路南石路', 252818); + + +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '03-06218', NULL, '蓝村路南泉路', '2023-08-25 07:15:00', '上海西站', '2023-08-25 08:26:37', '全程', '2023-08-25', 28, '2023-11-09 14:35:35.145978', NULL, 1437139); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '03-06218', NULL, '蓝村路南泉路', '2023-08-25 10:30:00', '上海西站', '2023-08-25 11:51:13', '全程', '2023-08-25', 15, '2023-11-09 14:35:35.164175', NULL, 1437140); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '03-06218', NULL, '上海西站', '2023-08-25 05:50:00', '蓝村路南泉路', '2023-08-25 06:46:55', '全程', '2023-08-25', 13, '2023-11-09 14:35:35.164175', NULL, 1437141); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '03-06218', NULL, '上海西站', '2023-08-25 08:45:00', '蓝村路南泉路', '2023-08-25 10:13:24', '全程', '2023-08-25', 25, '2023-11-09 14:35:35.164175', NULL, 1437142); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '04-07182', NULL, '蓝村路南泉路', '2023-08-25 17:40:00', '上海西站', '2023-08-25 19:21:04', '全程', '2023-08-25', 26, '2023-11-09 14:35:35.164175', NULL, 1437143); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-00724D', '04-07182', NULL, '蓝村路南泉路', '2023-08-25 21:20:00', '上海西站', '2023-08-25 22:37:49', '全程', '2023-08-25', 9, '2023-11-09 14:35:35.164175', NULL, 1437144); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '04-07182', NULL, '上海西站', '2023-08-25 16:05:00', '蓝村路南泉路', '2023-08-25 17:20:40', '全程', '2023-08-25', 20, '2023-11-09 14:35:35.164175', NULL, 1437145); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-00724D', '04-07182', NULL, '上海西站', '2023-08-25 19:50:00', '蓝村路南泉路', '2023-08-25 20:57:31', '全程', '2023-08-25', 24, '2023-11-09 14:35:35.164175', NULL, 1437146); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 07:30:00', '上海西站', '2023-08-25 08:51:40', '全程', '2023-08-25', 20, '2023-11-09 14:35:35.164175', NULL, 1437147); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 10:45:00', '上海西站', '2023-08-25 12:01:25', '全程', '2023-08-25', 15, '2023-11-09 14:35:35.164175', NULL, 1437148); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 14:00:00', '上海西站', '2023-08-25 15:29:52', '全程', '2023-08-25', 20, '2023-11-09 14:35:35.164175', NULL, 1437149); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '上行', '沪A-03041D', '03-06097', NULL, '蓝村路南泉路', '2023-08-25 17:25:00', '上海西站', '2023-08-25 19:07:08', '全程', '2023-08-25', 21, '2023-11-09 14:35:35.164175', NULL, 1437150); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-03041D', '03-06097', NULL, '上海西站', '2023-08-25 06:10:00', '蓝村路南泉路', '2023-08-25 07:09:14', '全程', '2023-08-25', 16, '2023-11-09 14:35:35.164175', NULL, 1437151); +INSERT INTO tbl_prd_route_metric_day (line_code, line_name, up, license_plate, driver_code, bus_code, start_station, start_time, end_station, arrival_time, waybill_type, metric_date, metric_value, create_time, line_no, id) VALUES ('000100', '01', '下行', '沪A-03041D', '03-06097', NULL, '上海西站', '2023-08-25 09:00:00', '蓝村路南泉路', '2023-08-25 10:34:11', '全程', '2023-08-25', 45, '2023-11-09 14:35:35.164175', NULL, 1437152); + + + +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '1', '2023-08-25', 100, '2023-11-09 14:35:38.718145', NULL, '01', 138930); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '1', '2023-08-25', 66, '2023-11-09 14:35:38.736796', NULL, '01', 138931); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '1', '2023-08-25', 99, '2023-11-09 14:35:38.736796', NULL, '01', 138932); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '1', '2023-08-25', 273, '2023-11-09 14:35:38.736796', NULL, '01', 138933); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '1', '2023-08-25', 77, '2023-11-09 14:35:38.736796', NULL, '01', 138934); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 6, '1', '2023-08-25', 73, '2023-11-09 14:35:38.736796', NULL, '01', 138935); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '1', '2023-08-25', 80, '2023-11-09 14:35:38.736796', NULL, '01', 138936); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '1', '2023-08-25', 27, '2023-11-09 14:35:38.736796', NULL, '01', 138937); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '1', '2023-08-25', 50, '2023-11-09 14:35:38.736796', NULL, '01', 138938); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '1', '2023-08-25', 45, '2023-11-09 14:35:38.736796', NULL, '01', 138939); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '1', '2023-08-25', 33, '2023-11-09 14:35:38.736796', NULL, '01', 138940); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 12, '1', '2023-08-25', 60, '2023-11-09 14:35:38.736796', NULL, '01', 138941); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 13, '1', '2023-08-25', 22, '2023-11-09 14:35:38.736796', NULL, '01', 138942); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 14, '1', '2023-08-25', 15, '2023-11-09 14:35:38.736796', NULL, '01', 138943); +INSERT INTO tbl_prd_station_freq_metric_day (line_code, line_name, up, levels, line_status, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 15, '1', '2023-08-25', 20, '2023-11-09 14:35:38.736796', NULL, '01', 138944); + + + + +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '1', '2023-08', 100, '2023-11-09 14:35:39.89496', NULL, '01', 282029); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '1', '2023-08', 66, '2023-11-09 14:35:39.900578', NULL, '01', 282030); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '1', '2023-08', 99, '2023-11-09 14:35:39.900578', NULL, '01', 282031); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '1', '2023-08', 273, '2023-11-09 14:35:39.900578', NULL, '01', 282032); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '1', '2023-08', 77, '2023-11-09 14:35:39.900578', NULL, '01', 282033); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 6, '1', '2023-08', 73, '2023-11-09 14:35:39.900578', NULL, '01', 282034); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 7, '1', '2023-08', 80, '2023-11-09 14:35:39.900578', NULL, '01', 282035); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 8, '1', '2023-08', 27, '2023-11-09 14:35:39.900578', NULL, '01', 282036); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 9, '1', '2023-08', 50, '2023-11-09 14:35:39.900578', NULL, '01', 282037); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 10, '1', '2023-08', 45, '2023-11-09 14:35:39.900578', NULL, '01', 282038); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 11, '1', '2023-08', 33, '2023-11-09 14:35:39.900578', NULL, '01', 282039); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 12, '1', '2023-08', 60, '2023-11-09 14:35:39.900578', NULL, '01', 282040); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 13, '1', '2023-08', 22, '2023-11-09 14:35:39.900578', NULL, '01', 282041); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 14, '1', '2023-08', 15, '2023-11-09 14:35:39.900578', NULL, '01', 282042); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 15, '1', '2023-08', 20, '2023-11-09 14:35:39.900578', NULL, '01', 282043); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 16, '1', '2023-08', 4, '2023-11-09 14:35:39.900578', NULL, '01', 282044); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 17, '1', '2023-08', 2, '2023-11-09 14:35:39.900578', NULL, '01', 282045); +INSERT INTO tbl_prd_station_freq_metric_month (line_code, line_name, up, levels, line_status, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '下行', 1, '1', '2023-08', 36, '2023-11-09 14:35:39.900578', NULL, '01', 282046); + + + + + +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '公交换公交', '2023-08-25', 20, '2023-11-09 14:35:40.46062', NULL, '蓝村路南泉路', 717077); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '地铁换公交', '2023-08-25', 6, '2023-11-09 14:35:40.471864', NULL, '蓝村路南泉路', 717078); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '非换乘', '2023-08-25', 74, '2023-11-09 14:35:40.471864', NULL, '蓝村路南泉路', 717079); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '公交换公交', '2023-08-25', 32, '2023-11-09 14:35:40.471864', NULL, '浦建路东方路', 717080); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '地铁换公交', '2023-08-25', 2, '2023-11-09 14:35:40.471864', NULL, '浦建路东方路', 717081); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '非换乘', '2023-08-25', 32, '2023-11-09 14:35:40.471864', NULL, '浦建路东方路', 717082); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '公交换公交', '2023-08-25', 12, '2023-11-09 14:35:40.471864', NULL, '浦东南路宁阳路', 717083); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '地铁换公交', '2023-08-25', 5, '2023-11-09 14:35:40.471864', NULL, '浦东南路宁阳路', 717084); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '非换乘', '2023-08-25', 82, '2023-11-09 14:35:40.471864', NULL, '浦东南路宁阳路', 717085); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '公交换公交', '2023-08-25', 26, '2023-11-09 14:35:40.471864', NULL, '浦东南路浦电路', 717086); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '地铁换公交', '2023-08-25', 1, '2023-11-09 14:35:40.471864', NULL, '浦东南路浦电路', 717087); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '非换乘', '2023-08-25', 246, '2023-11-09 14:35:40.471864', NULL, '浦东南路浦电路', 717088); +INSERT INTO tbl_prd_station_freq_trans_day (line_code, line_name, up, levels, exchange_type, metric_date, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '公交换公交', '2023-08-25', 30, '2023-11-09 14:35:40.471864', NULL, '浦东南路商城路', 717089); + + +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 1, '非换乘', '2023-08', 74, '2023-11-09 14:35:44.124418', NULL, '蓝村路南泉路', 438220); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '公交换公交', '2023-08', 32, '2023-11-09 14:35:44.124418', NULL, '浦建路东方路', 438221); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '地铁换公交', '2023-08', 2, '2023-11-09 14:35:44.124418', NULL, '浦建路东方路', 438222); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 2, '非换乘', '2023-08', 32, '2023-11-09 14:35:44.124418', NULL, '浦建路东方路', 438223); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '公交换公交', '2023-08', 12, '2023-11-09 14:35:44.124418', NULL, '浦东南路宁阳路', 438224); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '地铁换公交', '2023-08', 5, '2023-11-09 14:35:44.124418', NULL, '浦东南路宁阳路', 438225); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 3, '非换乘', '2023-08', 82, '2023-11-09 14:35:44.124418', NULL, '浦东南路宁阳路', 438226); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '公交换公交', '2023-08', 26, '2023-11-09 14:35:44.124418', NULL, '浦东南路浦电路', 438227); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '地铁换公交', '2023-08', 1, '2023-11-09 14:35:44.124418', NULL, '浦东南路浦电路', 438228); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 4, '非换乘', '2023-08', 246, '2023-11-09 14:35:44.124418', NULL, '浦东南路浦电路', 438229); +INSERT INTO tbl_prd_station_freq_trans_month (line_code, line_name, up, levels, exchange_type, metric_month, metric_value, create_time, line_no, level_name, id) VALUES ('000100', '01', '上行', 5, '公交换公交', '2023-08', 30, '2023-11-09 14:35:44.124418', NULL, '浦东南路商城路', 438230); + + +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (283, '/home/flink/dws-file/2023-08/dws_line_metric_month.zip', 'lineMonth', 503, '2023-11-09 14:36:08.885782', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (282, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_metric_hour.zip', 'lineHour', 8397, '2023-11-09 14:36:08.871764', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (281, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_metric_hour.zip', 'stationHour', 202677, '2023-11-09 14:36:08.83232', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (280, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_metric_day.zip', 'stationDay', 18193, '2023-11-09 14:35:59.25371', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (279, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_trans_hour.zip', 'stationTransHour', 321562, '2023-11-09 14:35:59.125862', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (278, '/home/flink/dws-file/2023-08/dws_station_freq_trans_month.zip', 'stationFreqTransMonth', 39837, '2023-11-09 14:35:44.390421', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (277, '/home/flink/dws-file/2023-08/dws_line_station_metric_month.zip', 'stationMonth', 18193, '2023-11-09 14:35:43.650689', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (276, '/home/flink/dws-file/2023-08/dws_line_station_trans_month.zip', 'stationTrnasMonth', 42132, '2023-11-09 14:35:42.377092', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (275, '/home/flink/dws-file/2023-08/2023-08-25/dws_station_freq_trans_day.zip', 'stationFreqTransDay', 39837, '2023-11-09 14:35:40.781475', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (274, '/home/flink/dws-file/2023-08/dws_station_freq_metric_month.zip', 'stationFreqMonth', 17365, '2023-11-09 14:35:40.017231', '2023-08-01', '00'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (273, '/home/flink/dws-file/2023-08/2023-08-25/dws_station_freq_metric_day.zip', 'stationFreqDay', 17365, '2023-11-09 14:35:39.388497', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (272, '/home/flink/dws-file/2023-08/2023-08-25/dws_route_metric_day.zip', 'routeMetricDay', 57797, '2023-11-09 14:35:38.084658', '2023-08-25', '99'); +INSERT INTO tbl_prd_sync_record (id, path, table_name, count, create_time, txn_date, data_status) VALUES (271, '/home/flink/dws-file/2023-08/2023-08-25/dws_line_station_trans_day.zip', 'stationTransDay', 42132, '2023-11-09 14:35:32.735624', '2023-08-25', '99'); + + + +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (386, 0, '666c0a65a6', 'e5718445179640a391be03548a7568c5', 'ruoyi-ui.zip', 'zip', '1543323', 'portal-2023-12', 'python', 'user', 'portal', '222', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 18:10:59', '1', '门户管理员', '2023-12-05 18:10:59'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (385, 0, 'dc4cfca8bc', 'b665724877e045a7b8d648c1a62d3988', 'agilebpm-ui.zip', 'zip', '14176772', 'portal-2023-12', 'python', 'user', 'portal', '111111', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 18:04:31', '1', '门户管理员', '2023-12-05 18:04:31'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (384, 0, '43c302a468', '8432fb2de08145868033eaa5de9d4e45', 'agilebpm-ui.zip', 'zip', '14176772', 'portal-2023-12', 'python', 'user', 'portal', '111111', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 18:04:11', '1', '门户管理员', '2023-12-05 18:04:11'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (383, 0, 'b47baf8421', '2202c93a48204219a3d1bfdd9f310689', 'agilebpm-ui.zip', 'zip', '14176772', 'portal-2023-12', 'python', 'user', 'portal', '111111', '0', NULL, NULL, NULL, '00', '1', '门户管理员', '2023-12-05 17:53:53', '1', '门户管理员', '2023-12-05 17:53:53'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (382, 0, 'e544b44ad1', '2f819636a2f34668a6558c9a2a445729', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:47:51', '100025', 'test88', '2023-12-05 14:47:51'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (381, 0, '229fddc9de', '6d94ef12d1a44d90a4e922f5d7cee99b', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:46:28', '100025', 'test88', '2023-12-05 14:46:28'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (380, 0, '89c827a40d', '1b99378246384e1a8410c7e0609220f7', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:31:41', '100025', 'test88', '2023-12-05 14:31:41'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (379, 0, '0095817244', '42e30ccf75894b7aa4d018bee14d2031', 'wallhaven-gp9d27.jpg', 'jpg', '13953884', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:20:21', '100025', 'test88', '2023-12-05 14:20:21'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (378, 0, '8506a3ba37', 'b3ba900787164394816182ad4575b047', 'wallhaven-gp9d27.jpg', 'jpg', '13953884', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:20:06', '100025', 'test88', '2023-12-05 14:20:06'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (377, 0, '1390b20e9f', 'fb02f11c1f1348caae73deea218a57c4', 'wallhaven-gp9d27.jpg', 'jpg', '13953884', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:16:33', '100025', 'test88', '2023-12-05 14:16:33'); +INSERT INTO tbl_public_files (file_id, version_num, rec_token, uuid, file_name, file_extension, file_size, file_category_path, file_type, file_source_type, sys_type, remarks, file_busi_id, file_busi_id2, file_busi_id3, upload_size, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (376, 0, '80dc44181c', '54f27f6f92cc4e1bb54d7c382e513eab', 'wallhaven-3z98pd.jpg', 'jpg', '3599349', 'console-2023-12', 'normal', 'console', 'console', NULL, '0', NULL, NULL, NULL, '98', '100025', 'test88', '2023-12-05 14:16:15', '100025', 'test88', '2023-12-05 14:16:15'); + + + +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (39, 0, '1', 'SQL工作台审批', 'sql_console_data_approve', 'SQL工作台审批', '您的SQL工作台数据申请{{applyNo}}已审批{{isPasss}},请登录久事大数据开放平台(管理系统)管理查看。', '22', '1', 'phone', '00', '1', '管理员', '2023-11-16 19:57:07', '1', '管理员', '2023-11-16 19:57:07'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (38, 0, '1', '实验室注入申请', 'docker_upload_review_sys', '实验室注入申请', '尊敬的用户您好,您的上传申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '21', '1', 'sys', '99', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (37, 0, '1', '实验室注入申请', 'docker_upload_review_phone', '实验室注入申请', '尊敬的用户您好,您的上传申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '21', '1', 'phone', '00', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (36, 0, '1', '实验室下载申请', 'docker_download_review_sys', '实验室下载申请', '尊敬的用户您好,您的下载申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '7', '1', 'sys', '99', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (35, 0, '1', '实验室下载申请', 'docker_download_review_phone', '实验室下载申请', '尊敬的用户您好,您的下载申请已{{ispass}},单号为{{applyNo}},详情请登录久事大数据平台。', '7', '1', 'phone', '00', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); +INSERT INTO tbl_public_msg_template (template_id, version_num, rec_token, msg_desc, template_code, msg_title, msg_text, msg_type, show_type, template_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (34, 0, '1', '实验室重新初始(jupyter)', 'docker_create_new_phone2', '实验室({{labCode}})重新初始化', '您的实验室“{{name}}”已重新初始化,实验室编号:{{labCode}},访问地址{{url}},密码:{{password}},如有疑问请拨打联系电话:(021-60825678)。', '6', '1', 'phone', '00', '1', '管理员', '2023-06-19 14:27:44', '1', '管理员', '2023-06-19 14:27:44'); + + + +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (151, 'qOODy/Ov5qmQEq5PBdI4hg==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:11:42', '1', '管理员', '2023-12-04 15:11:42'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (150, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:11:39', '1', '管理员', '2023-12-04 15:11:39'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (149, 'qOODy/Ov5qmQEq5PBdI4hg==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:09:43', '1', '管理员', '2023-12-04 15:09:43'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (148, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIDCOrJOlJ1dDAGO+1uDITffKC4DnsmeX7brm/ySGPkIkITSazj68OVnsM4H+nur7k8ggc2iwHdAaFn6ZF7iGDNWxejGAhCEqUj0dfMlIwOY2JjwDMMvElRRBv6J4UuKM', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:08:59', '1', '管理员', '2023-12-04 15:08:59'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (147, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIRszlQBp2eG2FKGjj/a7P89U7uIKsdzfO1KRGSpvhtHPp8KWMQA3cqOLVBb0ZeNXWG6UzE0ZGgvetUp2bz1ZzftMIOwdQhKT5YHRYxRuCdPYmlu114tQ7v1nwgRjckkB', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 15:08:30', '1', '管理员', '2023-12-04 15:08:30'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (146, 'sk3OF3rwVN7VpGSpemXHuQ==', 'prometheus健康告警', 'ZecY1bq/GbkOFnMiU8UetlvqDwLDFhHZy/Ch8S0W1fb2rbrXCy/d4ISXrvlj2cAg03tt5c57rTTGN2tpEHXZPCvNjn5+qT8IKirWbqhtgfx7GeJPbkJtO6VUBISDzKHlVV6R3y5kh0GB43ASg4tyqA3bVX0Bc/p3EXFk7VFGlY2JKmHPnJV2SxRAp89GZodqIRszlQBp2eG2FKGjj/a7P89U7uIKsdzfO1KRGSpvhtHPp8KWMQA3cqOLVBb0ZeNXWG6UzE0ZGgvetUp2bz1ZzftMIOwdQhKT5YHRYxRuCdPYmlu114tQ7v1nwgRjckkB', '22', '1', '', '', 'Failed to connect to /127.0.0.1:18084 executing POST http://127.0.0.1:18084/message-gateway/phoneMsg/send', 'console', '00', '1', '管理员', '2023-12-04 14:07:43', '1', '管理员', '2023-12-04 14:07:43'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (145, '5Agvo9GO0V4fkBmZN0bikw==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXXVjzoGqpUluENbIp6b9SdEreiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100025', 'test88', '', 'console', '00', 'system', '系统自动', '2023-12-01 09:10:38', 'system', '系统自动', '2023-12-01 09:10:38'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (144, '5Agvo9GO0V4fkBmZN0bikw==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXXN9EP5WJbQJTVVfJg8zw0WreiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100025', 'test88', '', 'console', '00', 'system', '系统自动', '2023-12-01 09:08:19', 'system', '系统自动', '2023-12-01 09:08:19'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (143, 'cYh/BaXTHMkXNJcb+vw/IA==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXWXx7q31Sla0zMPuUprLinMreiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100018', 'yts', '', 'console', '00', 'system', '系统自动', '2023-12-01 02:14:57', 'system', '系统自动', '2023-12-01 02:14:57'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (142, 'cYh/BaXTHMkXNJcb+vw/IA==', 'SQL工作台审批', 'Em144b/h+IUhVwhjg+HOZvvVFeH6zypajh+LA/krdXXaGEaEuvgdsHJgFo6YpK1breiLaLR4oitrxFw7RBdSvIMNzvrFs9dYWZwhA3Ir8Zdi/PNNSmFH2Jw7NX6JQ/2CkQVxao2UkxSTb45T9XxizeLfbCRI+zh/GccEBnPHjblkc1P+PQtSZNTrveji4p9H', '22', '0', '100018', 'yts', '', 'console', '00', 'system', '系统自动', '2023-11-30 08:22:32', 'system', '系统自动', '2023-11-30 08:22:32'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (141, 'rEQBNNzhQM++IErAo94EIA==', '实验室下载申请', 'DAD/lS346vpJhMuhf39fO/cojSTbEcwwEevHsoPFkUmkNnG68yv6vjAk0dNf/CgsQDmsFHtCZYufm3Tbkd15Hm4TsZZpTNnj4uPOUrzg4OQARLAA3mciqScilZ86v6kCWRGlsSERac2fmmXuFHW4qRzch9UFCYnxa3VCssE12kE=', '7', '0', '1', '门户管理员', '', 'portal', '00', 'system', '系统自动', '2023-11-29 05:50:55', 'system', '系统自动', '2023-11-29 05:50:55'); +INSERT INTO tbl_public_phone_msg_log (msg_id, phone_number, msg_title, msg_text, msg_type, send_status, user_id, nike_name, result_error, sys_type, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time) VALUES (140, 'rEQBNNzhQM++IErAo94EIA==', '实验室下载申请', 'DAD/lS346vpJhMuhf39fO/cojSTbEcwwEevHsoPFkUmkNnG68yv6vjAk0dNf/CgsQDmsFHtCZYufm3Tbkd15HhV0vv/JAiJILOEmHOReQEIARLAA3mciqScilZ86v6kCWRGlsSERac2fmmXuFHW4qRzch9UFCYnxa3VCssE12kE=', '7', '0', '1', '门户管理员', '', 'portal', '00', 'system', '系统自动', '2023-11-29 05:49:30', 'system', '系统自动', '2023-11-29 05:49:30'); + + +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (27, '0-2', 1118783, '2023-05-15', '2023-11-07 20:48:13.926173'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (28, '10-12', 4090, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (29, '12-18', 12375, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (30, '18-24', 6544, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (31, '2-4', 1863575, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (32, '24-30', 2335, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (33, '30-36', 199, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (34, '36-42', 502, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (35, '4-6', 137042, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (36, '42-48', 433, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (37, '6-8', 9505, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (38, '8-10', 5154, '2023-05-15', '2023-11-07 20:48:13.92937'); +INSERT INTO tbl_qa_centime_delay (id, time_range, delay_count, txn_date, create_time) VALUES (39, '>48', 2759, '2023-05-15', '2023-11-07 20:48:13.92937'); + + +INSERT INTO tbl_qa_pos_match_rate (id, tran_num, match_num, match_rate, txn_date, create_time) VALUES (3, 1448235, 1394078, '0.9626048258742538', '2023-05-15', '2023-11-07 20:48:13.872702'); + + +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (11, '巴士一公司', 94, '2023-05-15', '00-01', '2023-11-07 20:48:13.87403'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (12, '巴士三公司', 104, '2023-05-15', '00-04', '2023-11-07 20:48:13.875728'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (13, '巴士四公司', 81, '2023-05-15', '00-06', '2023-11-07 20:48:13.875728'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (14, '巴士五公司', 139, '2023-05-15', '00-10', '2023-11-07 20:48:13.875728'); +INSERT INTO tbl_qa_route_daily_count (id, company_name, route_count, txn_date, company_code, create_time) VALUES (15, '巴士二公司', 102, '2023-05-15', '00-12', '2023-11-07 20:48:13.875728'); + +INSERT INTO tbl_qa_route_miss (id, miss_rate, txn_date, route_count, bus_stop_count, create_time) VALUES (3, '0.008200504646439781', '2023-05-15', 64996, 64463, '2023-11-07 20:48:07.496644'); + +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4843, '000100', '01', '78.15281690140844', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.708146'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4844, '000100', '01', '89.43666666666667', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4845, '000100', '01', '89.02365591397849', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4846, '000400', '04', '48.159114583333334', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4847, '000400', '04', '13.991666666666667', '平峰', '区间', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4848, '000400', '04', '57.29047619047619', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4849, '000400', '04', '20.173333333333336', '早高峰', '区间', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4850, '000400', '04', '56.24722222222223', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4851, '000400', '04', '18.087037037037035', '晚高峰', '区间', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4852, '010000', '100', '41.53394308943089', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4853, '010000', '100', '47.89121212121212', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4854, '010000', '100', '46.65106382978724', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4855, '101400', '1014', '20.574166666666667', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4856, '101400', '1014', '29.976388888888888', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4857, '101400', '1014', '24.87222222222222', '晚高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4858, '010200', '102', '11.975', '平峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); +INSERT INTO tbl_qa_route_turnover_time (id, line_code, line_name, turnover_time, hlow_peak_name, way_bill_type, txn_date, create_time) VALUES (4859, '010200', '102', '14.034722222222223', '早高峰', '全程', '2023-05-15', '2023-11-07 20:48:05.713719'); + + +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195293, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 05:50:00', '2023-05-15 06:48:38', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.355301', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195294, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 08:31:00', '2023-05-15 09:57:46', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195295, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 12:05:00', '2023-05-15 13:15:50', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195296, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 07:05:00', '2023-05-15 08:22:04', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195297, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 10:10:00', '2023-05-15 11:29:57', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195298, '000100', '01', '沪A-00724D', '03-06218', '2023-05-15 13:30:00', '2023-05-15 15:03:42', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195299, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 15:35:00', '2023-05-15 16:52:58', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195300, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 19:30:00', '2023-05-15 20:37:33', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195301, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 22:30:00', '2023-05-15 23:28:33', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195302, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 17:06:00', '2023-05-15 18:33:44', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195303, '000100', '01', '沪A-00724D', '03-09463', '2023-05-15 21:00:00', '2023-05-15 22:15:16', '蓝村路南泉路', '上海西站', '0', '全程', 1, 19, 19, 19, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); +INSERT INTO tbl_qa_station_miss (id, line_code, line_name, license_plate, driver_code, start_time, arrival_time, start_station, end_station, up, way_bill_type, start_station_levels, end_station_levels, level_num, bus_stop_num, txn_date, create_time, miss_rate) VALUES (195304, '000100', '01', '沪A-03041D', '03-06561', '2023-05-15 07:00:00', '2023-05-15 08:47:40', '上海西站', '蓝村路南泉路', '1', '全程', 1, 18, 18, 18, '2023-05-15', '2023-11-07 20:48:10.367215', '0'); + + +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (6, '00-01', '巴士一公司', 1420, '2023-05-15', '2023-11-07 20:48:06.009578'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (7, '00-04', '巴士三公司', 1495, '2023-05-15', '2023-11-07 20:48:06.011452'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (8, '00-06', '巴士四公司', 1210, '2023-05-15', '2023-11-07 20:48:06.011452'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (9, '00-10', '巴士五公司', 1602, '2023-05-15', '2023-11-07 20:48:06.011452'); +INSERT INTO tbl_qa_vehicle_daily_count (id, company_code, company_name, vehicle_count, txn_date, create_time) VALUES (10, '00-12', '巴士二公司', 1341, '2023-05-15', '2023-11-07 20:48:06.011452'); + + + +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (18, 0, '1', 'test', '12345678', NULL, NULL, '02', '/sftpdata/test', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 13:57:06.91938', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (19, 0, '1', 'hello', '12345678', NULL, NULL, '01', '/sftpdata/hello', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 14:45:01.742521', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (20, 0, '1', 'read', '12345678', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:03:50.274712', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (22, 0, '1', 'bb', '12345678', NULL, NULL, '775', '/data/sftp/bb', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:27:29.371303', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (21, 0, '1', 'read', '12345678', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:22:26.26842', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (24, 0, '1', 'write', '12345678', NULL, NULL, '777', '/data/sftp/write', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 17:56:52.374945', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (23, 0, '1', 'read', '12345678', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 17:56:12.959005', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (25, 0, '1', 'read', '123', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:43:50.353176', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (26, 0, '1', 'read', '123', NULL, NULL, '775', '/data/sftp/read', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 18:56:44.417817', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (28, 0, '1', 'jiuyv', '12345678', NULL, NULL, '775', '/data/sftp/jiuyv', NULL, NULL, '99', 'yts', 'yts', '2023-07-18 11:03:40.55482', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (27, 0, '1', 'hello', '123', NULL, NULL, '775', '/data/sftp/hello', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 19:32:02.004178', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (29, 0, '1', 'sftp', '123rrr', NULL, NULL, '775', '/data/sftp/sftp', NULL, NULL, '00', 'admin1', 'admin1', '2023-11-02 17:28:03.582541', NULL, NULL, NULL, NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (30, 0, '1', 'test', '123456', NULL, NULL, '755', '/data/sftp/test', NULL, NULL, '00', 'admin', 'admin', '2023-11-21 19:24:08.877314', NULL, NULL, '2023-11-21 19:24:08.877314', NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (31, 0, '1', 'test66', '123456', NULL, NULL, '755', '/data/sftp/test66', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:09:25.692241', NULL, NULL, '2023-12-05 16:09:25.692241', NULL, NULL, NULL); +INSERT INTO tbl_sftp_user (sftp_id, version_num, rec_token, sftp_username, sftp_password, contact_name, contact_info, sftp_perms, sftp_path, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, rsv1, rsv2, rsv3) VALUES (32, 0, '1', 'test88', '123456', NULL, NULL, '757', '/data/sftp/test88', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 18:15:25.430912', NULL, NULL, '2023-12-05 18:15:25.430912', NULL, NULL, NULL); + + +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (14, 0, '1', 19, 'cc.png', '/sftpdata/hello/hh/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 14:45:19.866959', NULL, NULL, NULL, 'hello'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (16, 0, '1', 23, 'cc.png', '/data/sftp/read/home/dd/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:09:23.214017', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (15, 0, '1', 23, 'cc.png', '/data/sftp/read/home/null/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:07:41.523635', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (17, 0, '1', 25, 'cc.png', '/data/sftp/read/home/dd/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 18:55:50.26498', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (18, 0, '1', 26, 'cc.png', '/data/sftp/read/home/dd/cc.png', '102272', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 18:57:59.497132', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (19, 0, '1', 26, 'cc.png', '/data/sftp/read/home/rr/cc.png', '102272', NULL, NULL, '00', 'admin', 'admin', '2023-07-06 18:58:59.207031', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (27, 0, '1', 27, '微信图片_20230625154831.jpg', '/data/sftp/hello/home/xx/微信图片_20230625154831.jpg', '3547204', NULL, NULL, '99', 'yts', 'yts', '2023-07-18 11:07:01.308433', NULL, NULL, NULL, 'hello'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (22, 0, '1', 26, 'cc.png', '/data/sftp/read/home/null/cc.png', '102272', NULL, NULL, '99', 'admin', 'admin', '2023-07-06 19:03:14.428', NULL, NULL, NULL, 'read'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (28, 0, '1', 29, 'user_1698912763162.xlsx', '/data/sftp/sftp/home//ss/user_1698912763162.xlsx', '4343', NULL, NULL, '00', 'admin1', 'admin1', '2023-11-02 17:28:19.715902', NULL, NULL, NULL, 'sftp'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (29, 0, '1', 31, 'wallhaven-3z98pd.jpg', '/data/sftp/test66/home\test\wallhaven-3z98pd.jpg', '3599349', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:10:53.784304', NULL, NULL, '2023-12-05 16:10:53.784304', 'test66'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (30, 0, '1', 31, 'wallhaven-9d89zw.jpg', '/data/sftp/test66/home\null\wallhaven-9d89zw.jpg', '983802', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:18:31.126612', NULL, NULL, '2023-12-05 16:18:31.126612', 'test66'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (31, 0, '1', 31, 'wallhaven-gp7ee3.jpg', '/data/sftp/test66/home/null/wallhaven-gp7ee3.jpg', '4475534', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:26:27.648833', NULL, NULL, '2023-12-05 16:26:27.648833', 'test66'); +INSERT INTO tbl_sftp_user_file (sftp_file_id, version_num, rec_token, sftp_id, file_name, file_path, file_size, remarks, bus_status, data_status, create_by, create_by_name, create_time, update_by, update_by_name, update_time, sftp_username) VALUES (32, 0, '1', 31, 'wallhaven-qz3wel.png', '/data/sftp/test66/home/null/wallhaven-qz3wel.png', '16215458', NULL, NULL, '00', 'test88', 'test88', '2023-12-05 16:30:31.37368', NULL, NULL, '2023-12-05 16:30:31.37368', 'test66'); + + + +INSERT INTO tbl_sys_config (config_id, version_num, rec_token, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) VALUES (1, 2, '82ebfa177a', '主框架页-默认皮肤样式名称', 'sys.index.skinName', 'skin-green', 'Y', 'admin', '2023-04-04 13:29:12', '1', '2023-07-03 13:22:00', '蓝色 skin-blue、绿色 skin-green、紫色 skin-purple、红色 skin-red、黄色 skin-yellow'); +INSERT INTO tbl_sys_config (config_id, version_num, rec_token, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) VALUES (3, 2, 'f22e8adc54', '主框架页-侧边栏主题', 'sys.index.sideTheme', 'theme-dark', 'Y', 'admin', '2023-04-04 13:29:12', '1', '2023-07-03 13:22:37', '深色主题theme-dark,浅色主题theme-light'); +INSERT INTO tbl_sys_config (config_id, version_num, rec_token, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark) VALUES (2, 2, '9b3a4eef03', '用户管理-账号初始密码', 'sys.user.initPassword', '123456', 'Y', 'admin', '2023-04-04 13:29:12', '1', '2023-11-17 11:21:10', ''); + + +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (3, 0, '1', 1, '0,1', '交通卡运营部', 3, NULL, NULL, NULL, '0', '0', '1', '2023-06-27 09:43:10', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (5, 0, '1', 1, '0,1', 'dss ', 2, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 11:22:06', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (4, 1, '80ce31198f', 1, '0,1', '测试部门', 2, NULL, NULL, NULL, '0', '0', '1', '2023-06-27 09:43:48', '1', '2023-06-27 19:01:03'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (6, 0, '1', 1, '0,1', 'ceshi', 4, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 19:04:17', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (7, 0, '1', 1, '0,1', 'ddd', 1, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 19:32:27', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (9, 0, '1', 1, '0,1', 'dsds', 4, NULL, NULL, NULL, '0', '2', '1', '2023-06-28 17:06:58', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (10, 0, '1', 8, '0,1,8', '山东分公司', 1, NULL, NULL, NULL, '0', '2', '1', '2023-07-03 11:21:38', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (8, 1, 'f70e642a0a', 1, '0,1', '测试发发发', 4, NULL, NULL, NULL, '0', '2', '1', '2023-06-27 19:43:24', '1', '2023-07-03 11:21:29'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (12, 0, '1', 11, '0,1,11', 'tetstsss', 1, NULL, NULL, NULL, '0', '2', '1', '2023-07-06 20:14:51', NULL, NULL); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (11, 1, '964eafd0b6', 1, '0,1', 'testbumen', 1, NULL, NULL, NULL, '0', '2', '1', '2023-07-06 20:14:31', '1', '2023-07-06 20:14:41'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (2, 0, '1', 1, '0,1', '上海总公司', 1, '', '', '', '0', '0', '1', '2023-04-04 13:29:06', '1', '2023-04-04 09:56:56'); +INSERT INTO tbl_sys_dept (dept_id, version_num, rec_token, parent_id, ancestors, dept_name, order_num, leader, phone, email, status, del_flag, create_by, create_time, update_by, update_time) VALUES (1, 3, '1', 0, '0', '数据中心', 0, '', '', '', '0', '0', '1', '2023-04-04 13:29:06', '1', NULL); + + + + +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (1, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有4次登录机会', '2023-04-28 11:05:13'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (2, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有3次登录机会', '2023-04-28 11:05:14'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (3, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '验证码错误', '2023-04-28 11:05:16'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (4, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有2次登录机会', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (5, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '1', '账户或密码错误,您还有1次登录机会', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (6, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '0', '登录成功', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (7, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '0', '登录成功', '2023-04-28 11:05:17'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (8, 'admin', '127.0.0.1', '内网IP', 'Firefox 11', 'Windows 10', '0', '登录成功', '2023-04-28 11:07:11'); +INSERT INTO tbl_sys_logininfor (info_id, user_name, ipaddr, login_location, browser, os, status, msg, login_time) VALUES (9, 'afmin', '127.0.0.1', '内网IP', 'Chrome 10', 'Windows 10', '1', '账户或密码错误', '2023-04-28 13:08:45'); + + +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3272, 0, '1', '用户实验室-数据注入', 3133, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:addlib', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3280, 0, '1', '导出', 3252, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:centimeDelay:export', NULL, '1', '2023-11-17 10:35:46', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3281, 0, '1', '导出', 3253, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:posMatchRate:export', NULL, '1', '2023-11-17 10:36:27', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3282, 0, '1', '导出', 3254, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:routeDailyCount:export', NULL, '1', '2023-11-17 10:37:00', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3283, 0, '1', '导出', 3259, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:vehicleDaily:export', NULL, '1', '2023-11-17 10:37:30', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3284, 0, '1', '导出', 3255, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:routeMiss:export', NULL, '1', '2023-11-17 10:38:06', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3285, 0, '1', '导出', 3256, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:routeTurnover:export', NULL, '1', '2023-11-17 10:38:46', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3286, 0, '1', '导出', 3257, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:stationMiss:export', NULL, '1', '2023-11-17 10:39:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3287, 0, '1', '同步-单表', 3003, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:syncTable', NULL, '1', '2023-11-17 10:50:29', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3273, 2, 'b47789fd2e', '数据产品', 0, 2, 'product', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'build', '100014', '2023-10-31 10:13:23', '1', '2023-11-17 15:30:47', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3006, 6, 'f40f5864c9', 'SQL工作台', 3004, 1, 'sqlconsole', 'dataconsole/sqlconsole/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:sqlconsole:index', 'server', '1', '2023-05-18 14:38:04', '1', '2023-11-21 10:29:00', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3291, 0, '1', '详情', 3276, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:export:detail', NULL, '1', '2023-12-04 15:25:00', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1001, 0, '1', '用户查询', 100, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3038, 10, '2f36953b4e', '我的数据申请', 3004, 2, 'sqlmyapply', 'dataconsole/myapply/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:apply:my:list', 'logininfor', '1', '2023-06-02 17:09:56', '100019', '2023-11-16 17:58:58', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3288, 0, '1', '格式化SQL', 3006, 12, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:format', NULL, '100019', '2023-11-17 13:45:25', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3289, 0, '1', '图形分析', 3006, 13, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:chart', NULL, '1', '2023-11-17 13:50:02', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3292, 0, '1', '获取所有表', 3006, 16, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datatable:allList', NULL, '100025', '2023-12-04 17:20:31', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3274, 0, '1', '客流量指标', 3251, 1, 'metric', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', NULL, 'dashboard', '1', '2023-10-31 10:17:44', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3000, 2, 'b4b1c98ad0', '数据治理', 0, 3, 'datagovern', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'excel', '1', '2023-05-18 13:48:22', '1', '2023-11-17 15:30:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3130, 2, '3df7f54938', '文件管理', 0, 9, 'sftp', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'clipboard', '1', '2023-06-29 19:40:38', '1', '2023-11-17 15:31:38', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3144, 0, '1', '告警对象编辑', 3123, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:edit', NULL, '1', '2023-06-30 13:23:01', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3149, 1, 'dd02dac5c6', '我的数据申请详情', 3038, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:my:detail', NULL, '1', '2023-06-30 13:32:38', '1', '2023-07-07 13:17:33', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3145, 0, '1', '告警对象删除', 3123, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:remove', NULL, '1', '2023-06-30 13:23:23', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3131, 0, '1', 'SFTP用户管理', 3130, 1, 'user', 'sftp/user/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'sftp:user:list', NULL, '1', '2023-06-29 19:41:42', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3176, 1, 'b73896b0f9', 'SFTP用户新增', 3131, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:user:add', NULL, '1', '2023-06-30 13:50:03', '1', '2023-11-17 15:01:59', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3125, 1, '710b163d83', '内容管理', 121, 1, 'content', 'portal/content/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:content:list', 'documentation', '1', '2023-06-25 10:04:28', '100004', '2023-07-17 16:11:57', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3178, 1, '3ecb2da9f4', 'SFTP用户删除', 3131, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:user:remove', NULL, '1', '2023-06-30 13:50:54', '1', '2023-11-17 15:02:07', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3146, 0, '1', 'SQL数据审批详情', 3036, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:detail', NULL, '1', '2023-06-30 13:30:30', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3112, 6, 'b95ffcb6f3', 'sftp文件列表', 121, 3, 'publicFiles', 'publicx/publicFiles/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'publicx:publicFiles:page', 'zip', '1', '2023-06-16 17:55:21', '1', '2023-11-17 15:38:59', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3142, 0, '1', '告警对象详情', 3123, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:query', NULL, '1', '2023-06-30 13:21:57', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3143, 0, '1', '告警对象新增', 3123, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:warning:add', NULL, '1', '2023-06-30 13:22:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3150, 0, '1', 'SQL元数据申请', 3006, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:add', NULL, '1', '2023-06-30 13:33:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3151, 0, '1', '运行SQL', 3006, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:run', NULL, '1', '2023-06-30 13:33:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3152, 0, '1', '停止SQL', 3006, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:stop', NULL, '1', '2023-06-30 13:34:21', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3153, 0, '1', '导出查询结果', 3006, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:export', NULL, '1', '2023-06-30 13:34:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3154, 1, '46cdda1444', '文件列表', 3006, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:list', NULL, '1', '2023-06-30 13:35:40', '1', '2023-06-30 13:35:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3155, 0, '1', '文件详情', 3006, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:detail', NULL, '1', '2023-06-30 13:36:15', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3156, 0, '1', '文件新增', 3006, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:add', NULL, '1', '2023-06-30 13:36:44', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3157, 0, '1', '文件编辑', 3006, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:edit', NULL, '1', '2023-06-30 13:37:15', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3158, 0, '1', '文件删除', 3006, 9, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:consolefile:remove', NULL, '1', '2023-06-30 13:37:38', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3159, 0, '1', 'SQL解析', 3009, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:parse', NULL, '1', '2023-06-30 13:40:24', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3160, 1, '0cc98d3989', '服务注册', 3009, 9, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:register', NULL, '1', '2023-06-30 13:41:04', '1', '2023-06-30 13:41:19', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3161, 0, '1', '服务测试', 3009, 10, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:check', NULL, '1', '2023-06-30 13:41:42', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3162, 0, '1', '服务下架', 3009, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:down', NULL, '1', '2023-06-30 13:42:12', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3163, 0, '1', '机构详情', 3109, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:detail', NULL, '1', '2023-06-30 13:43:50', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3164, 0, '1', '机构新增', 3109, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:add', NULL, '1', '2023-06-30 13:44:16', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3165, 0, '1', '机构编辑', 3109, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:edit', NULL, '1', '2023-06-30 13:44:39', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3123, 3, '12650dbed9', '告警对象', 121, 7, 'contact', 'system/warning/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:warning:list', 'form', '1', '2023-06-20 16:47:08', '1', '2023-10-31 16:26:28', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3166, 0, '1', '机构删除', 3109, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:remove', NULL, '1', '2023-06-30 13:45:03', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3167, 0, '1', '加盐/加密秘钥', 3109, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:key', NULL, '1', '2023-06-30 13:45:34', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3216, 2, '3c44a6f0bb', '申请管理', 120, 4, 'apply', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'dict', '100006', '2023-07-11 13:31:57', '100013', '2023-10-12 15:07:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3169, 0, '1', '内容详情', 3125, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:query', NULL, '1', '2023-06-30 13:47:05', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3170, 0, '1', '内容新增', 3125, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:add', NULL, '1', '2023-06-30 13:47:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3171, 0, '1', '内容编辑', 3125, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:edit', NULL, '1', '2023-06-30 13:47:47', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3172, 0, '1', '内容删除', 3125, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:remove', NULL, '1', '2023-06-30 13:48:08', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3173, 0, '1', '内容发布', 3125, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:release', NULL, '1', '2023-06-30 13:48:27', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3174, 0, '1', '内容下架', 3125, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:down', NULL, '1', '2023-06-30 13:48:48', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3180, 0, '1', 'SFTP文件新增', 3132, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:file:add', NULL, '1', '2023-06-30 13:51:43', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3181, 0, '1', 'SFTP文件编辑', 3132, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:file:remove', NULL, '1', '2023-06-30 13:52:05', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3182, 0, '1', '元数据层级树', 3020, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:tree', NULL, '1', '2023-06-30 13:58:29', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3183, 0, '1', 'SQL数据审批', 3036, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:apply:apply', NULL, '1', '2023-06-30 14:12:58', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3132, 1, 'cab057f202', 'SFTP文件管理', 3130, 2, 'userFile', 'sftp/userFile/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'sftp:file:list', NULL, '1', '2023-06-29 19:42:32', '1', '2023-06-30 14:21:29', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3185, 1, '24307e7f7a', '元数据-表-下拉框', 3009, 12, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datatable:list', NULL, '1', '2023-07-03 16:58:05', '1', '2023-07-03 17:03:57', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3186, 0, '1', '元数据-字段-下拉框', 3009, 13, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:list', NULL, '1', '2023-07-03 17:04:36', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3276, 3, '58a81c6f6d', '我的导出记录', 3004, 4, 'export', 'dataconsole/export/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:export:page', 'download', '1', '2023-10-31 18:05:45', '100019', '2023-11-16 17:59:36', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3224, 1, '410cf710c7', '数据源下拉框', 3212, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:list', NULL, '1', '2023-07-13 16:39:17', '1', '2023-11-17 11:17:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3236, 1, '8a7f3948f3', '门户用户下拉框', 3109, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:list', NULL, '1', '2023-07-18 10:53:53', '1', '2023-11-17 14:38:51', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3192, 0, '1', '机构启用', 3109, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:run', NULL, '1', '2023-07-03 17:42:02', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3193, 0, '1', '机构停用', 3109, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:stop', NULL, '1', '2023-07-03 17:42:32', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3226, 1, '4514c539ad', '机构授权详情', 3109, 10, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:auth:info', NULL, '1', '2023-07-17 11:05:07', '1', '2023-11-17 14:40:01', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3198, 4, '77bdf04fc8', '资讯管理', 121, 2, 'information', 'portal/content/information', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:content:info:list', 'form', '100004', '2023-07-04 19:55:46', '1', '2023-07-07 13:17:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3199, 0, '1', '资讯详情', 3198, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:query', NULL, '1', '2023-07-07 13:19:26', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3200, 0, '1', '资讯新增', 3198, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:add', NULL, '1', '2023-07-07 13:19:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3201, 0, '1', '资讯编辑', 3198, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:edit', NULL, '1', '2023-07-07 13:20:29', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3202, 0, '1', '资讯删除', 3198, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:remove', NULL, '1', '2023-07-07 13:20:56', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3203, 0, '1', '资讯发布', 3198, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:release', NULL, '1', '2023-07-07 13:21:23', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3204, 0, '1', '资讯下架', 3198, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:content:info:down', NULL, '1', '2023-07-07 13:21:45', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3209, 0, '1', '数据源下拉框', 3006, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:list', NULL, '1', '2023-07-07 13:54:56', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3210, 0, '1', '数据源下拉框', 3009, 14, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:list', NULL, '1', '2023-07-07 13:56:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3211, 0, '1', 'API接口列表', 3109, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:list', NULL, '1', '2023-07-07 13:59:08', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3213, 0, '1', '数据源关联表', 3212, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'asset:data:table', NULL, '1', '2023-07-10 16:23:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3214, 0, '1', '关联表详情', 3212, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'asset:data:detail', NULL, '1', '2023-07-10 16:23:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3232, 1, '1fdf2c4334', '机构信息下拉框', 3227, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:list', NULL, '1', '2023-07-17 17:43:23', '1', '2023-11-17 14:43:31', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3277, 0, '1', '下载', 3276, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:export:download', NULL, '1', '2023-10-31 18:08:18', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3215, 1, 'bf1e5dd794', '资源管理', 120, 5, 'resource', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'zip', '100006', '2023-07-11 13:31:33', '1', '2023-07-11 13:55:48', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3184, 0, '1', '实验室创建-发布', 3090, 6, '#', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:release', NULL, '1', '2023-06-30 15:08:59', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3278, 0, '1', '删除', 3276, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:export:delete', NULL, '1', '2023-10-31 18:08:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3220, 1, 'f3418b578c', '数据检索', 3001, 3, 'datasearch', 'metadata/datasearch/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'metadata:datasearch:list', NULL, '1', '2023-07-11 15:18:32', '1', '2023-07-11 15:18:48', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3212, 2, '4938ade025', '基础数据', 3002, 1, 'basedata', 'metadata/assetdata/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'asset:data:list', NULL, '1', '2023-07-07 15:42:18', '1', '2023-07-11 17:46:14', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3208, 1, '259ab10c05', 'SFTP用户下拉框', 3132, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'sftp:user:list', NULL, '1', '2023-07-07 13:50:40', '1', '2023-11-17 15:03:21', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3222, 0, '1', '用户实验室-收回', 3133, 10, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:withdraw', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3223, 0, '1', '导出', 3212, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'asset:data:export', NULL, '1', '2023-07-13 13:19:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3225, 0, '1', '机构授权', 3109, 9, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:orginfo:auth', NULL, '1', '2023-07-17 11:04:41', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3227, 0, '1', '机构配置', 3015, 2, 'orgconfig', 'apimanage/orgconfig/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'org:config:list', NULL, '1', '2023-07-17 15:20:14', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3228, 0, '1', '配置详情', 3227, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org.config:query', NULL, '1', '2023-07-17 17:41:41', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3229, 0, '1', '配置新增', 3227, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org:config:add', NULL, '1', '2023-07-17 17:42:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3230, 0, '1', '配置编辑', 3227, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org:config:edit', NULL, '1', '2023-07-17 17:42:28', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3231, 0, '1', '配置删除', 3227, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'org:config:del', NULL, '1', '2023-07-17 17:42:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3235, 0, '1', '数据源-元数据列表', 3220, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:page', NULL, '1', '2023-07-17 18:08:22', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3234, 1, '6f8e9d9225', '数据源-表列表', 3220, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datatable:page', NULL, '1', '2023-07-17 18:07:44', '1', '2023-07-17 18:08:31', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3238, 0, '1', '部门查询', 100, 8, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:query', NULL, '1', '2023-08-15 15:37:33', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3239, 0, '1', '用户实验室-日志文件', 3133, 11, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:getLogs', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3240, 0, '1', '用户实验室-日志下载', 3133, 12, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:downloadLog', NULL, '100004', '2023-07-13 11:17:04', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3242, 0, '1', '获取连接数', 3006, 15, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'dataconsole:sqlconsole:connectNum', NULL, '1', '2023-09-13 15:10:26', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3233, 1, '0d08dbf77c', '数据源列表', 3220, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:page', NULL, '1', '2023-07-17 18:07:14', '1', '2023-11-21 09:55:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3290, 0, '1', '基础数据', 3006, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:tree', NULL, '1', '2023-11-21 10:28:22', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (106, 2, '58c05d6b35', '参数设置', 1, 7, 'config', 'system/config/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:config:list', 'edit', '1', '2023-04-04 09:54:39', '1', '2023-11-17 11:20:24', '参数设置菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3250, 4, 'a649716593', '数据质量', 3251, 4, 'dataquality', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'job', '1', '2023-09-26 18:37:46', '1', '2023-10-31 10:16:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3255, 2, '68a0cb0520', '日班次缺数量', 3250, 4, 'routeMiss', 'quality/routeMiss/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:routeMiss:page', NULL, '1', '2023-09-26 18:50:30', '1', '2023-10-31 11:29:06', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3256, 2, 'a4c8ed85d5', '日班次周转时间', 3250, 5, 'routeTurnover', 'quality/routeTurnoverTime/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:routeTurnover:page', NULL, '1', '2023-09-26 18:52:25', '1', '2023-10-31 11:29:14', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3258, 0, '1', '站点缺失率详情', 3257, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'quality:stationMiss:detail', NULL, '1', '2023-09-26 18:54:19', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3269, 4, 'f7165276c0', '站点客流量', 3274, 2, 'stationMetric', 'product/stationMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationMetric:page', NULL, '1', '2023-09-26 19:17:15', '1', '2023-10-31 11:07:13', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3251, 3, 'f29dfe646d', '客流宝', 3273, 5, 'product', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'star', '1', '2023-09-26 18:44:19', '1', '2023-10-31 10:16:46', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3264, 3, '269c86886d', '线路客流量', 3274, 0, 'lineMetric', 'product/lineMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:lineMetric:page', NULL, '1', '2023-09-26 19:07:11', '1', '2023-10-31 11:03:58', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3252, 4, '933dcdaea1', '日结算时间统计', 3250, 1, 'centimeDelay', 'quality/centimeDelay/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:centimeDelay:page', NULL, '1', '2023-09-26 18:46:16', '1', '2023-10-31 11:28:31', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3254, 2, '31fe991e73', '日运营线路条数', 3250, 3, 'routeDailyCount', 'quality/routeDailyCount/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:routeDailyCount:page', NULL, '1', '2023-09-26 18:49:17', '1', '2023-09-26 19:46:33', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3257, 2, '228bf9e71d', '日线路站点数量', 3250, 6, 'stationMiss', 'quality/stationMiss/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:stationMiss:page', NULL, '1', '2023-09-26 18:53:36', '1', '2023-10-31 11:29:28', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3279, 0, '1', '接口文档', 3009, 16, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:word', NULL, '1', '2023-11-03 15:51:37', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3265, 4, '0f9f3d1e33', '班次客流量', 3274, 1, 'routeMetric', 'product/routeMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:routeMetric:page', NULL, '1', '2023-09-26 19:08:50', '1', '2023-11-03 19:53:43', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3253, 2, '0f7b813fec', '日pos匹配数量', 3250, 2, 'posMatchRate', 'quality/posMatchRate/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:posMatchRate:page', NULL, '1', '2023-09-26 18:48:05', '1', '2023-10-31 11:28:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3266, 1, '59adae7cb2', '班次日客流量统计详情', 3265, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'product:routeMetric:detail', NULL, '1', '2023-09-26 19:09:20', '1', '2023-09-27 11:35:46', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3267, 6, 'f4f30d79d0', '站点常客客流量', 3274, 6, 'stationFreqMetric', 'product/stationFreqMetric/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationFreqMetric:page', NULL, '1', '2023-09-26 19:11:28', '1', '2023-11-03 19:54:20', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3268, 8, 'c7380adda3', '站点常乘客换乘客流量', 3274, 7, 'stationFreqTrans', 'product/stationFreqTrans/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationFreqTrans:page', NULL, '1', '2023-09-26 19:14:26', '1', '2023-11-03 19:14:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3259, 4, '10f208f7a9', '日运营车辆数', 3250, 4, 'vehicleDaily', 'quality/vehicleDailyCount/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'quality:vehicleDaily:page', NULL, '1', '2023-09-26 18:55:36', '1', '2023-11-03 17:35:27', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3271, 0, '1', 'API前缀地址', 3009, 15, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:prefix', NULL, '1', '2023-10-10 18:41:49', NULL, NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3270, 8, '5af494fc80', '站点换乘客流量', 3274, 5, 'stationTrans', 'product/stationTrans/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'product:stationTrans:page', NULL, '1', '2023-09-26 19:36:43', '1', '2023-10-31 11:16:56', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (100, 0, '1', '用户管理', 1, 1, 'user', 'system/user/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:user:list', 'user', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '用户管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (101, 0, '1', '角色管理', 1, 2, 'role', 'system/role/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:role:list', 'peoples', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '角色管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (102, 0, '1', '菜单管理', 1, 3, 'menu', 'system/menu/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:menu:list', 'tree-table', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '菜单管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (103, 0, '1', '部门管理', 1, 4, 'dept', 'system/dept/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:dept:list', 'tree', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '部门管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (105, 0, '1', '字典管理', 1, 6, 'dict', 'system/dict/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:dict:list', 'dict', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '字典管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (107, 0, '1', '通知公告', 1, 8, 'notice', 'system/notice/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'system:notice:list', 'message', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '通知公告菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (108, 0, '1', '日志管理', 1, 9, 'log', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'log', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '日志管理菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (500, 0, '1', '操作日志', 108, 1, 'operlog', 'monitor/operlog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'monitor:operlog:list', 'form', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '操作日志菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (501, 0, '1', '登录日志', 108, 2, 'logininfor', 'monitor/logininfor/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'monitor:logininfor:list', 'logininfor', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', '登录日志菜单'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1002, 0, '1', '用户新增', 100, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1003, 0, '1', '用户修改', 100, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1004, 0, '1', '用户删除', 100, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1005, 0, '1', '用户导出', 100, 5, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1006, 0, '1', '用户导入', 100, 6, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:import', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1007, 0, '1', '重置密码', 100, 7, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:user:resetPwd', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1008, 0, '1', '角色查询', 101, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1009, 0, '1', '角色新增', 101, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1010, 0, '1', '角色修改', 101, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1011, 0, '1', '角色删除', 101, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1012, 0, '1', '角色导出', 101, 5, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:role:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1013, 0, '1', '菜单查询', 102, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1014, 0, '1', '菜单新增', 102, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1015, 0, '1', '菜单修改', 102, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1016, 0, '1', '菜单删除', 102, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:menu:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1017, 0, '1', '部门查询', 103, 1, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1018, 0, '1', '部门新增', 103, 2, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1019, 0, '1', '部门修改', 103, 3, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1020, 0, '1', '部门删除', 103, 4, '', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dept:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1, 1, 'ea73707ed6', '系统管理', 0, 1, 'system', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'system', '1', '2023-04-04 09:54:39', '1', '2023-09-27 13:18:39', '系统管理目录'); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1026, 0, '1', '字典查询', 105, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1027, 0, '1', '字典新增', 105, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1028, 0, '1', '字典修改', 105, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1029, 0, '1', '字典删除', 105, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1030, 0, '1', '字典导出', 105, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:dict:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1031, 0, '1', '参数查询', 106, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1032, 0, '1', '参数新增', 106, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1033, 0, '1', '参数修改', 106, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1034, 0, '1', '参数删除', 106, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1035, 0, '1', '参数导出', 106, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:config:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1036, 0, '1', '公告查询', 107, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1037, 0, '1', '公告新增', 107, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1038, 0, '1', '公告修改', 107, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1039, 0, '1', '公告删除', 107, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'system:notice:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1040, 0, '1', '操作查询', 500, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:operlog:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1041, 0, '1', '操作删除', 500, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:operlog:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1042, 0, '1', '日志导出', 500, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:operlog:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1043, 0, '1', '登录查询', 501, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:logininfor:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1044, 0, '1', '登录删除', 501, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:logininfor:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (1045, 0, '1', '日志导出', 501, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'monitor:logininfor:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3008, 1, '427fbc37d7', '敏捷开发', 3007, 1, 'agiledev', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'online', '1', '2023-05-18 14:47:06', '1', '2023-10-12 15:01:30', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3001, 1, 'b9d6ad6aa2', '数据源治理', 3000, 1, 'metadata', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'form', '1', '2023-05-18 13:54:59', '1', '2023-10-12 15:09:02', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3002, 5, '9eaaa573d2', '数据资产', 3000, 2, 'org', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'guide', '1', '2023-05-18 14:04:09', '1', '2023-10-12 15:09:34', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3015, 2, '3e582eb888', '机构网关', 3007, 2, 'instit', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'international', '1', '2023-05-18 17:31:15', '1', '2023-10-31 14:15:35', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3003, 6, '5182f77bf8', '数据源', 3001, 1, 'datasource', 'metadata/datasource/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'metadata:source:conn:page', NULL, '1', '2023-05-18 14:07:12', '1', '2023-09-21 18:01:43', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3021, 0, '1', '元数据详情', 3020, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datacolumn:detail', NULL, '1', '2023-05-18 17:39:12', '1', NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3017, 4, '1fa486e504', '连接信息详情', 3003, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:detail', NULL, '1', '2023-05-18 17:34:34', '1', '2023-09-21 18:02:08', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3012, 0, '1', '连通性测试', 3003, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:connect', NULL, '1', '2023-05-18 15:01:59', '1', NULL, NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3027, 1, '1db7220c82', '服务删除', 3009, 4, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:remove', NULL, '1', '2023-05-18 17:48:03', '1', '2023-06-14 16:36:50', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3020, 1, 'f27585dd18', '元数据', 3001, 2, 'datacolumn', 'metadata/datacolumn/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'metadata:datacolumn:page', NULL, '1', '2023-05-18 17:38:02', '1', '2023-06-30 13:57:24', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3059, 0, '1', '操作日志', 3057, 2, 'portaloperlog', 'portal/operlog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:operlog:list', 'form', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3060, 0, '1', '登录日志', 3057, 3, 'portallogininfor', 'portal/logininfor/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:logininfor:list', 'logininfor', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3061, 0, '1', '用户查询', 3058, 1, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3062, 0, '1', '用户新增', 3058, 2, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:add', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3036, 7, 'e9d792f5ca', 'SQL数据审批', 3004, 3, 'sqlapply', 'dataconsole/sqlapply/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'dataconsole:apply:list', 'validCode', '1', '2023-06-02 17:04:10', '100019', '2023-11-16 17:59:22', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3019, 1, '04c4d90cc6', '同步-全表', 3003, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:datasource:sync', NULL, '1', '2023-05-18 17:35:37', '1', '2023-11-17 10:50:41', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3007, 3, 'b01ccfdce1', 'API管理', 0, 5, 'apimanage', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'guide', '1', '2023-05-18 14:44:52', '1', '2023-11-17 15:31:09', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3057, 5, '828dec8aac', '门户管理', 0, 6, 'portal', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'international', '1', '2023-05-18 16:10:18', '1', '2023-11-17 15:31:16', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (120, 4, '50cd08bd08', '实验室管理', 0, 7, 'docker', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'tab', '1', '2023-05-18 16:10:18', '1', '2023-11-17 15:31:23', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3058, 1, '72b6fc2b70', '会员管理', 3057, 1, 'portaluser', 'portal/user/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:user:list', 'user', '1', '2023-04-04 09:54:39', '100025', '2023-12-08 11:24:58', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3063, 0, '1', '用户修改', 3058, 3, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:edit', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3064, 0, '1', '用户删除', 3058, 4, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3065, 0, '1', '用户导出', 3058, 5, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3066, 0, '1', '用户导入', 3058, 6, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:import', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3067, 0, '1', '重置密码', 3058, 7, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:user:resetPwd', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3068, 0, '1', '操作查询', 3059, 1, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:operlog:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3069, 0, '1', '操作删除', 3059, 2, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:operlog:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3070, 0, '1', '日志导出', 3059, 4, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:operlog:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3071, 0, '1', '登录查询', 3060, 1, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:logininfor:query', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3035, 2, 'f8d5d09051', '日志详情', 3011, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:apilog:detail', NULL, '1', '2023-05-18 17:52:25', '1', '2023-06-30 13:43:11', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3024, 1, '9a8ffce2a1', '服务新增', 3009, 1, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:add', NULL, '1', '2023-05-18 17:45:53', '1', '2023-06-14 16:36:32', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3025, 1, '977af73cbd', '服务修改', 3009, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:edit', NULL, '1', '2023-05-18 17:46:13', '1', '2023-06-14 16:36:37', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3026, 1, '35ac5a0971', '服务详情', 3009, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:detail', NULL, '1', '2023-05-18 17:46:50', '1', '2023-06-14 16:36:43', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3028, 1, 'bc20d577d1', '服务拷贝', 3009, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:copy', NULL, '1', '2023-05-18 17:48:32', '1', '2023-06-14 16:36:55', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3029, 1, '16ee108a0e', '服务发布', 3009, 6, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:release', NULL, '1', '2023-05-18 17:48:57', '1', '2023-06-14 16:37:01', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3030, 1, '15a33939aa', '服务注销', 3009, 7, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'apimanage:api:cancel', NULL, '1', '2023-05-18 17:49:23', '1', '2023-06-14 16:37:06', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3011, 2, '72495e9e14', '接口日志', 3008, 3, 'apilog', 'apimanage/apilog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:apilog:page', NULL, '1', '2023-05-18 14:52:13', '1', '2023-06-30 13:42:58', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3009, 3, '23b6c86f16', 'API敏捷开发', 3008, 1, 'dataapi', 'apimanage/dataapi/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:api:page', NULL, '1', '2023-05-18 14:48:52', '1', '2023-06-30 13:38:53', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3016, 3, 'ad0a4b14a6', '连接信息修改', 3003, 3, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:edit', NULL, '1', '2023-05-18 17:33:41', '1', '2023-09-21 18:02:00', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3018, 3, '9cc71af86b', '连接信息删除', 3003, 5, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:del', NULL, '1', '2023-05-18 17:35:08', '1', '2023-09-21 18:02:17', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3013, 3, '60f1f55bf1', '连接信息新增', 3003, 2, NULL, NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'metadata:source:conn:add', NULL, '1', '2023-05-18 15:21:12', '1', '2023-09-21 18:01:51', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3072, 0, '1', '登录删除', 3060, 2, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:logininfor:remove', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3073, 0, '1', '日志导出', 3060, 3, NULL, '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:logininfor:export', '#', '1', '2023-04-04 09:54:39', '1', '2023-04-04 09:54:39', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3079, 0, '1', '服务器管理-查询', 3078, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerClientInfo:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3083, 0, '1', '服务器端口-查询', 3082, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortList:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3084, 0, '1', '服务器端口-详情', 3082, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortList:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3085, 0, '1', '服务器端口-编辑', 3082, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortList:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3082, 0, '1', '端口清单(不要)', 120, 4, 'dockerPortList', 'docker/dockerPortList/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerPortList:index', '', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3080, 0, '1', '服务器管理-详情', 3078, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerClientInfo:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3107, 0, '1', 'vpn用户-停用', 3100, 7, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:disable', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3089, 0, '1', '镜像管理-编辑', 3086, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerImages:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3105, 0, '1', 'vpn用户-删除', 3100, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:del', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3081, 0, '1', '服务器管理-编辑', 3078, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerClientInfo:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3086, 1, '253d6ae7a1', '镜像管理', 3215, 6, 'dockerImages', 'docker/dockerImages/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerImages:index', '', '1', '2023-06-14 10:36:21', '1', '2023-07-11 13:50:36', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3078, 1, '7077cf6831', '服务器管理', 3215, 5, 'dockerClientInfo', 'docker/dockerClientInfo/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerClientInfo:index', '', '1', '2023-06-14 10:36:21', '1', '2023-07-11 13:50:48', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3088, 0, '1', '镜像管理-详情', 3086, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerImages:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3090, 5, 'd4f60a107f', '实验室创建', 120, 1, 'dockerApplyInfo', 'docker/dockerApplyInfo/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerApplyInfo:index', '', '1', '2023-06-14 10:42:58', '1', '2023-07-11 15:15:07', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3087, 0, '1', '镜像管理-查询', 3086, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerImages:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3095, 0, '1', '实验室创建-删除', 3090, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:del', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3275, 0, '1', '用户实验室-删除组件', 3133, 9, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:dellib', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3113, 0, '1', '系统文件表-查询', 3112, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicFiles:page', '', '1', '2023-06-16 17:55:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3114, 0, '1', '系统文件表-详情', 3112, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicFiles:detail', '', '1', '2023-06-16 17:55:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3106, 1, '13a5345977', 'vpn用户-发送账户', 3100, 6, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:send', '', '1', '2023-06-15 12:11:57', '1', '2023-07-12 16:11:56', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3109, 2, 'a15193ff45', '机构管理', 3015, 1, 'orginfo', 'apimanage/orginfo/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:orginfo:list', NULL, '1', '2023-06-15 14:00:06', '1', '2023-06-19 11:08:27', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3108, 0, '1', 'vpn用户-启用', 3100, 8, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:enable', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3103, 0, '1', 'vpn用户-新增', 3100, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:add', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3004, 3, 'adad7399a6', '数据分析工作台', 0, 4, 'dataconsole', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'chart', '1', '2023-05-18 14:33:34', '1', '2023-11-17 15:31:02', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3099, 1, 'a2e459579e', '数据注入申请-审核', 3096, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyReview:review', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:15:44', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3096, 3, '2fe01e1733', '文件注入申请', 3216, 2, 'dockerApplyReview', 'docker/dockerApplyReview/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerApplyReview:reviewPage', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:16:16', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3101, 0, '1', 'vpn用户-查询', 3100, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:page', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3104, 0, '1', 'vpn用户-编辑', 3100, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:edit', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3102, 0, '1', 'vpn用户-详情', 3100, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerVpn:detail', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3111, 3, 'a1b0129be6', '接口统计', 3015, 4, 'orgstatistics', 'apimanage/orgstatistics/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'apimanage:statistics:list', NULL, '1', '2023-06-15 15:45:56', '1', '2023-07-17 15:20:29', NULL); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3100, 0, '1', 'Vpn账户管理', 120, 3, 'dockerVpn', 'docker/dockerVpn/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerVpn:index', '', '1', '2023-06-15 12:11:57', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3076, 0, '1', 'Portainer账户-详情', 3074, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortainerUser:detail', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3077, 0, '1', 'Portainer账户-编辑', 3074, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortainerUser:edit', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3074, 0, '1', 'Portainer账户(不要)', 120, 20, 'dockerPortainerUser', 'docker/dockerPortainerUser/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerPortainerUser:index', '', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3119, 0, '1', '消息模板-查询', 3118, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicMsgTemplate:page', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3120, 0, '1', '消息模板-详情', 3118, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicMsgTemplate:detail', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3121, 0, '1', '消息模板-编辑', 3118, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicMsgTemplate:edit', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3093, 0, '1', '实验室创建-新增', 3090, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:add', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3092, 0, '1', '实验室创建-详情', 3090, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:detail', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3127, 0, '1', '实验室硬件选项-查询', 3126, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:page', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3128, 0, '1', '实验室硬件选项-详情', 3126, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:detail', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3075, 0, '1', 'Portainer账户-查询', 3074, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerPortainerUser:page', '#', '1', '2023-06-14 10:36:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3134, 0, '1', '用户实验室-查询', 3133, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:page', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3135, 0, '1', '用户实验室-详情', 3133, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:detail', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3136, 0, '1', '用户实验室-重启', 3133, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:restart', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3137, 0, '1', '用户实验室-禁用', 3133, 5, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:disable', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3138, 0, '1', '用户实验室-启用', 3133, 6, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:enable', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3139, 0, '1', '用户实验室-销毁', 3133, 7, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:remove', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3140, 0, '1', '用户实验室-重置密码', 3133, 8, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:resetPwd', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3141, 0, '1', '用户实验室-重新初始化', 3133, 9, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerWithUser:initialize', '', '1', '2023-06-29 19:47:21', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3133, 1, '2da1f18d1d', '用户实验室', 120, 2, 'dockerWithUser', 'docker/dockerWithUser/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerWithUser:index', '', '1', '2023-06-29 19:47:21', '1', '2023-07-11 13:55:29', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3129, 0, '1', '实验室硬件选项-编辑', 3126, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:edit', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3094, 0, '1', '实验室创建-编辑', 3090, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:edit', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3091, 0, '1', '实验室创建-查询', 3090, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyInfo:page', '', '1', '2023-06-14 10:42:58', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3188, 0, '1', '文件下载申请-查询', 3187, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:page', '', '1', '2023-07-03 17:14:07', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3189, 0, '1', '文件下载申请-详情', 3187, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:detail', '', '1', '2023-07-03 17:14:07', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3187, 2, '2b0c596f29', '文件下载申请', 3216, 3, 'dockerDownloadApply', 'docker/dockerDownloadApply/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerDownloadApply:index', '', '1', '2023-07-03 17:14:07', '1', '2023-10-11 16:32:21', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3197, 0, '1', '文件下载申请-审核', 3187, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:review', '', '1', '2023-07-03 18:01:55', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3126, 1, '633283cea6', '实验室硬件选项', 3215, 4, 'dockerConfigHardware', 'docker/dockerConfigHardware/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'docker:dockerConfigHardware:index', '', '1', '2023-06-29 19:33:50', '1', '2023-07-11 13:50:28', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3221, 0, '1', '实验室硬件选项-新增', 3126, 3, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerConfigHardware:add', '', '1', '2023-06-29 19:33:50', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3244, 0, '1', '短信记录-查询', 3243, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicPhoneMsgLog:page', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3245, 0, '1', '短信记录-详情', 3243, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'publicx:publicPhoneMsgLog:detail', '', '1', '2023-06-19 11:23:25', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3248, 0, '1', '门户消息-详情', 3246, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'portal:portalUserMsg:detail', '', '1', '2023-09-21 17:35:06', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3241, 0, '1', '文件下载申请-下载', 3187, 4, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerDownloadApply:downloadFile', '', '1', '2023-07-03 18:01:55', '1', NULL, ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (121, 4, '3332cc8dc0', '内容管理', 0, 8, 'content', NULL, NULL, '1', '0', NULL, NULL, NULL, NULL, 'M', '0', '0', '', 'education', '1', '2023-05-18 16:10:18', '1', '2023-11-17 15:31:30', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3246, 2, 'cf8114926d', '门户消息', 3057, 4, 'portalUserMsg', 'portal/portalUserMsg/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'portal:portalUserMsg:page', 'email', '1', '2023-09-21 17:35:06', '1', '2023-11-17 14:57:34', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3118, 4, 'f598ef44c4', '消息模板', 121, 4, 'publicMsgTemplate', 'publicx/publicMsgTemplate/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'publicx:publicMsgTemplate:page', 'list', '1', '2023-06-19 11:23:25', '1', '2023-11-17 15:41:10', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3243, 2, '52dd404400', '短信记录', 121, 5, 'publicPhoneMsgLog', 'publicx/publicPhoneMsgLog/index', NULL, '1', '0', NULL, NULL, NULL, NULL, 'C', '0', '0', 'publicx:publicPhoneMsgLog:page', 'email', '1', '2023-06-19 11:23:25', '1', '2023-11-17 15:41:56', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3097, 1, '24ca2f0edc', '数据注入申请-查询', 3096, 1, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyReview:reviewPage', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:13:58', ''); +INSERT INTO tbl_sys_menu (menu_id, version_num, rec_token, menu_name, parent_id, order_num, path, component, query_params, is_frame, is_cache, url_path, url_method, url_opr_type, url_check_flag, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark) VALUES (3098, 1, 'e5733686dd', '数据注入申请-详情', 3096, 2, '#', '', NULL, '1', '0', NULL, NULL, NULL, NULL, 'F', '0', '0', 'docker:dockerApplyReview:detail', '', '1', '2023-06-14 11:07:32', '1', '2023-11-17 16:15:26', ''); + + +INSERT INTO tbl_sys_notice (notice_id, version_num, rec_token, notice_title, notice_type, notice_content, status, create_by, create_time, update_by, update_time, remark) VALUES (1, 6, '1566efff47', '测试通知', '1', '

1111111

', '0', '1', '2023-06-27 19:47:31', 'zhoul', '2023-10-27 13:11:37', NULL); +INSERT INTO tbl_sys_notice (notice_id, version_num, rec_token, notice_title, notice_type, notice_content, status, create_by, create_time, update_by, update_time, remark) VALUES (9, 3, '78f14c9761', '测试通知1', '2', '

22222

', '0', '1', '2023-07-06 20:15:39', 'zhoul', '2023-10-27 13:11:48', NULL); + + + +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3149, '实验室创建-新增', 1, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.addDockerApplyInfo()', 'POST', 1, 'admin55', NULL, '/docker/dockerApplyInfo/add', '172.16.12.254', '内网IP', '{dockerServerId:2,applyUserId:1,applyUserName:门户管理员(admin),applyDesc:aabbcc,dockerImageName:jupyterlab-py310:0.0.1,serviceType:jupyter,usageTime:6,configId:1,labTitle:测试03,dockerApplyLib:[{libType:data,libDesc:aa,fileId:272},{libType:data,libDesc:cc,fileId:273},{libType:data,libDesc:ddd,fileId:274}]}', NULL, 1, '实验室剩余资源不足,不允许当前操作', '2023-11-16 13:43:27'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3150, '用户实验室-收回', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.withdrawDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/withdraw', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:7,recToken:3ee65c7360}', '{code:success,msg:操作成功,data:{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:44:00}}', 0, NULL, '2023-11-16 13:44:10'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3151, '实验室创建-新增', 1, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.addDockerApplyInfo()', 'POST', 1, 'admin55', NULL, '/docker/dockerApplyInfo/add', '172.16.12.254', '内网IP', '{dockerServerId:2,applyUserId:1,applyUserName:门户管理员(admin),applyDesc:aabbcc,dockerImageName:jupyterlab-py310:0.0.1,serviceType:jupyter,usageTime:6,configId:1,labTitle:测试03,dockerApplyLib:[{libType:data,libDesc:aa,fileId:272},{libType:data,libDesc:cc,fileId:273},{libType:data,libDesc:ddd,fileId:274}]}', NULL, 1, '实验室剩余资源不足,不允许当前操作', '2023-11-16 13:44:21'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3153, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', NULL, 1, '不允许当前操作!实验室有未处理的注入申请', '2023-11-16 13:45:24'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3155, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', '{code:success,msg:操作成功,data:{applyId:2023110000000042,versionNum:9,recToken:64f0c43a91,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:47:29}}', 0, NULL, '2023-11-16 13:47:29'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3197, '用户实验室-收回', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.withdrawDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/withdraw', '172.16.12.254', '内网IP', '{applyId:2023110000000039,versionNum:15,recToken:b78c487519}', '{code:success,msg:操作成功,data:{applyId:2023110000000039,versionNum:16,recToken:9b04c092ef,updateBy:2,updateByName:管理员,updateTime:2023-11-16 20:55:21}}', 0, NULL, '2023-11-16 20:55:32'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3152, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', NULL, 1, '不允许当前操作!实验室有未处理的注入申请', '2023-11-16 13:45:16'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3154, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'admin55', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000042,versionNum:8,recToken:e33839aa7d}', NULL, 1, '不允许当前操作!实验室有未处理的下载申请', '2023-11-16 13:46:50'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3156, '实验室创建-新增', 1, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.addDockerApplyInfo()', 'POST', 1, 'admin55', NULL, '/docker/dockerApplyInfo/add', '172.16.12.254', '内网IP', '{dockerServerId:2,applyUserId:1,applyUserName:门户管理员(admin),applyDesc:aabbcc,dockerImageName:jupyterlab-py310:0.0.1,serviceType:jupyter,usageTime:6,configId:1,labTitle:测试03,dockerApplyLib:[{libType:data,libDesc:aa,fileId:272},{libType:data,libDesc:cc,fileId:273},{libType:data,libDesc:ddd,fileId:274}]}', '{code:success,msg:操作成功,data:{applyId:2023110000000043,versionNum:0,recToken:f85d7d82ea,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:47:37}}', 0, NULL, '2023-11-16 13:47:37'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3157, '实验室创建-发布', 13, 'com.jiuyv.sptccc.agile.docker.controller.DockerApplyInfoController.releaseDockerApplyInfo()', 'PUT', 1, 'admin55', NULL, '/docker/dockerApplyInfo/release', '172.16.12.254', '内网IP', '{applyId:2023110000000043,versionNum:0,recToken:f85d7d82ea}', '{code:success,msg:操作成功,data:{applyId:2023110000000043,versionNum:1,recToken:188ded6c05,updateBy:100016,updateByName:admin55,updateTime:2023-11-16 13:47:54}}', 0, NULL, '2023-11-16 13:47:54'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3198, '用户实验室-销毁', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.removeDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/remove', '172.16.12.254', '内网IP', '{applyId:2023110000000039,versionNum:16,recToken:9b04c092ef}', '{code:success,msg:操作成功,data:{applyId:2023110000000039,versionNum:17,recToken:cd24ba08ca,updateBy:2,updateByName:管理员,updateTime:2023-11-16 20:55:46}}', 0, NULL, '2023-11-16 20:55:46'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3158, '用户实验室-重新初始化', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.initializeDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/initialize', '172.16.12.254', '内网IP', '{applyId:2023110000000041,versionNum:24,recToken:a7deb5dc44}', '{code:success,msg:操作成功,data:{applyId:2023110000000041,versionNum:25,recToken:319176c6aa,updateBy:2,updateByName:管理员,updateTime:2023-11-16 15:14:06}}', 0, NULL, '2023-11-16 15:14:06'); +INSERT INTO tbl_sys_oper_log (oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time) VALUES (3159, '用户实验室-重新初始化', 2, 'com.jiuyv.sptccc.agile.docker.controller.DockerWithUserController.initializeDockerWithUser()', 'PUT', 1, 'zhoul', NULL, '/docker/dockerWithUser/initialize', '172.16.12.254', '内网IP', '{applyId:2023110000000041,versionNum:26,recToken:53226a425a}', '{code:success,msg:操作成功,data:{applyId:2023110000000041,versionNum:27,recToken:15988968bb,updateBy:2,updateByName:管理员,updateTime:2023-11-16 15:37:22}}', 0, NULL, '2023-11-16 15:37:22'); + + + +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (1, 0, '1', '超级管理员', 'admin', 1, '1', '1', '1', '0', '0', 'admin', '2023-04-04 13:29:07', '', NULL, '超级管理员'); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (18, 3, '385e0e1f29', '测试角色1', 'testrole1', 0, NULL, '1', '1', '1', '0', '2', '2023-10-27 10:12:44', '100014', '2023-11-02 10:47:17', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (19, 1, 'aa47a7ce37', 'test4', 'test', 5, NULL, '0', '1', '0', '0', '100014', '2023-11-02 10:49:33', '100014', '2023-11-02 10:51:26', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (6, 0, '1', '啊实打实', '啊实打实', 1, NULL, '1', '1', '0', '2', '100007', '2023-06-30 15:26:07', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (12, 0, '1', '测试角色', 'fasdf', 0, NULL, '1', '1', '0', '2', '1', '2023-07-03 11:20:14', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (15, 22, 'd51c1ad7d4', '单菜单权限', 'one', 0, NULL, '1', '1', '0', '2', '1', '2023-07-17 17:49:42', '1', '2023-07-18 15:48:17', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (14, 7, '0a1eaf4b07', 'testRole', 'testRole', 0, '1', '1', '1', '0', '2', '1', '2023-07-06 20:12:28', '1', '2023-10-11 09:54:33', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (3, 15, '2174d570a4', '测试', 'jiuyv', 3, '1', '1', '1', '0', '2', '1', '2023-06-28 18:47:19', '1', '2023-10-11 09:53:23', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (16, 0, '1', '测试角色', 'jj', 0, NULL, '1', '1', '0', '2', '1', '2023-10-17 19:56:54', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (17, 0, '1', '测试角色', 'jj', 0, NULL, '1', '1', '0', '2', '1', '2023-10-17 19:57:11', NULL, NULL, NULL); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (20, 34, '19503aa738', '单权限测试', 'onetest', 10, NULL, '1', '1', '0', '0', '1', '2023-11-20 09:58:51', '1', '2023-11-21 15:54:21', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (13, 50, '4f1869dd65', '全部权限', 'all', 4, '1', '1', '1', '0', '0', '1', '2023-07-04 18:04:20', '1', '2023-12-04 17:22:53', ''); +INSERT INTO tbl_sys_role (role_id, version_num, rec_token, role_name, role_key, role_sort, data_scope, menu_check_strictly, dept_check_strictly, status, del_flag, create_by, create_time, update_by, update_time, remark) VALUES (2, 20, '4c9baf81bf', '普通角色', 'common', 2, '2', '1', '1', '0', '0', 'admin', '2023-04-04 13:29:07', '1', '2023-11-17 16:11:26', ''); + + + +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 1); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 2); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 4); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 3); +INSERT INTO tbl_sys_role_dept (role_id, dept_id) VALUES (2, 8); + + +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (1, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3197); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3241); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3215); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3126); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3127); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3128); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3221); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3129); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3078); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3079); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3080); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3081); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3086); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3087); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3088); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3089); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3074); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3075); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3076); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3077); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3125); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3169); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3170); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3171); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3172); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3173); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3174); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3198); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3199); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3200); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3201); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3202); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3203); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3204); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3112); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3113); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3114); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3118); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3119); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3243); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3244); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3245); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3123); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3142); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3143); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3144); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3145); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3130); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3131); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3176); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3178); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3132); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3208); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3180); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3181); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3216); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3096); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3097); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3098); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (20, 3099); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1005); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3238); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1010); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1014); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1031); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1032); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1033); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1034); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1037); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1039); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 500); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1040); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1041); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1042); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 501); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1043); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1044); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 1045); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3273); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3251); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3274); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3264); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3265); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3266); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3269); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3270); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3267); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3268); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3250); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3252); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3280); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3253); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3281); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3254); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3282); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3255); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3284); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3259); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3283); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3256); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3285); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3257); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3286); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3258); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3000); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3287); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3021); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3182); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3220); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3233); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3234); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3235); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3212); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3213); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3214); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3223); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3224); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3150); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3290); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3151); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3152); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3153); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3154); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3155); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3156); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3157); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3158); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3209); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3288); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3289); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3242); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3292); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3149); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3146); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3183); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3276); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3277); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3278); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3291); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3024); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3025); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3159); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3160); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3161); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3162); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3185); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3186); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3210); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3271); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3279); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3109); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3163); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3164); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3165); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3166); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3167); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3192); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3193); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3211); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3225); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3226); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3236); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3227); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3228); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3229); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3230); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3231); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3232); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3111); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3057); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3058); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3061); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3062); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3063); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3064); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3065); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3066); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3067); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3059); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3068); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3069); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3070); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3060); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3071); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3072); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3073); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3246); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3248); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3090); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3091); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3092); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3093); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3094); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3095); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3184); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3133); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3134); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3135); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3136); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3137); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3138); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3139); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3140); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3141); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3275); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3222); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3239); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3272); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3240); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3104); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3216); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3096); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3097); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3098); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3099); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3187); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3188); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3189); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3197); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3241); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3082); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3083); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3084); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3085); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3215); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3126); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3127); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3128); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3221); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3129); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3078); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3079); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3080); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3081); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3086); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3087); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3088); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3089); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3074); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3075); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3076); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3077); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3125); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3169); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3170); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3171); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3172); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3173); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3174); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3198); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3199); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3200); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3201); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3202); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3203); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3204); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3112); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3113); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3114); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3118); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3119); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3121); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3243); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3244); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3245); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3123); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3142); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3143); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3144); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3145); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3130); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3131); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3176); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3178); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3132); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3208); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3180); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (13, 3181); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1005); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3238); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1010); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1014); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1031); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1032); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1033); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1034); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1037); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1039); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 500); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1040); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1041); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1042); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 501); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1043); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1044); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 1045); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3273); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3251); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3274); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3264); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3265); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3266); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3269); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3270); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3267); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3268); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3250); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3252); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3280); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3253); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3281); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3254); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3282); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3255); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3284); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3259); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3283); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3256); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3285); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3257); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3286); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3258); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3000); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3001); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3003); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1010); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1012); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1013); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1014); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1016); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1017); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1031); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1032); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1033); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1034); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1037); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1039); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 500); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1040); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1041); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1042); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 501); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1043); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1044); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (19, 1045); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3018); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3019); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3287); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3020); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3021); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3182); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3220); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3233); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3234); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3235); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3002); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3212); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3213); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3214); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3223); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3224); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3004); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3006); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3150); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3151); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3152); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3153); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3154); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3155); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3156); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3157); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3158); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3209); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3288); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3289); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3242); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3038); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3149); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3036); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3146); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3183); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3276); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3277); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3278); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3007); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3008); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3009); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3024); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3025); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3026); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3027); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3028); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3029); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3030); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3159); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3160); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3161); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3162); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3185); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3186); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3210); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3271); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3279); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3011); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3035); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3015); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3109); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3163); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3164); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3165); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3166); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3167); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3192); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3193); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3211); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3225); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3226); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3236); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3227); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3228); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3229); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3230); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3231); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3232); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3111); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3057); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3058); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3061); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3062); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3063); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3064); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3065); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3066); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3067); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3059); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3068); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3069); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3070); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3060); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3071); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3072); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3073); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3246); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3248); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 120); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3090); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3091); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3092); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3093); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3094); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3095); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3184); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3133); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3134); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3135); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3136); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3137); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3138); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3139); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3140); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3275); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3141); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3222); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3239); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3272); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3240); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3100); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3101); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3102); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3103); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3104); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3105); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3106); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3107); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3108); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3082); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3083); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3084); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3085); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3216); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3096); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3097); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3098); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3099); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3187); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3188); +INSERT INTO tbl_sys_role_menu (role_id, menu_id) VALUES (2, 3189); + + +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100017, 2, '29f61b6666', 1, 'test4', 'aa', '00', '92410233@qq.com', '18712387795', '0', NULL, '$2a$10$E2Ayp58A9KlFmL23Cwu5WO9KSF7LTjh69PgOppec3zRsd0NTiTbr6', '0', '0', '172.16.12.254', '2023-11-02 10:51:06.345', '0', 0, '2023-11-02 10:50:41', '100014', '2023-11-02 10:42:28', '100014', '2023-11-02 10:51:05', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (3, 3, '3c4f8a0400', 2, 'zhoul2', '管理员', '01', '', '', '1', '/images/console/3c8f3855a4b1404fbaa492c8349d22c5.jpg', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '1', '0', '127.0.0.1', '2023-10-26 20:10:15.438', '0', 0, '2023-10-10 10:22:12', '1', '2023-04-04 13:29:07', '1', '2023-10-27 09:50:37', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100020, 0, '1', 1, 'admin5', 'admin5', '00', NULL, NULL, NULL, NULL, '$2a$10$6Eg3BZlQkID5pcLDy/feQ.4JaEW2x6ZO0gxYDQ9cg48V13knKG3lW', '0', '0', '127.0.0.1', '2023-11-20 09:42:59.663', '0', 0, NULL, '1', '2023-11-20 09:42:31', NULL, '2023-11-20 09:42:58', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100024, 0, '1', 1, 'test66', '测试SQLapply', '00', NULL, NULL, NULL, NULL, '$2a$10$ch.NYHltpZzQzoDLKsiQMOzdoRhMp1.6aO6c1s1UIr/z43VyMpXGW', '0', '0', '127.0.0.1', '2023-12-01 16:24:59.082', '0', 0, NULL, '100018', '2023-12-01 14:10:50', NULL, '2023-12-01 16:24:59', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100022, 1, '542a19cc95', 1, 'admin20', 'SQL工作台测试', '00', NULL, '15516673702', NULL, NULL, '$2a$10$YJ0aISeuEa1z7JzQmeEdG.v1RS3xQNUaLDqUNAW8wWbBRcf7ZrjiO', '0', '0', '127.0.0.1', '2023-11-28 16:22:11.621', '0', 0, NULL, '1', '2023-11-28 16:21:40', '1', '2023-11-28 16:22:11', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100015, 0, '1', 1, 'admin2', 'admin2', '00', '22@33.com', '13512312124', '1', NULL, '$2a$10$Q7nAT0P6dCIGbWF0SSv6Ue/ZkLcB5IegmjJsHpywTiNpI7apXN3h2', '0', '0', '192.168.83.4', '2023-12-05 23:56:56.802', '0', 0, '2023-11-20 15:05:01', '1', '2023-10-16 09:48:06', NULL, '2023-12-05 16:04:17', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100023, 1, 'ad24aa5ad8', 1, 'test02', 'ttt', '00', NULL, NULL, NULL, NULL, '$2a$10$.m/0nD4ZNKcswa.jjL4.CuCQB3ax9AHuuIqcnIUeqOUzyRntejoTu', '0', '0', '127.0.0.1', '2023-12-04 17:46:02.428', '0', 0, NULL, '1', '2023-11-28 16:23:43', '1', '2023-12-04 17:46:01', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (1, 126, '1', 2, 'admin', '管理员', '01', '', '', '1', '/images/console/3c8f3855a4b1404fbaa492c8349d22c5.jpg', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', '2023-12-07 20:52:16.808', '0', 0, '2023-11-24 11:25:27', '1', '2023-04-04 13:29:07', '1', '2023-12-07 20:52:16', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100014, 1, '6abd041739', 1, 'admin1', 'admin1', '00', '11@22.com', '13512312123', '2', NULL, '$2a$10$c/5GyT5yKnyJwBtQb7XZBubJyyFDm2WowPH9rvjKmD5O1OzdK5Gri', '0', '0', '172.16.12.254', '2023-12-08 06:36:50.538', '0', 0, '2023-11-03 19:57:50', '1', '2023-10-16 09:47:01', '2', '2023-12-07 22:44:11', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100019, 0, '1', 1, 'admin3', 'admin3', '00', NULL, NULL, NULL, NULL, '$2a$10$58MAXMpS1pN9390K7Awb4egjVy1zV3epyyAX.GNUHNmPNai6aH9dO', '0', '0', '127.0.0.1', '2023-11-20 15:17:25.87', '0', 0, NULL, '1', '2023-11-16 16:04:56', NULL, '2023-11-20 15:17:24', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (2, 1, '1', 2, 'zhoul', '管理员', '01', '', '', '1', '/images/console/3c8f3855a4b1404fbaa492c8349d22c5.jpg', '$2a$10$7JB720yubVSZvUI0rEqK/.VqGOZTH.ulu33dHOiBE8ByOhJIrdAu2', '0', '0', '127.0.0.1', '2023-12-08 10:13:53.835', '0', 0, '2023-10-10 10:22:12', '1', '2023-04-04 13:29:07', '1', '2023-12-08 10:13:52', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100016, 0, '1', 1, 'admin55', 'admin55', '00', NULL, '13899999999', '0', NULL, '$2a$10$ryvYWUIgL6NC19qM7Y98UOIeE/ISBBp0o3bmfHKrU4iKKIquxe6se', '0', '0', '172.16.12.254', '2023-12-08 21:26:59.872', '0', 0, NULL, '1', '2023-10-19 11:29:28', NULL, '2023-12-08 13:34:21', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100025, 1, 'bf6270ffc1', 1, 'test88', 'test88', '00', NULL, '15516673777', NULL, NULL, '$2a$10$jj4lssD1ceWTojSwUySwaesxFpoT7dlR2Gh.wwNxHncjT90nltWES', '0', '0', '127.0.0.1', '2023-12-08 13:50:09.694', '0', 0, NULL, '100018', '2023-12-01 17:06:19', '100018', '2023-12-08 13:50:09', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100021, 0, '1', 1, 'admin12', 'admin12', '00', NULL, NULL, NULL, NULL, '$2a$10$VemvbBkB8SDkYt7TU3ISrO56Yl6Wr/V4QpxfjCKkoG0LUTqdTectu', '0', '0', '127.0.0.1', '2023-12-04 16:15:38.262', '0', 0, '2023-11-21 11:13:50', '1', '2023-11-21 11:13:18', NULL, '2023-12-04 16:15:37', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100018, 4, '73b8d5d951', 1, 'yts', 'yts', '00', '11@11.cc', '15516612123', '0', NULL, '$2a$10$kqZENVYYhIx2ZAwpQe1nOOwag0Skg5jqym9DM0dADgexShHkxAQpC', '0', '0', '127.0.0.1', '2023-12-01 17:06:59.93', '0', 0, '2023-11-24 11:27:59', '1', '2023-11-03 17:15:30', '1', '2023-12-01 17:07:00', ''); +INSERT INTO tbl_sys_user (user_id, version_num, rec_token, dept_id, user_name, nick_name, user_type, email, phonenumber, sex, avatar, password, status, del_flag, login_ip, login_date, is_locked, login_error_count, last_login_error_time, create_by, create_time, update_by, update_time, remark) VALUES (100026, 0, '1', 1, 'test99', 'test99', '00', NULL, NULL, NULL, NULL, '$2a$10$jxQRDh4xKy.A1YTnlvSRLeZSqio9OChabFilBW7oqEu5fVYVLr4MK', '0', '0', '127.0.0.1', '2023-12-07 16:48:59.334', '0', 0, NULL, '100025', '2023-12-07 16:48:43', NULL, '2023-12-07 16:48:58', ''); + + +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (1, 1); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (3, 18); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100014, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100015, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100016, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100017, 19); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100018, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100018, 20); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100019, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100020, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100021, 20); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100022, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100023, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100024, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100025, 13); +INSERT INTO tbl_sys_user_role (user_id, role_id) VALUES (100026, 13); + + +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (13, 1, '0fcec93c63', '00', '01', '12312312', '00', 'admin', '2023-07-03 13:25:01', 'admin', '2023-07-03 13:27:22', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (15, 1, '22d148e4bf', '01', '01', '13313312122', '00', 'yts', '2023-07-17 17:51:37', 'yts', '2023-07-17 17:51:46', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (14, 1, '61b141512b', '01', '02', '15516613123', '00', 'admin', '2023-07-06 20:17:28', 'admin', '2023-07-07 09:56:55', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (11, 3, 'd523a81ad0', '00', '01', '16615512123', '00', 'admin', '2023-06-30 10:05:28', 'yts', '2023-07-28 14:07:21', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10, 2, '6664922e76', '00', '01', '111111111', '00', 'admin', '2023-06-30 10:05:09', 'yts', '2023-06-30 13:53:58', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (17, 0, '1', '01', '01', '13248363323', '00', 'admin', '2023-10-08 11:28:48', NULL, NULL, '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (18, 0, '1', '00', '01', '15612312123', '00', 'admin', '2023-10-18 10:22:53', NULL, NULL, '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (16, 1, 'aa591707c0', '01', '01', '13212312319', '00', 'yts', '2023-07-28 14:07:41', 'admin', '2023-10-08 11:28:24', '1'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10000, 0, '1', 'ds_sms', '01', '18712387792', '00', 'admin1', '2023-12-04 13:19:57', NULL, '2023-12-04 13:19:57', '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10001, 0, '1', 'pmth_sms', '01', '18712387792', '00', 'admin1', '2023-12-04 13:20:17', NULL, '2023-12-04 13:20:17', '0'); +INSERT INTO tbl_sys_warning_contact (id, version_num, rec_token, warning_type, contact_type, contact, status, create_by, create_time, update_by, update_time, del_flag) VALUES (10002, 0, '1', 'pmth_sms', '01', '13564853037', '00', 'admin1', '2023-12-04 13:46:56', NULL, '2023-12-04 13:46:56', '0'); + +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000153', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2024-12-25', '1', 0, 'edde58bceb', '1220', 'admin', '2023-12-15 20:18:21', NULL, 'admin', NULL, '0', NULL, 'oPdk4whkHRheecCHOX7LMw==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000154', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2023-12-25', '0', 0, 'ca365f98f1', '1220', 'admin', '2023-12-15 20:35:50', NULL, 'admin', NULL, '0', NULL, 'oPdk4whkHRheecCHOX7LMw==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000155', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2024-12-25', '1', 0, 'd0ef53603f', '1220', 'admin', '2023-12-15 20:38:06', NULL, 'admin', NULL, '0', NULL, 'oPdk4whkHRheecCHOX7LMw==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000156', 'test', '01', 'sds', 'PE0aZM7ItdyIUoHqzs0cfRaU+Yc83OoX9xAxab4p9ZoCrUD/+R948Q==', 'jz33R3qZ7yFAT/fzcI7S2/0PXdDpsqTebHjU/ct23eYCrUD/+R948Q==', '2023-12-15', '2023-12-25', '1', 0, '0ff16cab10', '1220', 'admin', '2023-12-15 20:46:47', NULL, 'admin', NULL, '0', NULL, '8pcg94Nm4CbHfeJ4Q2yY6g==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000157', '第三代', '01', '是多少', 'TI/zQ29Xz/mslv1KaAuVw67OLwab/LLzpiwoE5U//FcCrUD/+R948Q==', 'fBOJHExmOEC/sSjLsVnz6pJst/VsRAfR9qtp9+niQ10CrUD/+R948Q==', '2023-11-28', '2024-12-25', '1', 0, '12c6936f71', '1', 'admin', '2023-12-15 20:51:37', NULL, 'admin', NULL, '0', NULL, 'MMk8HA35ZIJUt3WDHo609A==', NULL, NULL, NULL); +INSERT INTO tbl_org_info (org_no, org_name, org_type, org_desc, salt, encrypt, start_time, end_time, status, version_num, rec_token, create_by, create_by_name, create_time, update_by, update_by_name, update_time, del_flag, ip, contract_tel, data_begin, data_end, member_id) VALUES ('JGH000000000000158', '第四代', '01', '是多少', 'TI/zQ29Xz/mslv1KaAuVw67OLwab/LLzpiwoE5U//FcCrUD/+R948Q==', 'fBOJHExmOEC/sSjLsVnz6pJst/VsRAfR9qtp9+niQ10CrUD/+R948Q==', '2023-11-28', '2024-12-25', '0', 0, '12c6936f71', '1', 'admin', '2023-12-15 20:51:37', NULL, 'admin', NULL, '0', NULL, 'MMk8HA35ZIJUt3WDHo609A==', NULL, NULL, NULL); + + + + + + + + + + + + + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/sql/schema.sql b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/sql/schema.sql new file mode 100644 index 00000000..a34840c5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/agile-data-service/src/test/resources/sql/schema.sql @@ -0,0 +1,6277 @@ +/* + Navicat Premium Data Transfer + + Source Server : 172.16.12.105 + Source Server Type : PostgreSQL + Source Server Version : 140007 (140007) + Source Host : 172.16.12.105:5432 + Source Catalog : keliubao + Source Schema : public + + Target Server Type : PostgreSQL + Target Server Version : 140007 (140007) + File Encoding : 65001 + + Date: 07/12/2023 20:04:05 +*/ + + +-- ---------------------------- +-- Sequence structure for demorange_int_seq +-- ---------------------------- +DROP SEQUENCE IF EXISTS demorange_int_seq; +CREATE SEQUENCE demorange_int_seq +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for prd_line_station_trans_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS prd_line_station_trans_month; +CREATE SEQUENCE prd_line_station_trans_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_asset_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_asset_column; +CREATE SEQUENCE seq_data_asset_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_asset_table +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_asset_table; +CREATE SEQUENCE seq_data_asset_table +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_asset_table_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_asset_table_column; +CREATE SEQUENCE seq_data_asset_table_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_config +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_config; +CREATE SEQUENCE seq_data_config +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_institute +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_institute; +CREATE SEQUENCE seq_data_institute +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_institute_api_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_institute_api_log; +CREATE SEQUENCE seq_data_institute_api_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_institute_auth +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_institute_auth; +CREATE SEQUENCE seq_data_institute_auth +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_market_api +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_market_api; +CREATE SEQUENCE seq_data_market_api +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_market_api_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_market_api_log; +CREATE SEQUENCE seq_data_market_api_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_market_api_mask +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_market_api_mask; +CREATE SEQUENCE seq_data_market_api_mask +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_authorize +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_authorize; +CREATE SEQUENCE seq_data_metadata_authorize +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_change_record +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_change_record; +CREATE SEQUENCE seq_data_metadata_change_record +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_column; +CREATE SEQUENCE seq_data_metadata_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_source +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_source; +CREATE SEQUENCE seq_data_metadata_source +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_source_conn +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_source_conn; +CREATE SEQUENCE seq_data_metadata_source_conn +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_metadata_table +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_metadata_table; +CREATE SEQUENCE seq_data_metadata_table +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_quality_report +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_quality_report; +CREATE SEQUENCE seq_data_quality_report +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_sql_console_export +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_sql_console_export; +CREATE SEQUENCE seq_data_sql_console_export +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_data_sql_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_data_sql_log; +CREATE SEQUENCE seq_data_sql_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_info +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_info; +CREATE SEQUENCE seq_docker_apply_info +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_lib +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_lib; +CREATE SEQUENCE seq_docker_apply_lib +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_review +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_review; +CREATE SEQUENCE seq_docker_apply_review +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_apply_review_dtl +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_apply_review_dtl; +CREATE SEQUENCE seq_docker_apply_review_dtl +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_config_hardware +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_config_hardware; +CREATE SEQUENCE seq_docker_config_hardware +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_download_apply +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_download_apply; +CREATE SEQUENCE seq_docker_download_apply +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_images +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_images; +CREATE SEQUENCE seq_docker_images +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_vpn +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_vpn; +CREATE SEQUENCE seq_docker_vpn +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_docker_with_user_account +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_docker_with_user_account; +CREATE SEQUENCE seq_docker_with_user_account +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_gen_table +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_gen_table; +CREATE SEQUENCE seq_gen_table +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_gen_table_column +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_gen_table_column; +CREATE SEQUENCE seq_gen_table_column +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_lab_config_hardware +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_lab_config_hardware; +CREATE SEQUENCE seq_lab_config_hardware +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_api_auth +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_api_auth; +CREATE SEQUENCE seq_org_api_auth +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_config +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_config; +CREATE SEQUENCE seq_org_config +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_gateway_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_gateway_log; +CREATE SEQUENCE seq_org_gateway_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_org_statistics +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_org_statistics; +CREATE SEQUENCE seq_org_statistics +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_content +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_content; +CREATE SEQUENCE seq_portal_content +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_logininfor +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_logininfor; +CREATE SEQUENCE seq_portal_logininfor +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_oper_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_oper_log; +CREATE SEQUENCE seq_portal_oper_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_user +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_user; +CREATE SEQUENCE seq_portal_user +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_portal_user_msg +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_portal_user_msg; +CREATE SEQUENCE seq_portal_user_msg +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_metric_day; +CREATE SEQUENCE seq_prd_line_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_metric_hour +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_metric_hour; +CREATE SEQUENCE seq_prd_line_metric_hour +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_metric_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_metric_month; +CREATE SEQUENCE seq_prd_line_metric_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_metric_day; +CREATE SEQUENCE seq_prd_line_station_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_metric_hour +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_metric_hour; +CREATE SEQUENCE seq_prd_line_station_metric_hour +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_metric_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_metric_month; +CREATE SEQUENCE seq_prd_line_station_metric_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_trans_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_trans_day; +CREATE SEQUENCE seq_prd_line_station_trans_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_trans_hour +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_trans_hour; +CREATE SEQUENCE seq_prd_line_station_trans_hour +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_line_station_trans_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_line_station_trans_month; +CREATE SEQUENCE seq_prd_line_station_trans_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_route_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_route_metric_day; +CREATE SEQUENCE seq_prd_route_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_metric_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_metric_day; +CREATE SEQUENCE seq_prd_station_freq_metric_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_metric_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_metric_month; +CREATE SEQUENCE seq_prd_station_freq_metric_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_trans_day +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_trans_day; +CREATE SEQUENCE seq_prd_station_freq_trans_day +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_prd_station_freq_trans_month +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_prd_station_freq_trans_month; +CREATE SEQUENCE seq_prd_station_freq_trans_month +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_files +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_files; +CREATE SEQUENCE seq_public_files +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_files_progress +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_files_progress; +CREATE SEQUENCE seq_public_files_progress +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_msg_template +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_msg_template; +CREATE SEQUENCE seq_public_msg_template +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_public_phone_msg_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_public_phone_msg_log; +CREATE SEQUENCE seq_public_phone_msg_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_centime_delay +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_centime_delay; +CREATE SEQUENCE seq_qa_centime_delay +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_pos_match_rate +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_pos_match_rate; +CREATE SEQUENCE seq_qa_pos_match_rate +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_route_daily_count +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_route_daily_count; +CREATE SEQUENCE seq_qa_route_daily_count +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_route_miss +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_route_miss; +CREATE SEQUENCE seq_qa_route_miss +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_route_turnover_time +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_route_turnover_time; +CREATE SEQUENCE seq_qa_route_turnover_time +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_station_miss +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_station_miss; +CREATE SEQUENCE seq_qa_station_miss +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_qa_vehicle_daily_count +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_qa_vehicle_daily_count; +CREATE SEQUENCE seq_qa_vehicle_daily_count +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sftp_user +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sftp_user; +CREATE SEQUENCE seq_sftp_user +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sftp_user_file +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sftp_user_file; +CREATE SEQUENCE seq_sftp_user_file +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sql_console_file +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sql_console_file; +CREATE SEQUENCE seq_sql_console_file +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sql_data_apply +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sql_data_apply; +CREATE SEQUENCE seq_sql_data_apply +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_config +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_config; +CREATE SEQUENCE seq_sys_config +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 4 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_dept +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_dept; +CREATE SEQUENCE seq_sys_dept +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 3 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_dict_data +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_dict_data; +CREATE SEQUENCE seq_sys_dict_data +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_dict_type +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_dict_type; +CREATE SEQUENCE seq_sys_dict_type +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_job +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_job; +CREATE SEQUENCE seq_sys_job +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_job_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_job_log; +CREATE SEQUENCE seq_sys_job_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_logininfor +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_logininfor; +CREATE SEQUENCE seq_sys_logininfor +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_menu +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_menu; +CREATE SEQUENCE seq_sys_menu +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 3000 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_notice +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_notice; +CREATE SEQUENCE seq_sys_notice +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_oper_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_oper_log; +CREATE SEQUENCE seq_sys_oper_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_post +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_post; +CREATE SEQUENCE seq_sys_post +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_role +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_role; +CREATE SEQUENCE seq_sys_role +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 3 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_user +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_user; +CREATE SEQUENCE seq_sys_user +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 2 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_warning_contact +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_warning_contact; +CREATE SEQUENCE seq_sys_warning_contact +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_sys_warning_log +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_sys_warning_log; +CREATE SEQUENCE seq_sys_warning_log +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for seq_test_t_t +-- ---------------------------- +DROP SEQUENCE IF EXISTS seq_test_t_t; +CREATE SEQUENCE seq_test_t_t +INCREMENT 1 +MINVALUE 1 +MAXVALUE 9223372036854775807 +START 1 +CACHE 1; + +-- ---------------------------- +-- Sequence structure for tbl_prd_sync_record_id_seq +-- ---------------------------- +DROP SEQUENCE IF EXISTS tbl_prd_sync_record_id_seq; +CREATE SEQUENCE tbl_prd_sync_record_id_seq +INCREMENT 1 +MINVALUE 1 +MAXVALUE 2147483647 +START 1 +CACHE 1; + +-- ---------------------------- +-- Table structure for demorange +-- ---------------------------- +DROP TABLE IF EXISTS demorange; +CREATE TABLE demorange ( + int int8 NOT NULL AUTO_INCREMENT , + val int4, + crt timestamp(6) +) +; + +-- ---------------------------- +-- Table structure for gen_table +-- ---------------------------- +DROP TABLE IF EXISTS gen_table; +CREATE TABLE gen_table ( + table_id int8 NOT NULL AUTO_INCREMENT , + table_name varchar(200) , + table_comment varchar(500) , + sub_table_name varchar(64) , + sub_table_fk_name varchar(64) , + class_name varchar(100) , + tpl_category varchar(200) , + package_name varchar(100) , + module_name varchar(30) , + business_name varchar(30) , + function_name varchar(50) , + function_author varchar(50) , + gen_type char(1) , + gen_path varchar(200) , + options varchar(1000) , + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6), + remark varchar(500) +) +; +COMMENT ON COLUMN gen_table.table_id IS '编号'; +COMMENT ON COLUMN gen_table.table_name IS '表名称'; +COMMENT ON COLUMN gen_table.table_comment IS '表描述'; +COMMENT ON COLUMN gen_table.sub_table_name IS '关联子表的表名'; +COMMENT ON COLUMN gen_table.sub_table_fk_name IS '子表关联的外键名'; +COMMENT ON COLUMN gen_table.class_name IS '实体类名称'; +COMMENT ON COLUMN gen_table.tpl_category IS '使用的模板(crud单表操作 tree树表操作)'; +COMMENT ON COLUMN gen_table.package_name IS '生成包路径'; +COMMENT ON COLUMN gen_table.module_name IS '生成模块名'; +COMMENT ON COLUMN gen_table.business_name IS '生成业务名'; +COMMENT ON COLUMN gen_table.function_name IS '生成功能名'; +COMMENT ON COLUMN gen_table.function_author IS '生成功能作者'; +COMMENT ON COLUMN gen_table.gen_type IS '生成代码方式(0zip压缩包 1自定义路径)'; +COMMENT ON COLUMN gen_table.gen_path IS '生成路径(不填默认项目路径)'; +COMMENT ON COLUMN gen_table.options IS '其它生成选项'; +COMMENT ON COLUMN gen_table.create_by IS '创建者'; +COMMENT ON COLUMN gen_table.create_time IS '创建时间'; +COMMENT ON COLUMN gen_table.update_by IS '更新者'; +COMMENT ON COLUMN gen_table.update_time IS '更新时间'; +COMMENT ON COLUMN gen_table.remark IS '备注'; +COMMENT ON TABLE gen_table IS '代码生成业务表'; + +-- ---------------------------- +-- Table structure for gen_table_column +-- ---------------------------- +DROP TABLE IF EXISTS gen_table_column; +CREATE TABLE gen_table_column ( + column_id int8 NOT NULL AUTO_INCREMENT , + table_id int8, + column_name varchar(200) , + column_comment varchar(500) , + column_type varchar(100) , + java_type varchar(500) , + java_field varchar(200) , + is_pk char(1) , + is_increment char(1) , + is_required char(1) , + is_insert char(1) , + is_edit char(1) , + is_list char(1) , + is_query char(1) , + query_type varchar(200) , + html_type varchar(200) , + dict_type varchar(200) , + sort int4, + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6) +) +; +COMMENT ON COLUMN gen_table_column.column_id IS '编号'; +COMMENT ON COLUMN gen_table_column.table_id IS '归属表编号'; +COMMENT ON COLUMN gen_table_column.column_name IS '列名称'; +COMMENT ON COLUMN gen_table_column.column_comment IS '列描述'; +COMMENT ON COLUMN gen_table_column.column_type IS '列类型'; +COMMENT ON COLUMN gen_table_column.java_type IS 'JAVA类型'; +COMMENT ON COLUMN gen_table_column.java_field IS 'JAVA字段名'; +COMMENT ON COLUMN gen_table_column.is_pk IS '是否主键(1是)'; +COMMENT ON COLUMN gen_table_column.is_increment IS '是否自增(1是)'; +COMMENT ON COLUMN gen_table_column.is_required IS '是否必填(1是)'; +COMMENT ON COLUMN gen_table_column.is_insert IS '是否为插入字段(1是)'; +COMMENT ON COLUMN gen_table_column.is_edit IS '是否编辑字段(1是)'; +COMMENT ON COLUMN gen_table_column.is_list IS '是否列表字段(1是)'; +COMMENT ON COLUMN gen_table_column.is_query IS '是否查询字段(1是)'; +COMMENT ON COLUMN gen_table_column.query_type IS '查询方式(等于、不等于、大于、小于、范围)'; +COMMENT ON COLUMN gen_table_column.html_type IS '显示类型(文本框、文本域、下拉框、复选框、单选框、日期控件)'; +COMMENT ON COLUMN gen_table_column.dict_type IS '字典类型'; +COMMENT ON COLUMN gen_table_column.sort IS '排序'; +COMMENT ON COLUMN gen_table_column.create_by IS '创建者'; +COMMENT ON COLUMN gen_table_column.create_time IS '创建时间'; +COMMENT ON COLUMN gen_table_column.update_by IS '更新者'; +COMMENT ON COLUMN gen_table_column.update_time IS '更新时间'; +COMMENT ON TABLE gen_table_column IS '代码生成业务表字段'; + +-- ---------------------------- +-- Table structure for seqno +-- ---------------------------- +DROP TABLE IF EXISTS seqno; +CREATE TABLE seqno ( + nextval int8 +) +; + +-- ---------------------------- +-- Table structure for tbl_batch_table_mapping +-- ---------------------------- +DROP TABLE IF EXISTS tbl_batch_table_mapping; +CREATE TABLE tbl_batch_table_mapping ( + task_no varchar(100) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + remote_table_sql varchar(3000) NOT NULL, + remote_db_name varchar(100) NOT NULL, + remote_days int4 NOT NULL, + local_table varchar(200) NOT NULL, + local_db_name varchar(100) NOT NULL, + local_pre_sql varchar(300) , + mapping_json varchar(3000) NOT NULL, + remarks varchar(500) , + data_status varchar(2) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_batch_table_mapping.task_no IS '【任务编号】'; +COMMENT ON COLUMN tbl_batch_table_mapping.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_batch_table_mapping.remote_table_sql IS '【远程表查询SQL】 完整SQL,或 tbl_user where date=''{date}'' 形式(无FROM会自动拼接);条件完全自行写'; +COMMENT ON COLUMN tbl_batch_table_mapping.remote_db_name IS '【远程表数据库】 自定义的一个数据源名称,自行实现,配置在yml'; +COMMENT ON COLUMN tbl_batch_table_mapping.remote_days IS '【远程前推天数】 T+N模式,比如1,表示同步昨天数据,2则同步前天数据'; +COMMENT ON COLUMN tbl_batch_table_mapping.local_table IS '【本地表名】 真实表编码 如 tbl_user'; +COMMENT ON COLUMN tbl_batch_table_mapping.local_db_name IS '【本地数据库】自定义的一个数据源名称,自行实现,配置在yml。也可以是文件csv/txt'; +COMMENT ON COLUMN tbl_batch_table_mapping.local_pre_sql IS '【本地前置SQL】如果要避免重复插入,那么执行删除语句,切记条件要正确。或者文件要清空true'; +COMMENT ON COLUMN tbl_batch_table_mapping.mapping_json IS '【映射关系】json格式 : {来源字段:存储字段|转换类型} 。如果来源类型和存储类型一致就不用写“|转换类型”部分'; +COMMENT ON COLUMN tbl_batch_table_mapping.remarks IS '【备注】'; +COMMENT ON COLUMN tbl_batch_table_mapping.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_batch_table_mapping.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_batch_table_mapping.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_batch_table_mapping IS '【批处理同步表映射表】映射远程和本地的表字段,方便快速增加新表同步。单表模式。每个任务独立。'; + +-- ---------------------------- +-- Table structure for tbl_batch_task +-- ---------------------------- +DROP TABLE IF EXISTS tbl_batch_task; +CREATE TABLE tbl_batch_task ( + task_no varchar(100) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + task_title varchar(100) , + pre_start_date timestamp(6), + pre_end_date timestamp(6), + pre_total_time varchar(20) , + curr_start_date timestamp(6), + failure_conditions varchar(2000) , + bus_status varchar(30) NOT NULL, + data_status varchar(2) NOT NULL, + update_time timestamp(6) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_batch_task.task_no IS '【任务编号】'; +COMMENT ON COLUMN tbl_batch_task.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_batch_task.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_batch_task.task_title IS '【任务名称】'; +COMMENT ON COLUMN tbl_batch_task.pre_start_date IS '【上次开始时间】'; +COMMENT ON COLUMN tbl_batch_task.pre_end_date IS '【上次结束时间】'; +COMMENT ON COLUMN tbl_batch_task.pre_total_time IS '【上次耗时】'; +COMMENT ON COLUMN tbl_batch_task.curr_start_date IS '【当前开始时间】'; +COMMENT ON COLUMN tbl_batch_task.failure_conditions IS '【失败数据条件】比如按天处理失败把日期记下,后面继续跑。'; +COMMENT ON COLUMN tbl_batch_task.bus_status IS '【任务状态】'; +COMMENT ON COLUMN tbl_batch_task.data_status IS '【数据状态】上传时可先处理成98临时,方便清理无用文件'; +COMMENT ON COLUMN tbl_batch_task.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_batch_task.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_batch_task.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_batch_task.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_batch_task IS '【批处理任务表】记录任务处理情况,方便实现增量重跑'; + +-- ---------------------------- +-- Table structure for tbl_data_api +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_api; +CREATE TABLE tbl_data_api ( + api_id int8 NOT NULL AUTO_INCREMENT , + status char(1) NOT NULL, + create_by varchar(50) , + create_time timestamp(0), + create_dept varchar(50) , + update_by varchar(50) , + update_time timestamp(0), + remark varchar(1000) , + api_name varchar(255) NOT NULL, + api_version varchar(60) NOT NULL, + api_url varchar(255) NOT NULL, + req_method varchar(10) NOT NULL, + res_type varchar(10) NOT NULL, + deny varchar(2000) , + limit_json text , + config_json text , + req_json text , + res_json text , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0', + api_code varchar(50) , + api_type char(1) , + source_id int8 +) +; +COMMENT ON COLUMN tbl_data_api.api_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_api.status IS '状态(1待注册,2已注册,3已发布)'; +COMMENT ON COLUMN tbl_data_api.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_api.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_api.create_dept IS '创建人所属部门'; +COMMENT ON COLUMN tbl_data_api.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_api.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_api.remark IS '备注'; +COMMENT ON COLUMN tbl_data_api.api_name IS 'API名称'; +COMMENT ON COLUMN tbl_data_api.api_version IS 'API版本'; +COMMENT ON COLUMN tbl_data_api.api_url IS 'API路径'; +COMMENT ON COLUMN tbl_data_api.req_method IS '请求方式'; +COMMENT ON COLUMN tbl_data_api.res_type IS '返回格式'; +COMMENT ON COLUMN tbl_data_api.deny IS 'IP黑名单多个,隔开'; +COMMENT ON COLUMN tbl_data_api.limit_json IS '限流配置'; +COMMENT ON COLUMN tbl_data_api.config_json IS '执行配置'; +COMMENT ON COLUMN tbl_data_api.req_json IS '请求参数'; +COMMENT ON COLUMN tbl_data_api.res_json IS '返回参数'; +COMMENT ON COLUMN tbl_data_api.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_api.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_api.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_api.api_code IS 'API code'; +COMMENT ON COLUMN tbl_data_api.api_type IS '类型:1敏捷API 2系统API'; +COMMENT ON COLUMN tbl_data_api.source_id IS '数据源id'; +COMMENT ON TABLE tbl_data_api IS '【API信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_api_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_api_log; +CREATE TABLE tbl_data_api_log ( + api_log_id int8 NOT NULL AUTO_INCREMENT , + api_id int8 NOT NULL, + caller_id varchar(50) , + caller_ip varchar(50) , + caller_url varchar(255) , + caller_params varchar(2000) , + caller_date timestamp(0), + caller_size int4, + time int4, + msg varchar(2000) , + status char(1) +) +; +COMMENT ON COLUMN tbl_data_api_log.api_log_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_api_log.api_id IS '调用api'; +COMMENT ON COLUMN tbl_data_api_log.caller_id IS '调用者id'; +COMMENT ON COLUMN tbl_data_api_log.caller_ip IS '调用者ip'; +COMMENT ON COLUMN tbl_data_api_log.caller_url IS '调用url'; +COMMENT ON COLUMN tbl_data_api_log.caller_params IS '调用参数'; +COMMENT ON COLUMN tbl_data_api_log.caller_date IS '调用时间'; +COMMENT ON COLUMN tbl_data_api_log.caller_size IS '调用数据量'; +COMMENT ON COLUMN tbl_data_api_log.time IS '调用耗时'; +COMMENT ON COLUMN tbl_data_api_log.msg IS '信息记录'; +COMMENT ON COLUMN tbl_data_api_log.status IS '状态(0成功,1失败)'; +COMMENT ON TABLE tbl_data_api_log IS '【API调用日志信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_asset_column +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_asset_column; +CREATE TABLE tbl_data_asset_column ( + asset_column_id int8 NOT NULL AUTO_INCREMENT , + column_name varchar(255) NOT NULL, + column_comment varchar(255) , + data_type varchar(255) NOT NULL, + column_no varchar(255) , + data_length varchar(255) , + data_example varchar(255) , + data_desc varchar(255) , + rsv varchar(255) , + data_unit varchar(255) +) +; +COMMENT ON COLUMN tbl_data_asset_column.asset_column_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_asset_column.column_name IS '字段名称'; +COMMENT ON COLUMN tbl_data_asset_column.column_comment IS '字段注释'; +COMMENT ON COLUMN tbl_data_asset_column.data_type IS '数据类型'; +COMMENT ON COLUMN tbl_data_asset_column.column_no IS '字段编码'; +COMMENT ON COLUMN tbl_data_asset_column.data_length IS '长度'; +COMMENT ON COLUMN tbl_data_asset_column.data_example IS '数据示例'; +COMMENT ON COLUMN tbl_data_asset_column.data_desc IS '数据说明'; +COMMENT ON COLUMN tbl_data_asset_column.rsv IS '备用字段'; +COMMENT ON COLUMN tbl_data_asset_column.data_unit IS '数据单位'; +COMMENT ON TABLE tbl_data_asset_column IS '数据资产基础元数据'; + +-- ---------------------------- +-- Table structure for tbl_data_asset_table +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_asset_table; +CREATE TABLE tbl_data_asset_table ( + asset_table_id int8 NOT NULL AUTO_INCREMENT , + source_id int8 NOT NULL, + table_name varchar(255) NOT NULL, + table_comment varchar(255) , + source varchar(255) , + rsv1 varchar(255) , + rsv2 varchar(255) , + table_create_time date +) +; +COMMENT ON COLUMN tbl_data_asset_table.asset_table_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_asset_table.source_id IS '数据源ID'; +COMMENT ON COLUMN tbl_data_asset_table.table_name IS '表名'; +COMMENT ON COLUMN tbl_data_asset_table.table_comment IS '表注释'; +COMMENT ON COLUMN tbl_data_asset_table.source IS '来源'; +COMMENT ON COLUMN tbl_data_asset_table.rsv1 IS '备用字段1'; +COMMENT ON COLUMN tbl_data_asset_table.rsv2 IS '备用字段2'; +COMMENT ON COLUMN tbl_data_asset_table.table_create_time IS '表创建时间'; +COMMENT ON TABLE tbl_data_asset_table IS '数据资产基础表'; + +-- ---------------------------- +-- Table structure for tbl_data_asset_table_column +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_asset_table_column; +CREATE TABLE tbl_data_asset_table_column ( + asset_table_column_id int8 NOT NULL AUTO_INCREMENT , + asset_table_id int8 NOT NULL, + column_name varchar(255) NOT NULL, + rsv varchar(255) +) +; +COMMENT ON COLUMN tbl_data_asset_table_column.asset_table_column_id IS '表ID'; +COMMENT ON COLUMN tbl_data_asset_table_column.asset_table_id IS '资产基础表ID'; +COMMENT ON COLUMN tbl_data_asset_table_column.column_name IS '资产元数据名称'; +COMMENT ON COLUMN tbl_data_asset_table_column.rsv IS '备用字段'; +COMMENT ON TABLE tbl_data_asset_table_column IS '数据资产基础表与元数据关联表'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_column +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_column; +CREATE TABLE tbl_data_metadata_column ( + column_id int8 NOT NULL AUTO_INCREMENT , + source_id int8 NOT NULL, + table_id int8 NOT NULL, + column_name varchar(255) NOT NULL, + column_comment varchar(255) , + column_key varchar(255) , + column_nullable varchar(255) , + column_position varchar(50) , + data_type varchar(255) , + data_length varchar(255) , + data_precision varchar(255) , + data_scale varchar(255) , + data_default varchar(255) , + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_metadata_column.column_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_metadata_column.source_id IS '所属数据源'; +COMMENT ON COLUMN tbl_data_metadata_column.table_id IS '所属数据表'; +COMMENT ON COLUMN tbl_data_metadata_column.column_name IS '字段名称'; +COMMENT ON COLUMN tbl_data_metadata_column.column_comment IS '字段注释'; +COMMENT ON COLUMN tbl_data_metadata_column.column_key IS '字段是否主键(0是 1否)'; +COMMENT ON COLUMN tbl_data_metadata_column.column_nullable IS '字段是否允许为空(0是 1否)'; +COMMENT ON COLUMN tbl_data_metadata_column.column_position IS '字段序号'; +COMMENT ON COLUMN tbl_data_metadata_column.data_type IS '数据类型'; +COMMENT ON COLUMN tbl_data_metadata_column.data_length IS '数据长度'; +COMMENT ON COLUMN tbl_data_metadata_column.data_precision IS '数据精度'; +COMMENT ON COLUMN tbl_data_metadata_column.data_scale IS '数据小数位'; +COMMENT ON COLUMN tbl_data_metadata_column.data_default IS '数据默认值'; +COMMENT ON COLUMN tbl_data_metadata_column.conn_id IS '连接ID'; +COMMENT ON TABLE tbl_data_metadata_column IS '【元数据信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_source +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_source; +CREATE TABLE tbl_data_metadata_source ( + source_id int8 NOT NULL AUTO_INCREMENT , + status char(1) NOT NULL, + create_by varchar(50) , + create_time timestamp(6), + create_dept varchar(50) , + update_by varchar(50) , + update_time timestamp(6), + remark varchar(1000) , + db_type char(1) NOT NULL, + source_name varchar(50) NOT NULL, + is_sync char(1) , + db_schema varchar(500) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0', + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_metadata_source.source_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_metadata_source.status IS '状态(0正常,1停用)'; +COMMENT ON COLUMN tbl_data_metadata_source.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_metadata_source.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_metadata_source.create_dept IS '创建人所属部门'; +COMMENT ON COLUMN tbl_data_metadata_source.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_metadata_source.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_metadata_source.remark IS '备注'; +COMMENT ON COLUMN tbl_data_metadata_source.db_type IS '数据源类型'; +COMMENT ON COLUMN tbl_data_metadata_source.source_name IS '数据源名称'; +COMMENT ON COLUMN tbl_data_metadata_source.is_sync IS '元数据同步(0已同步 1同步中 2未同步)'; +COMMENT ON COLUMN tbl_data_metadata_source.db_schema IS '数据源连接信息'; +COMMENT ON COLUMN tbl_data_metadata_source.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_metadata_source.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_metadata_source.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_metadata_source.conn_id IS '连接id'; +COMMENT ON TABLE tbl_data_metadata_source IS '【数据源信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_source_conn +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_source_conn; +CREATE TABLE tbl_data_metadata_source_conn ( + conn_id int8 NOT NULL AUTO_INCREMENT , + db_type char(1) NOT NULL, + host varchar(20) NOT NULL, + port int4 NOT NULL, + username varchar(50) NOT NULL, + password varchar(50) NOT NULL, + create_by varchar(50) , + create_time timestamp(6), + update_by varchar(50) , + update_time timestamp(6), + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0', + remark varchar(1000) , + sid varchar(255) , + init_source varchar(50) NOT NULL, + alias_name varchar(255) +) +; +COMMENT ON COLUMN tbl_data_metadata_source_conn.conn_id IS 'id'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.db_type IS '数据源类型'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.host IS 'ip地址'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.port IS '端口'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.username IS '用户名'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.password IS '密码'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.del_flag IS '【删除标志】0代表存在 1代表删除'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.init_source IS '初始数据源'; +COMMENT ON COLUMN tbl_data_metadata_source_conn.alias_name IS '别名'; +COMMENT ON TABLE tbl_data_metadata_source_conn IS '数据源连接信息表'; + +-- ---------------------------- +-- Table structure for tbl_data_metadata_table +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_metadata_table; +CREATE TABLE tbl_data_metadata_table ( + table_id int8 NOT NULL AUTO_INCREMENT , + source_id int8 NOT NULL, + table_name varchar(255) NOT NULL, + table_comment varchar(255) , + create_table_by varchar(50) , + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_metadata_table.table_id IS '主键ID'; +COMMENT ON COLUMN tbl_data_metadata_table.source_id IS '所属数据源'; +COMMENT ON COLUMN tbl_data_metadata_table.table_name IS '表名'; +COMMENT ON COLUMN tbl_data_metadata_table.table_comment IS '表注释'; +COMMENT ON COLUMN tbl_data_metadata_table.create_table_by IS '表创建人'; +COMMENT ON COLUMN tbl_data_metadata_table.conn_id IS '连接ID'; +COMMENT ON TABLE tbl_data_metadata_table IS '【数据库表信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_console_conn_num +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_console_conn_num; +CREATE TABLE tbl_data_sql_console_conn_num ( + conn_num int4 NOT NULL DEFAULT 0, + max_conn_num int4 NOT NULL, + alarm_conn_num int4 NOT NULL +) +; +COMMENT ON COLUMN tbl_data_sql_console_conn_num.conn_num IS '数据源连接数'; +COMMENT ON COLUMN tbl_data_sql_console_conn_num.max_conn_num IS '最大连接数'; +COMMENT ON COLUMN tbl_data_sql_console_conn_num.alarm_conn_num IS '告警连接数'; +COMMENT ON TABLE tbl_data_sql_console_conn_num IS '数据源连接数'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_console_export +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_console_export; +CREATE TABLE tbl_data_sql_console_export ( + export_id int8 NOT NULL AUTO_INCREMENT , + export_name varchar(200) NOT NULL, + sql_text varchar(2000) , + status char(1) NOT NULL, + fail_reason varchar(1000) , + user_id int8 NOT NULL, + create_by varchar(50) , + create_time timestamp(0), + update_by varchar(50) , + update_time timestamp(0) DEFAULT now(), + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(100) NOT NULL DEFAULT '1', + del_flag char(1) DEFAULT '0' +) +; +COMMENT ON COLUMN tbl_data_sql_console_export.export_id IS '导出文件ID'; +COMMENT ON COLUMN tbl_data_sql_console_export.export_name IS '导出文件名'; +COMMENT ON COLUMN tbl_data_sql_console_export.sql_text IS 'SQL文本'; +COMMENT ON COLUMN tbl_data_sql_console_export.status IS '状态:1导出中,2导出完成,3导出失败,4已取消'; +COMMENT ON COLUMN tbl_data_sql_console_export.fail_reason IS '失败原因'; +COMMENT ON COLUMN tbl_data_sql_console_export.user_id IS '用户ID'; +COMMENT ON COLUMN tbl_data_sql_console_export.create_by IS '创建人'; +COMMENT ON COLUMN tbl_data_sql_console_export.create_time IS '创建日期'; +COMMENT ON COLUMN tbl_data_sql_console_export.update_by IS '更新人'; +COMMENT ON COLUMN tbl_data_sql_console_export.update_time IS '更新日期'; +COMMENT ON COLUMN tbl_data_sql_console_export.version_num IS '版本号'; +COMMENT ON COLUMN tbl_data_sql_console_export.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_data_sql_console_export.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON TABLE tbl_data_sql_console_export IS 'SQL查询导出记录'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_console_file +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_console_file; +CREATE TABLE tbl_data_sql_console_file ( + file_id int8 NOT NULL AUTO_INCREMENT , + name varchar(255) NOT NULL, + source_id int8 NOT NULL, + sql_text text , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6), + del_flag char(1) DEFAULT '0', + user_id int8 NOT NULL, + pid int8 NOT NULL DEFAULT 0, + type char(1) NOT NULL DEFAULT 1, + conn_id int8 +) +; +COMMENT ON COLUMN tbl_data_sql_console_file.file_id IS '【文件ID】'; +COMMENT ON COLUMN tbl_data_sql_console_file.name IS '【文件名】'; +COMMENT ON COLUMN tbl_data_sql_console_file.source_id IS '【数据元ID】'; +COMMENT ON COLUMN tbl_data_sql_console_file.sql_text IS '【SQL语句】'; +COMMENT ON COLUMN tbl_data_sql_console_file.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_data_sql_console_file.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_data_sql_console_file.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_data_sql_console_file.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_data_sql_console_file.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_data_sql_console_file.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_data_sql_console_file.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_sql_console_file.user_id IS '【用户id】'; +COMMENT ON COLUMN tbl_data_sql_console_file.pid IS '【父id】'; +COMMENT ON COLUMN tbl_data_sql_console_file.type IS '【类型】0文件夹 1文件'; +COMMENT ON COLUMN tbl_data_sql_console_file.conn_id IS '数据源连接ID'; +COMMENT ON TABLE tbl_data_sql_console_file IS '【SQL工作台文件】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_data_apply +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_data_apply; +CREATE TABLE tbl_data_sql_data_apply ( + apply_id int8 NOT NULL AUTO_INCREMENT , + user_id int8 NOT NULL, + data_check_strictly char(1) DEFAULT '1', + end_time date NOT NULL, + explain text , + status char(1) DEFAULT '0', + reviewer varchar(255) , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + del_flag varchar(1) DEFAULT '0', + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) , + reason varchar(255) , + user_name varchar(255) , + review_time timestamp(0), + apply_no varchar(32) +) +; +COMMENT ON COLUMN tbl_data_sql_data_apply.apply_id IS '【申请id】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.user_id IS '【用户id】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.data_check_strictly IS '【数据树选择项是否关联显示】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.end_time IS '【到期时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.explain IS '【申请说明】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.status IS '【审批状态】0 待审批 1审批通过 2审批拒绝'; +COMMENT ON COLUMN tbl_data_sql_data_apply.reviewer IS '【审批人】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_data_sql_data_apply.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.remark IS '【备注】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.reason IS '【拒绝原因】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.user_name IS '【用户名】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.review_time IS '【审批时间】'; +COMMENT ON COLUMN tbl_data_sql_data_apply.apply_no IS '申请单号'; +COMMENT ON TABLE tbl_data_sql_data_apply IS '【SQL元数据权限申请表】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_data_auth +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_data_auth; +CREATE TABLE tbl_data_sql_data_auth ( + object_id int8 NOT NULL, + user_id int8 NOT NULL, + object_type varchar(10) NOT NULL, + apply_id int8 NOT NULL, + par_id int8, + object_name varchar(255) +) +; +COMMENT ON COLUMN tbl_data_sql_data_auth.object_id IS '目标表主键ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.user_id IS '用户ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.object_type IS '目标表类型'; +COMMENT ON COLUMN tbl_data_sql_data_auth.apply_id IS '权限申请表ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.par_id IS '父ID'; +COMMENT ON COLUMN tbl_data_sql_data_auth.object_name IS '目标表名称'; +COMMENT ON TABLE tbl_data_sql_data_auth IS '【元数据授权信息表】'; + +-- ---------------------------- +-- Table structure for tbl_data_sql_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_data_sql_log; +CREATE TABLE tbl_data_sql_log ( + sql_log_id int8 NOT NULL AUTO_INCREMENT , + db_type char(2) , + db_name varchar(255) , + sql_text text , + status char(1) , + fail_reason text , + start_time timestamp(6), + end_time timestamp(6), + total_times int8 +) +; +COMMENT ON COLUMN tbl_data_sql_log.sql_log_id IS 'SQL日志id'; +COMMENT ON COLUMN tbl_data_sql_log.db_type IS '数据库类型'; +COMMENT ON COLUMN tbl_data_sql_log.db_name IS '数据库名称'; +COMMENT ON COLUMN tbl_data_sql_log.sql_text IS 'SQL语句'; +COMMENT ON COLUMN tbl_data_sql_log.status IS '状态:1成功 2失败'; +COMMENT ON COLUMN tbl_data_sql_log.fail_reason IS '失败原因'; +COMMENT ON COLUMN tbl_data_sql_log.start_time IS 'SQL执行开始时间'; +COMMENT ON COLUMN tbl_data_sql_log.end_time IS 'SQL执行结束时间'; +COMMENT ON COLUMN tbl_data_sql_log.total_times IS 'SQL执行总耗时'; +COMMENT ON TABLE tbl_data_sql_log IS 'SQL执行日志'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_info +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_info; +CREATE TABLE tbl_docker_apply_info ( + apply_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_server_id int8 NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + apply_desc varchar(1000) NOT NULL, + lab_title varchar(100) NOT NULL, + service_type varchar(100) NOT NULL, + docker_image_name varchar(200) NOT NULL, + usage_time varchar(10) NOT NULL, + usage_time_unit varchar(10) NOT NULL, + start_date timestamp(0), + end_date timestamp(0), + delay_times varchar(2) , + cpu_limits varchar(10) NOT NULL, + cpu_seq varchar(10) , + memory_limits varchar(10) NOT NULL, + disc_limits varchar(10) NOT NULL, + remarks varchar(1000) , + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + release_flag varchar(1) , + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_info.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_info.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_info.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_info.docker_server_id IS '【 服务器id】'; +COMMENT ON COLUMN tbl_docker_apply_info.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_apply_info.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_apply_info.apply_desc IS '【 申请原因】'; +COMMENT ON COLUMN tbl_docker_apply_info.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_apply_info.service_type IS '【 服务类型】'; +COMMENT ON COLUMN tbl_docker_apply_info.docker_image_name IS '【 使用镜像】'; +COMMENT ON COLUMN tbl_docker_apply_info.usage_time IS '【 申请时效】'; +COMMENT ON COLUMN tbl_docker_apply_info.usage_time_unit IS '【 时间单位】'; +COMMENT ON COLUMN tbl_docker_apply_info.start_date IS '【开始时间】系统计算,到小时吧'; +COMMENT ON COLUMN tbl_docker_apply_info.end_date IS '【结束时间】系统计算,到小时吧'; +COMMENT ON COLUMN tbl_docker_apply_info.delay_times IS '【延期次数】系统计算'; +COMMENT ON COLUMN tbl_docker_apply_info.cpu_limits IS '【 CPU数量】'; +COMMENT ON COLUMN tbl_docker_apply_info.cpu_seq IS '【cpu序号】绝对分配时固定内核,比如只能用0,1内核'; +COMMENT ON COLUMN tbl_docker_apply_info.memory_limits IS '【 内存大小】'; +COMMENT ON COLUMN tbl_docker_apply_info.disc_limits IS '【 磁盘大小】'; +COMMENT ON COLUMN tbl_docker_apply_info.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_apply_info.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_info.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_info.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_info.release_flag IS '【是否发布】'; +COMMENT ON COLUMN tbl_docker_apply_info.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_apply_info.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_info.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_info.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_info.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_info.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_info.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_info.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_info.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_info.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_info.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_info IS '【 容器申请】'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_lib +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_lib; +CREATE TABLE tbl_docker_apply_lib ( + apply_lib_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_id int8 NOT NULL, + lib_type varchar(20) NOT NULL, + lib_desc text , + file_id int8 NOT NULL, + data_source_type varchar(1) NOT NULL, + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + plugin_names varchar(3000) , + handle_result varchar(2000) , + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_lib.apply_lib_id IS '【申请组件id】'; +COMMENT ON COLUMN tbl_docker_apply_lib.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_lib.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.lib_type IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.lib_desc IS '【内容说明】'; +COMMENT ON COLUMN tbl_docker_apply_lib.file_id IS '【 文件id】'; +COMMENT ON COLUMN tbl_docker_apply_lib.data_source_type IS '【数据来源】1系统提供的,2用户自己的'; +COMMENT ON COLUMN tbl_docker_apply_lib.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_lib.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_lib.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_lib.plugin_names IS '【组件真实名】打算记录一下里面的组件真实name'; +COMMENT ON COLUMN tbl_docker_apply_lib.handle_result IS '【处理结果】组件上传和安装具体结果描述'; +COMMENT ON COLUMN tbl_docker_apply_lib.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_apply_lib.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_lib.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_lib.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_lib.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_lib.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_lib.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_lib.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_lib IS '【容器使用自传组件】包含组件和数据'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_review +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_review; +CREATE TABLE tbl_docker_apply_review ( + review_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_remark varchar(1000) NOT NULL, + apply_id int8 NOT NULL, + lab_title varchar(100) NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + remarks varchar(1000) , + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_review.review_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_review.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_review.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_remark IS '【 申请原因】'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_id IS '【 实验室编号】'; +COMMENT ON COLUMN tbl_docker_apply_review.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_apply_review.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_apply_review.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_apply_review.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_review.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_review.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_review.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_review.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_review.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_review.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_review.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_review.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_review.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_review.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_review IS '【 数据注入申请审核表】'; + +-- ---------------------------- +-- Table structure for tbl_docker_apply_review_dtl +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_apply_review_dtl; +CREATE TABLE tbl_docker_apply_review_dtl ( + review_dtl_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + review_id int8 NOT NULL, + lib_type varchar(20) NOT NULL, + lib_desc text , + file_id int8 NOT NULL, + data_source_type varchar(1) NOT NULL, + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_dtl_id IS '【申请明细id】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.lib_type IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.lib_desc IS '【内容说明】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.file_id IS '【 文件id】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.data_source_type IS '【数据来源】1系统提供的,2用户自己的'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_apply_review_dtl.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_apply_review_dtl IS '【数据注入申请明细】包含组件和数据'; + +-- ---------------------------- +-- Table structure for tbl_docker_client_info +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_client_info; +CREATE TABLE tbl_docker_client_info ( + docker_server_id int4 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_server_name varchar(100) NOT NULL, + docker_server_ip varchar(100) NOT NULL, + docker_server_port varchar(100) , + docker_server_username varchar(100) , + docker_server_password varchar(100) , + cpu_limits varchar(10) , + memory_limits varchar(10) , + disc_limits varchar(10) , + used_cpu_limits varchar(10) , + used_memory_limits varchar(10) , + used_disc_limits varchar(10) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_id IS '【 服务器主键ID】'; +COMMENT ON COLUMN tbl_docker_client_info.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_client_info.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_name IS '【 服务器名称】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_ip IS '【 服务器IP】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_port IS '【 服务器port】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_username IS '【 服务器账户】'; +COMMENT ON COLUMN tbl_docker_client_info.docker_server_password IS '【 服务器密码】'; +COMMENT ON COLUMN tbl_docker_client_info.cpu_limits IS '【 CPU数量】'; +COMMENT ON COLUMN tbl_docker_client_info.memory_limits IS '【 内存大小】'; +COMMENT ON COLUMN tbl_docker_client_info.disc_limits IS '【 磁盘大小】'; +COMMENT ON COLUMN tbl_docker_client_info.used_cpu_limits IS '【 使用CPU大小】'; +COMMENT ON COLUMN tbl_docker_client_info.used_memory_limits IS '【 使用内存大小】'; +COMMENT ON COLUMN tbl_docker_client_info.used_disc_limits IS '【 使用磁盘大小】'; +COMMENT ON COLUMN tbl_docker_client_info.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_client_info.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_client_info.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_client_info.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_client_info.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_client_info.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_client_info.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_client_info.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_client_info.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_client_info IS '【 服务器清单】'; + +-- ---------------------------- +-- Table structure for tbl_docker_config_hardware +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_config_hardware; +CREATE TABLE tbl_docker_config_hardware ( + config_id int8 NOT NULL AUTO_INCREMENT , + cpu int4 NOT NULL, + core_num int4 NOT NULL, + disk int4 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + order_num int4 DEFAULT 0, + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_config_hardware.config_id IS '【硬件配置id】'; +COMMENT ON COLUMN tbl_docker_config_hardware.cpu IS '【cpu大小】,单位G'; +COMMENT ON COLUMN tbl_docker_config_hardware.core_num IS '【内存】单位G'; +COMMENT ON COLUMN tbl_docker_config_hardware.disk IS '【磁盘大小】单位G'; +COMMENT ON COLUMN tbl_docker_config_hardware.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_config_hardware.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_config_hardware.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_config_hardware.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_config_hardware.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_config_hardware.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_config_hardware.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_config_hardware.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_config_hardware.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_config_hardware.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_config_hardware.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_config_hardware IS '【实验室硬件配置信息表】'; + +-- ---------------------------- +-- Table structure for tbl_docker_download_apply +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_download_apply; +CREATE TABLE tbl_docker_download_apply ( + download_apply_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_id int8 NOT NULL, + lab_title varchar(100) NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + apply_desc varchar(1000) NOT NULL, + file_name varchar(200) , + file_size varchar(20) , + file_last_time varchar(50) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + review_status varchar(2) NOT NULL, + review_desc varchar(1000) , + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_download_apply.download_apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_download_apply.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_id IS '【 关联主键ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_download_apply.apply_desc IS '【 申请原因】'; +COMMENT ON COLUMN tbl_docker_download_apply.file_name IS '【文件名】'; +COMMENT ON COLUMN tbl_docker_download_apply.file_size IS '【文件大小】'; +COMMENT ON COLUMN tbl_docker_download_apply.file_last_time IS '【文件更新时间】防止修改,最后下载的时候要校验'; +COMMENT ON COLUMN tbl_docker_download_apply.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_download_apply.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_download_apply.review_status IS '【 审核状态】'; +COMMENT ON COLUMN tbl_docker_download_apply.review_desc IS '【 驳回原因】'; +COMMENT ON COLUMN tbl_docker_download_apply.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_download_apply.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_download_apply.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_download_apply.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_download_apply.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_download_apply.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_download_apply.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_download_apply.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_download_apply.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_download_apply.rsv3 IS '【备用字段2】'; +COMMENT ON TABLE tbl_docker_download_apply IS '【 下载文件申请】容器内的文件下载'; + +-- ---------------------------- +-- Table structure for tbl_docker_images +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_images; +CREATE TABLE tbl_docker_images ( + docker_image_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_image_name varchar(200) NOT NULL, + service_type varchar(100) NOT NULL, + docker_image_desc varchar(2000) NOT NULL, + file_id int8, + remarks varchar(1000) , + order_num int4 DEFAULT 0, + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_images.docker_image_id IS '【 镜像主键id】'; +COMMENT ON COLUMN tbl_docker_images.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_images.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_images.docker_image_name IS '【 镜像名称】'; +COMMENT ON COLUMN tbl_docker_images.service_type IS '【 服务类型】镜像里是可以有多个服务的'; +COMMENT ON COLUMN tbl_docker_images.docker_image_desc IS '【 镜像说明】'; +COMMENT ON COLUMN tbl_docker_images.file_id IS '【 组件id】'; +COMMENT ON COLUMN tbl_docker_images.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_images.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_images.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_images.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_images.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_images.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_images.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_images.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_images.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_images.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_images IS '【 容器可用镜像】'; + +-- ---------------------------- +-- Table structure for tbl_docker_port_list +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_port_list; +CREATE TABLE tbl_docker_port_list ( + docker_port_id int8 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + docker_server_id int8 NOT NULL, + docker_server_port varchar(10) , + url_path varchar(100) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_port_list.docker_port_id IS '【 端口主键ID】'; +COMMENT ON COLUMN tbl_docker_port_list.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_port_list.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_port_list.docker_server_id IS '【 服务器id】'; +COMMENT ON COLUMN tbl_docker_port_list.docker_server_port IS '【端口号】'; +COMMENT ON COLUMN tbl_docker_port_list.url_path IS '【映射路径】和端口对应的域名'; +COMMENT ON COLUMN tbl_docker_port_list.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_port_list.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_port_list.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_port_list.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_port_list.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_port_list.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_port_list.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_port_list.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_port_list.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_port_list IS '【 服务器端口】把可用端口配置在这里,端口是固定的几个'; + +-- ---------------------------- +-- Table structure for tbl_docker_portainer_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_portainer_user; +CREATE TABLE tbl_docker_portainer_user ( + docker_account_id int8 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + api_http varchar(100) NOT NULL, + api_key varchar(500) , + admin_username varchar(32) , + admin_password varchar(100) , + remarks varchar(1000) , + order_num int4 DEFAULT 0, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_docker_portainer_user.docker_account_id IS '【 账户主键id】'; +COMMENT ON COLUMN tbl_docker_portainer_user.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_portainer_user.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_portainer_user.api_http IS '【 API地址】'; +COMMENT ON COLUMN tbl_docker_portainer_user.api_key IS '【 API密钥】'; +COMMENT ON COLUMN tbl_docker_portainer_user.admin_username IS '【 账户】'; +COMMENT ON COLUMN tbl_docker_portainer_user.admin_password IS '【 密码】'; +COMMENT ON COLUMN tbl_docker_portainer_user.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_portainer_user.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_portainer_user.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_portainer_user.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_portainer_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_portainer_user.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_portainer_user.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_portainer_user.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_portainer_user.update_time IS '【 更新时间】'; +COMMENT ON TABLE tbl_docker_portainer_user IS '【portainer管理账户信息】'; + +-- ---------------------------- +-- Table structure for tbl_docker_vpn +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_vpn; +CREATE TABLE tbl_docker_vpn ( + vpn_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + vpn_ip varchar(150) , + vpn_username varchar(100) , + vpn_password varchar(100) , + fortress_ip varchar(200) , + fortress_username varchar(100) , + fortress_password varchar(100) , + apply_id int8, + lab_title varchar(100) , + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + start_date timestamp(0), + end_date timestamp(0), + send_flag varchar(1) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_vpn.vpn_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_docker_vpn.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_docker_vpn.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_docker_vpn.vpn_ip IS '【VPN地址】'; +COMMENT ON COLUMN tbl_docker_vpn.vpn_username IS '【账户名】'; +COMMENT ON COLUMN tbl_docker_vpn.vpn_password IS '【密码】'; +COMMENT ON COLUMN tbl_docker_vpn.fortress_ip IS '【堡垒机地址】'; +COMMENT ON COLUMN tbl_docker_vpn.fortress_username IS '【堡垒机账户】'; +COMMENT ON COLUMN tbl_docker_vpn.fortress_password IS '【堡垒机密码】'; +COMMENT ON COLUMN tbl_docker_vpn.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_vpn.lab_title IS '【实验室名称】'; +COMMENT ON COLUMN tbl_docker_vpn.apply_user_id IS '【 申请用户id】'; +COMMENT ON COLUMN tbl_docker_vpn.apply_user_name IS '【 申请用户】'; +COMMENT ON COLUMN tbl_docker_vpn.start_date IS '【生效时间】'; +COMMENT ON COLUMN tbl_docker_vpn.end_date IS '【到期时间】'; +COMMENT ON COLUMN tbl_docker_vpn.send_flag IS '【推送标志】'; +COMMENT ON COLUMN tbl_docker_vpn.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_docker_vpn.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_docker_vpn.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_docker_vpn.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_vpn.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_docker_vpn.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_docker_vpn.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_docker_vpn.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_docker_vpn.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_vpn.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_vpn.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_vpn IS '【VPN用户表】'; + +-- ---------------------------- +-- Table structure for tbl_docker_with_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_with_user; +CREATE TABLE tbl_docker_with_user ( + apply_id int8 NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + lab_title varchar(100) NOT NULL, + apply_user_id varchar(32) NOT NULL, + apply_user_name varchar(100) NOT NULL, + docker_container_id varchar(100) NOT NULL, + docker_server_id int8 NOT NULL, + remarks varchar(200) , + order_num int4 DEFAULT 0, + bus_status varchar(2) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_with_user.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_with_user.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_with_user.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_with_user.lab_title IS '【实验室名称】允许用户自定义名称,反之默认生成'; +COMMENT ON COLUMN tbl_docker_with_user.apply_user_id IS '【 用户id】'; +COMMENT ON COLUMN tbl_docker_with_user.apply_user_name IS '【 用户】'; +COMMENT ON COLUMN tbl_docker_with_user.docker_container_id IS '【 容器id】'; +COMMENT ON COLUMN tbl_docker_with_user.docker_server_id IS '【 服务器id】'; +COMMENT ON COLUMN tbl_docker_with_user.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_with_user.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_with_user.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_with_user.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_with_user.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_with_user.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_with_user.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_with_user.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_with_user.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_with_user.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_with_user.rsv3 IS '【备用字段2】'; +COMMENT ON TABLE tbl_docker_with_user IS '【 用户与容器信息】'; + +-- ---------------------------- +-- Table structure for tbl_docker_with_user_account +-- ---------------------------- +DROP TABLE IF EXISTS tbl_docker_with_user_account; +CREATE TABLE tbl_docker_with_user_account ( + account_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + apply_id int8 NOT NULL, + service_type varchar(50) NOT NULL, + login_url varchar(200) NOT NULL, + login_username varchar(100) , + login_password varchar(100) , + docker_port_id int8 NOT NULL, + remarks varchar(200) , + order_num int4 DEFAULT 0, + bus_status varchar(2) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL, + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_docker_with_user_account.account_id IS '【 账户主键id】'; +COMMENT ON COLUMN tbl_docker_with_user_account.version_num IS '【 版本号】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rec_token IS '【 随机码】'; +COMMENT ON COLUMN tbl_docker_with_user_account.apply_id IS '【 申请主键ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.service_type IS '【 服务类型】'; +COMMENT ON COLUMN tbl_docker_with_user_account.login_url IS '【 访问地址】'; +COMMENT ON COLUMN tbl_docker_with_user_account.login_username IS '【 账户】'; +COMMENT ON COLUMN tbl_docker_with_user_account.login_password IS '【 密码】'; +COMMENT ON COLUMN tbl_docker_with_user_account.docker_port_id IS '【 端口主键ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.remarks IS '【 备注】'; +COMMENT ON COLUMN tbl_docker_with_user_account.order_num IS '【 排序】'; +COMMENT ON COLUMN tbl_docker_with_user_account.bus_status IS '【 业务状态】'; +COMMENT ON COLUMN tbl_docker_with_user_account.data_status IS '【 数据状态】'; +COMMENT ON COLUMN tbl_docker_with_user_account.create_by IS '【 创建用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_docker_with_user_account.create_time IS '【 创建时间】'; +COMMENT ON COLUMN tbl_docker_with_user_account.update_by IS '【 更新用户ID】'; +COMMENT ON COLUMN tbl_docker_with_user_account.update_by_name IS '【 更新用户】'; +COMMENT ON COLUMN tbl_docker_with_user_account.update_time IS '【 更新时间】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_docker_with_user_account.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_docker_with_user_account IS '【 容器用户账户信息】设计成允许多个服务'; + +-- ---------------------------- +-- Table structure for tbl_org_api_auth +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_api_auth; +CREATE TABLE tbl_org_api_auth ( + id int8 NOT NULL AUTO_INCREMENT , + org_no varchar(255) NOT NULL, + api_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_org_api_auth.id IS '【ID】'; +COMMENT ON COLUMN tbl_org_api_auth.org_no IS '【机构号】'; +COMMENT ON COLUMN tbl_org_api_auth.api_id IS '【接口API ID】'; +COMMENT ON TABLE tbl_org_api_auth IS '【机构接口权限表】'; + +-- ---------------------------- +-- Table structure for tbl_org_config +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_config; +CREATE TABLE tbl_org_config ( + config_id int8 NOT NULL AUTO_INCREMENT , + org_no varchar(64) NOT NULL, + config_key varchar(64) , + config_desc varchar(500) , + config_value varchar(50) , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + create_by varchar(64) , + create_time timestamp(6), + update_by varchar(64) , + update_time timestamp(6), + del_flag char(1) NOT NULL DEFAULT '0', + status char(1) NOT NULL DEFAULT '0' +) +; +COMMENT ON COLUMN tbl_org_config.config_id IS 'ID'; +COMMENT ON COLUMN tbl_org_config.org_no IS '机构号'; +COMMENT ON COLUMN tbl_org_config.config_key IS '配置项'; +COMMENT ON COLUMN tbl_org_config.config_desc IS '配置名称'; +COMMENT ON COLUMN tbl_org_config.config_value IS '配置值'; +COMMENT ON COLUMN tbl_org_config.version_num IS '版本号'; +COMMENT ON COLUMN tbl_org_config.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_org_config.create_by IS '创建者'; +COMMENT ON COLUMN tbl_org_config.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_org_config.update_by IS '更新者'; +COMMENT ON COLUMN tbl_org_config.update_time IS '更新时间'; +COMMENT ON COLUMN tbl_org_config.del_flag IS '【删除标志】0代表存在 1代表删除'; +COMMENT ON COLUMN tbl_org_config.status IS '【状态】0正常 1停用'; +COMMENT ON TABLE tbl_org_config IS '【机构配置表】'; + +-- ---------------------------- +-- Table structure for tbl_org_info +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_info; +CREATE TABLE tbl_org_info ( + org_no varchar(64) NOT NULL, + org_name varchar(255) NOT NULL, + org_type varchar(2) NOT NULL, + org_desc varchar(255) , + salt varchar(255) NOT NULL, + encrypt varchar(1024) NOT NULL, + start_time date NOT NULL, + end_time date NOT NULL, + status char(1) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + create_by varchar(64) , + create_by_name varchar(100) , + create_time timestamp(0), + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + del_flag char(1) DEFAULT '0', + ip varchar(64) , + contract_tel varchar(100) , + data_begin date, + data_end date, + member_id varchar(64) +) +; +COMMENT ON COLUMN tbl_org_info.org_no IS '【机构号】'; +COMMENT ON COLUMN tbl_org_info.org_name IS '【机构名称】'; +COMMENT ON COLUMN tbl_org_info.org_type IS '【机构类型】'; +COMMENT ON COLUMN tbl_org_info.org_desc IS '【机构描述】'; +COMMENT ON COLUMN tbl_org_info.salt IS '【加盐】'; +COMMENT ON COLUMN tbl_org_info.encrypt IS '【加密】'; +COMMENT ON COLUMN tbl_org_info.start_time IS '【生效时间】'; +COMMENT ON COLUMN tbl_org_info.end_time IS '【到期时间】'; +COMMENT ON COLUMN tbl_org_info.status IS '【状态】0正常 1停用 2到期'; +COMMENT ON COLUMN tbl_org_info.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_org_info.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_org_info.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_org_info.create_by_name IS '【创建人】'; +COMMENT ON COLUMN tbl_org_info.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_org_info.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_org_info.update_by_name IS '【更新人】'; +COMMENT ON COLUMN tbl_org_info.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_org_info.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_org_info.ip IS '【ip白名单】'; +COMMENT ON COLUMN tbl_org_info.contract_tel IS '【联系人电话】'; +COMMENT ON COLUMN tbl_org_info.data_begin IS '【数据起始时间】'; +COMMENT ON COLUMN tbl_org_info.data_end IS '【数据结束时间】'; +COMMENT ON COLUMN tbl_org_info.member_id IS '【用户ID】'; +COMMENT ON TABLE tbl_org_info IS '【机构管理信息表】'; + +-- ---------------------------- +-- Table structure for tbl_org_statistics +-- ---------------------------- +DROP TABLE IF EXISTS tbl_org_statistics; +CREATE TABLE tbl_org_statistics ( + id int8 NOT NULL AUTO_INCREMENT , + org_no varchar(64) NOT NULL, + org_name varchar(255) , + api_id int4, + success_total int4, + fail_total int4, + api_name varchar(255) , + create_time timestamp(0), + create_by varchar(100) , + update_time timestamp(0), + update_by varchar(100) , + version_num int4 DEFAULT 0, + rec_token varchar(100) DEFAULT '1', + del_flag char(1) +) +; +COMMENT ON COLUMN tbl_org_statistics.org_no IS '机构号'; +COMMENT ON COLUMN tbl_org_statistics.org_name IS '机构名称'; +COMMENT ON COLUMN tbl_org_statistics.api_id IS 'API ID'; +COMMENT ON COLUMN tbl_org_statistics.success_total IS '成功次数'; +COMMENT ON COLUMN tbl_org_statistics.fail_total IS '失败次数'; +COMMENT ON COLUMN tbl_org_statistics.api_name IS '接口名称'; +COMMENT ON COLUMN tbl_org_statistics.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_org_statistics.create_by IS '创建人'; +COMMENT ON COLUMN tbl_org_statistics.update_time IS '更新时间'; +COMMENT ON COLUMN tbl_org_statistics.update_by IS '更新人'; +COMMENT ON COLUMN tbl_org_statistics.version_num IS '版本号'; +COMMENT ON COLUMN tbl_org_statistics.rec_token IS '随机码'; +COMMENT ON COLUMN tbl_org_statistics.del_flag IS '是否删除【0否,1是】'; +COMMENT ON TABLE tbl_org_statistics IS '接口调用次数统计'; + +-- ---------------------------- +-- Table structure for tbl_portal_content +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_content; +CREATE TABLE tbl_portal_content ( + content_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + content_title varchar(200) , + content_text text , + content_type varchar(2) , + show_type varchar(2) , + remarks varchar(1000) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + sort int4, + show_index char(1) , + subtitle varchar(50) , + img_url varchar(255) +) +; +COMMENT ON COLUMN tbl_portal_content.content_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_portal_content.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_portal_content.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_portal_content.content_title IS '【标题】'; +COMMENT ON COLUMN tbl_portal_content.content_text IS '【内容】'; +COMMENT ON COLUMN tbl_portal_content.content_type IS '【类型】'; +COMMENT ON COLUMN tbl_portal_content.show_type IS '【展示类型】'; +COMMENT ON COLUMN tbl_portal_content.remarks IS '【文件备注】'; +COMMENT ON COLUMN tbl_portal_content.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_portal_content.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_portal_content.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_portal_content.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_portal_content.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_portal_content.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_portal_content.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_portal_content.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_portal_content.sort IS '【排序】'; +COMMENT ON COLUMN tbl_portal_content.show_index IS '【首页播报】0展示 1不展示'; +COMMENT ON COLUMN tbl_portal_content.subtitle IS '副标题'; +COMMENT ON COLUMN tbl_portal_content.img_url IS '图片地址'; +COMMENT ON TABLE tbl_portal_content IS '【门户内容表】'; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2023 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2023; +CREATE TABLE tbl_portal_logininfor_2023 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2024; +CREATE TABLE tbl_portal_logininfor_2024 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2025; +CREATE TABLE tbl_portal_logininfor_2025 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2026; +CREATE TABLE tbl_portal_logininfor_2026 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2027; +CREATE TABLE tbl_portal_logininfor_2027 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2028; +CREATE TABLE tbl_portal_logininfor_2028 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2029; +CREATE TABLE tbl_portal_logininfor_2029 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2030 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2030; +CREATE TABLE tbl_portal_logininfor_2030 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2031 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2031; +CREATE TABLE tbl_portal_logininfor_2031 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_2032 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_2032; +CREATE TABLE tbl_portal_logininfor_2032 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor_copy1 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor_copy1; +CREATE TABLE tbl_portal_logininfor_copy1 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.info_id IS '【访问ID】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.ipaddr IS '【登录IP地址】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.login_location IS '【登录地点】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.browser IS '【浏览器类型】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.os IS '【操作系统】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.status IS '【登录状态】0成功 1失败'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.msg IS '【提示消息】'; +COMMENT ON COLUMN tbl_portal_logininfor_copy1.login_time IS '【访问时间】'; +COMMENT ON TABLE tbl_portal_logininfor_copy1 IS '【门户登录日志】'; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2023 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2023; +CREATE TABLE tbl_portal_oper_log_2023 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2024; +CREATE TABLE tbl_portal_oper_log_2024 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2025; +CREATE TABLE tbl_portal_oper_log_2025 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2026; +CREATE TABLE tbl_portal_oper_log_2026 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2027; +CREATE TABLE tbl_portal_oper_log_2027 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2028; +CREATE TABLE tbl_portal_oper_log_2028 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2029; +CREATE TABLE tbl_portal_oper_log_2029 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2030 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2030; +CREATE TABLE tbl_portal_oper_log_2030 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2031 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2031; +CREATE TABLE tbl_portal_oper_log_2031 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_2032 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_2032; +CREATE TABLE tbl_portal_oper_log_2032 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log_copy1 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log_copy1; +CREATE TABLE tbl_portal_oper_log_copy1 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_id IS '【日志主键】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.title IS '【模块标题】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.business_type IS '【业务类型】0其它 1新增 2修改 3删除'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.method IS '【方法名称】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.request_method IS '【请求方式】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.operator_type IS '【操作类别】0其它 1后台用户 2手机端用户'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_name IS '【操作人员】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_url IS '【请求URL】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_ip IS '【主机地址】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_location IS '【操作地点】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_param IS '【请求参数】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.json_result IS '【返回参数】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.status IS '【操作状态】0正常 1异常'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.error_msg IS '【错误消息】'; +COMMENT ON COLUMN tbl_portal_oper_log_copy1.oper_time IS '【操作时间】'; +COMMENT ON TABLE tbl_portal_oper_log_copy1 IS '【门户操作日志】'; + +-- ---------------------------- +-- Table structure for tbl_portal_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_user; +CREATE TABLE tbl_portal_user ( + user_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dept_id int8, + user_name varchar(30) NOT NULL, + nick_name varchar(30) NOT NULL, + user_type varchar(2) , + email varchar(200) , + phonenumber varchar(200) , + sex char(1) , + avatar varchar(100) , + password varchar(100) , + enterprise_name varchar(500) , + industry_category varchar(3) , + social_credit_code varchar(50) , + enterprise_industry varchar(500) , + enterprise_address varchar(500) , + status char(1) , + del_flag char(1) DEFAULT '0', + login_ip varchar(128) , + login_date timestamp(6), + is_locked char(1) , + login_error_count int4, + last_login_error_time timestamp(6), + remark varchar(500) , + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0), + first_flag varchar +) +; +COMMENT ON COLUMN tbl_portal_user.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_portal_user.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_portal_user.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_portal_user.dept_id IS '【所属机构】'; +COMMENT ON COLUMN tbl_portal_user.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_portal_user.nick_name IS '【用户昵称】'; +COMMENT ON COLUMN tbl_portal_user.user_type IS '【用户类型】00系统用户'; +COMMENT ON COLUMN tbl_portal_user.email IS '【用户邮箱】'; +COMMENT ON COLUMN tbl_portal_user.phonenumber IS '【手机号码】'; +COMMENT ON COLUMN tbl_portal_user.sex IS '【用户性别】0男 1女 2未知'; +COMMENT ON COLUMN tbl_portal_user.avatar IS '【头像地址】'; +COMMENT ON COLUMN tbl_portal_user.password IS '【密码】'; +COMMENT ON COLUMN tbl_portal_user.enterprise_name IS '【企业名称】'; +COMMENT ON COLUMN tbl_portal_user.industry_category IS '【行业类别】'; +COMMENT ON COLUMN tbl_portal_user.social_credit_code IS '【社会统一信用代码】'; +COMMENT ON COLUMN tbl_portal_user.enterprise_industry IS '【企业行业】'; +COMMENT ON COLUMN tbl_portal_user.enterprise_address IS '【enterprise_address】'; +COMMENT ON COLUMN tbl_portal_user.status IS '【帐号状态】0正常 1停用'; +COMMENT ON COLUMN tbl_portal_user.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_portal_user.login_ip IS '【最后登录IP】'; +COMMENT ON COLUMN tbl_portal_user.login_date IS '【最后登录时间】'; +COMMENT ON COLUMN tbl_portal_user.is_locked IS '【锁定状态】'; +COMMENT ON COLUMN tbl_portal_user.login_error_count IS '【登陆错误次数】'; +COMMENT ON COLUMN tbl_portal_user.last_login_error_time IS '【登陆错误时间】'; +COMMENT ON COLUMN tbl_portal_user.remark IS '【备注】'; +COMMENT ON COLUMN tbl_portal_user.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_portal_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_portal_user.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_portal_user.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_portal_user.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_portal_user.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_portal_user.first_flag IS '【首次登录标记】null或0表示首次,1非首次'; +COMMENT ON TABLE tbl_portal_user IS '【门户用户信息表】'; + +-- ---------------------------- +-- Table structure for tbl_portal_user_msg +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_user_msg; +CREATE TABLE tbl_portal_user_msg ( + msg_id int8 NOT NULL AUTO_INCREMENT , + user_id int8 NOT NULL, + nike_name varchar(100) , + msg_title varchar(200) , + msg_text text , + msg_type varchar(2) , + msg_status varchar(1) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_user_msg.msg_id IS '【主键id】'; +COMMENT ON COLUMN tbl_portal_user_msg.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_portal_user_msg.nike_name IS '【用户姓名】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_title IS '【消息标题】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_text IS '【消息内容】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_type IS '【消息类型】'; +COMMENT ON COLUMN tbl_portal_user_msg.msg_status IS '【消息状态】'; +COMMENT ON COLUMN tbl_portal_user_msg.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_portal_user_msg.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_portal_user_msg.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_portal_user_msg.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_portal_user_msg.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_portal_user_msg.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_portal_user_msg.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_portal_user_msg IS '【用户消息表】'; + +-- ---------------------------- +-- Table structure for tbl_prd_base_line +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_base_line; +CREATE TABLE tbl_prd_base_line ( + line_name varchar(200) NOT NULL, + line_code varchar(6) NOT NULL, + line_no varchar(5) +) +; +COMMENT ON COLUMN tbl_prd_base_line.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_base_line.line_code IS '6位线路编码'; +COMMENT ON COLUMN tbl_prd_base_line.line_no IS '五位线路编码'; + +-- ---------------------------- +-- Table structure for tbl_prd_base_line_station +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_base_line_station; +CREATE TABLE tbl_prd_base_line_station ( + line_code varchar(10) NOT NULL, + line_name varchar(200) NOT NULL, + up varchar(1) NOT NULL, + levels int4 NOT NULL, + level_name varchar(200) NOT NULL, + line_no varchar(10) +) +; +COMMENT ON COLUMN tbl_prd_base_line_station.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_base_line_station.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_base_line_station.up IS '方向'; +COMMENT ON COLUMN tbl_prd_base_line_station.levels IS '站序'; +COMMENT ON COLUMN tbl_prd_base_line_station.level_name IS '站点名称'; +COMMENT ON COLUMN tbl_prd_base_line_station.line_no IS '五位线路编码'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_metric_day; +CREATE TABLE tbl_prd_line_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + line_status varchar(10) NOT NULL, + company_code varchar(100) NOT NULL, + company_name varchar(100) NOT NULL, + service_type varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_status IS '线路状态 0表示暂停营运、1表示启用、2表示撤销'; +COMMENT ON COLUMN tbl_prd_line_metric_day.company_code IS '公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司)'; +COMMENT ON COLUMN tbl_prd_line_metric_day.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_prd_line_metric_day.service_type IS '营运模式 1:高峰线、3:全日线、4:夜宵线'; +COMMENT ON COLUMN tbl_prd_line_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_metric_day IS '统计时间段内的线路客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_metric_hour +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_metric_hour; +CREATE TABLE tbl_prd_line_metric_hour ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + line_status varchar(10) NOT NULL, + company_code varchar(100) NOT NULL, + company_name varchar(100) NOT NULL, + service_type varchar(10) NOT NULL, + metric_hour int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_status IS '线路状态 0表示暂停营运、1表示启用、2表示撤销'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.company_code IS '公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司)'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.service_type IS '营运模式 1:高峰线、3:全日线、4:夜宵线'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.metric_hour IS '指标小时'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_metric_hour.line_no IS '五位线路编码'; +COMMENT ON TABLE tbl_prd_line_metric_hour IS '统计时间段内的线路客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_metric_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_metric_month; +CREATE TABLE tbl_prd_line_metric_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + line_status varchar(10) NOT NULL, + company_code varchar(100) NOT NULL, + company_name varchar(100) NOT NULL, + service_type varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_status IS '线路状态 0表示暂停营运、1表示启用、2表示撤销'; +COMMENT ON COLUMN tbl_prd_line_metric_month.company_code IS '公交营运公司编码 00-01(巴士一公司) 00-12(巴士二公司)00-04(巴士三公司)00-06(巴士四公司)00-10(巴士五公司)'; +COMMENT ON COLUMN tbl_prd_line_metric_month.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_prd_line_metric_month.service_type IS '营运模式 1:高峰线、3:全日线、4:夜宵线'; +COMMENT ON COLUMN tbl_prd_line_metric_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_line_metric_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_metric_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_metric_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_metric_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_metric_month IS '统计时间段内的线路客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_metric_day; +CREATE TABLE tbl_prd_line_station_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + level_name varchar(100) NOT NULL, + levels int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_metric_day IS '统计时间段内的线路站点客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_metric_hour +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_metric_hour; +CREATE TABLE tbl_prd_line_station_metric_hour ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + level_name varchar(100) NOT NULL, + metric_hour int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.metric_hour IS '指标小时'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_hour.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_metric_hour IS '统计时间段内的线路站点客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_metric_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_metric_month; +CREATE TABLE tbl_prd_line_station_metric_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + level_name varchar(100) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_metric_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_metric_month IS '统计时间段内的线路站点客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_trans_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_trans_day; +CREATE TABLE tbl_prd_line_station_trans_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_trans_day IS '统计时间段内的站点换乘量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_trans_hour +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_trans_hour; +CREATE TABLE tbl_prd_line_station_trans_hour ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_hour int4 NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.metric_hour IS '指标小时'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_hour.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_trans_hour IS '统计时间段内的站点换乘量'; + +-- ---------------------------- +-- Table structure for tbl_prd_line_station_trans_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_line_station_trans_month; +CREATE TABLE tbl_prd_line_station_trans_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_line_station_trans_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_line_station_trans_month IS '统计时间段内的站点换乘量'; + +-- ---------------------------- +-- Table structure for tbl_prd_route_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_route_metric_day; +CREATE TABLE tbl_prd_route_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + license_plate varchar(100) NOT NULL, + driver_code varchar(100) NOT NULL, + bus_code varchar(100) , + start_station varchar(100) NOT NULL, + start_time timestamp(6) NOT NULL, + end_station varchar(100) NOT NULL, + arrival_time timestamp(6) NOT NULL, + waybill_type varchar(100) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_route_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_route_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_route_metric_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_route_metric_day.license_plate IS '车辆牌照'; +COMMENT ON COLUMN tbl_prd_route_metric_day.driver_code IS '司机工号'; +COMMENT ON COLUMN tbl_prd_route_metric_day.bus_code IS '车辆自编码'; +COMMENT ON COLUMN tbl_prd_route_metric_day.start_station IS '起点'; +COMMENT ON COLUMN tbl_prd_route_metric_day.start_time IS '发车时间'; +COMMENT ON COLUMN tbl_prd_route_metric_day.end_station IS '终点'; +COMMENT ON COLUMN tbl_prd_route_metric_day.arrival_time IS '到达时间'; +COMMENT ON COLUMN tbl_prd_route_metric_day.waybill_type IS '路单类型'; +COMMENT ON COLUMN tbl_prd_route_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_route_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_route_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_route_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_route_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_route_metric_day IS '统计时间段内的班次客流量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_metric_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_metric_day; +CREATE TABLE tbl_prd_station_freq_metric_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + line_status varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_status IS '线路状态'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_metric_day IS '统计时间段内的站点常乘客刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_metric_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_metric_month; +CREATE TABLE tbl_prd_station_freq_metric_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + line_status varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) , + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_status IS '线路状态'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_metric_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_metric_month IS '统计时间段内的站点常乘客刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_trans_day +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_trans_day; +CREATE TABLE tbl_prd_station_freq_trans_day ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_date date NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.metric_date IS '指标日期'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_day.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_trans_day IS '统计时间段内的站点常乘客换乘刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_station_freq_trans_month +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_station_freq_trans_month; +CREATE TABLE tbl_prd_station_freq_trans_month ( + line_code varchar(100) NOT NULL, + line_name varchar(100) NOT NULL, + up varchar(10) NOT NULL, + levels int4 NOT NULL, + exchange_type varchar(10) NOT NULL, + metric_month varchar(100) NOT NULL, + metric_value int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + line_no varchar(50) , + level_name varchar(50) NOT NULL, + id int8 NOT NULL AUTO_INCREMENT +) +; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.line_code IS '六位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.up IS '线路行车方向 上行为0 下行为1'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.levels IS '站级序号'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.exchange_type IS '换乘类型'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.metric_month IS '指标月份'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.metric_value IS '指标'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.line_no IS '五位线路编码'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.level_name IS '站级名称'; +COMMENT ON COLUMN tbl_prd_station_freq_trans_month.id IS '主键ID'; +COMMENT ON TABLE tbl_prd_station_freq_trans_month IS '统计时间段内的站点常乘客换乘刷卡量'; + +-- ---------------------------- +-- Table structure for tbl_prd_sync_record +-- ---------------------------- +DROP TABLE IF EXISTS tbl_prd_sync_record; +CREATE TABLE tbl_prd_sync_record ( + id int8 NOT NULL AUTO_INCREMENT , + path varchar(100) NOT NULL, + table_name varchar(100) NOT NULL, + count int8 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + txn_date date NOT NULL, + data_status varchar(2) NOT NULL DEFAULT '00' +) +; +COMMENT ON COLUMN tbl_prd_sync_record.id IS '主键ID'; +COMMENT ON COLUMN tbl_prd_sync_record.path IS '相对路径-包含文件名'; +COMMENT ON COLUMN tbl_prd_sync_record.table_name IS 'hive表名'; +COMMENT ON COLUMN tbl_prd_sync_record.count IS '文件总记录数'; +COMMENT ON COLUMN tbl_prd_sync_record.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_prd_sync_record.txn_date IS '文件日期'; +COMMENT ON COLUMN tbl_prd_sync_record.data_status IS '数据状态'; + +-- ---------------------------- +-- Table structure for tbl_public_files +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_files; +CREATE TABLE tbl_public_files ( + file_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + uuid varchar(32) NOT NULL, + file_name varchar(500) NOT NULL, + file_extension varchar(50) NOT NULL, + file_size varchar(10) , + file_category_path varchar(200) , + file_type varchar(50) NOT NULL, + file_source_type varchar(20) NOT NULL, + sys_type varchar(20) NOT NULL, + remarks varchar(1000) , + file_busi_id varchar(100) DEFAULT 0, + file_busi_id2 varchar(100) , + file_busi_id3 varchar(100) , + upload_size varchar(20) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_public_files.file_id IS '【文件主键id】'; +COMMENT ON COLUMN tbl_public_files.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_public_files.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_public_files.uuid IS '【UUID】'; +COMMENT ON COLUMN tbl_public_files.file_name IS '【文件名称】'; +COMMENT ON COLUMN tbl_public_files.file_extension IS '【文件后缀名】'; +COMMENT ON COLUMN tbl_public_files.file_size IS '【文件大小】'; +COMMENT ON COLUMN tbl_public_files.file_category_path IS '【文件分类路径】'; +COMMENT ON COLUMN tbl_public_files.file_type IS '【文件类型】'; +COMMENT ON COLUMN tbl_public_files.file_source_type IS '【文件来源】'; +COMMENT ON COLUMN tbl_public_files.sys_type IS '【系统类型】'; +COMMENT ON COLUMN tbl_public_files.remarks IS '【文件备注】'; +COMMENT ON COLUMN tbl_public_files.file_busi_id IS '【关联业务ID】'; +COMMENT ON COLUMN tbl_public_files.file_busi_id2 IS '【关联业务ID2】'; +COMMENT ON COLUMN tbl_public_files.file_busi_id3 IS '【关联业务ID3】'; +COMMENT ON COLUMN tbl_public_files.upload_size IS '【已上传大小】如果要续传的话,那么记录上次中断的位置'; +COMMENT ON COLUMN tbl_public_files.data_status IS '【数据状态】上传时可先处理成98临时,方便清理无用文件'; +COMMENT ON COLUMN tbl_public_files.create_by IS '【创建用户ID】'; +COMMENT ON COLUMN tbl_public_files.create_by_name IS '【创建用户】'; +COMMENT ON COLUMN tbl_public_files.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_files.update_by IS '【更新用户ID】'; +COMMENT ON COLUMN tbl_public_files.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_files.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_files IS '【系统文件表】'; + +-- ---------------------------- +-- Table structure for tbl_public_files_progress +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_files_progress; +CREATE TABLE tbl_public_files_progress ( + file_progress_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + file_id int8 NOT NULL, + uuid varchar(32) NOT NULL, + upload_size varchar(20) , + data_status varchar(2) NOT NULL, + create_by varchar(32) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(32) NOT NULL, + update_by_name varchar(100) NOT NULL, + update_time timestamp(0) NOT NULL +) +; +COMMENT ON COLUMN tbl_public_files_progress.file_progress_id IS '【进度主键id】'; +COMMENT ON COLUMN tbl_public_files_progress.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_public_files_progress.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_public_files_progress.file_id IS '【文件主键id】'; +COMMENT ON COLUMN tbl_public_files_progress.uuid IS '【UUID】'; +COMMENT ON COLUMN tbl_public_files_progress.upload_size IS '【已上传大小】如果要续传的话,那么记录上次中断的位置'; +COMMENT ON COLUMN tbl_public_files_progress.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_public_files_progress.create_by IS '【创建用户ID】'; +COMMENT ON COLUMN tbl_public_files_progress.create_by_name IS '【创建用户】'; +COMMENT ON COLUMN tbl_public_files_progress.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_files_progress.update_by IS '【更新用户ID】'; +COMMENT ON COLUMN tbl_public_files_progress.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_files_progress.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_files_progress IS '【文件传输进度表】'; + +-- ---------------------------- +-- Table structure for tbl_public_msg_template +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_msg_template; +CREATE TABLE tbl_public_msg_template ( + template_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + msg_desc varchar(200) , + template_code varchar(100) NOT NULL, + msg_title varchar(200) NOT NULL, + msg_text text NOT NULL, + msg_type varchar(2) NOT NULL, + show_type varchar(2) NOT NULL, + template_type varchar(20) NOT NULL, + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_public_msg_template.template_id IS '【模板主键id】'; +COMMENT ON COLUMN tbl_public_msg_template.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_public_msg_template.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_public_msg_template.template_code IS '【手机号码】'; +COMMENT ON COLUMN tbl_public_msg_template.msg_title IS '【消息标题】'; +COMMENT ON COLUMN tbl_public_msg_template.msg_text IS '【消息内容】'; +COMMENT ON COLUMN tbl_public_msg_template.msg_type IS '【消息场景】'; +COMMENT ON COLUMN tbl_public_msg_template.show_type IS '【内容形式】'; +COMMENT ON COLUMN tbl_public_msg_template.template_type IS '【模板类型】'; +COMMENT ON COLUMN tbl_public_msg_template.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_public_msg_template.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_public_msg_template.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_public_msg_template.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_msg_template.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_public_msg_template.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_msg_template.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_msg_template IS '【消息模板表】'; + +-- ---------------------------- +-- Table structure for tbl_public_phone_msg_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_public_phone_msg_log; +CREATE TABLE tbl_public_phone_msg_log ( + msg_id int8 NOT NULL AUTO_INCREMENT , + phone_number varchar(300) NOT NULL, + msg_title varchar(200) , + msg_text text NOT NULL, + msg_type varchar(2) NOT NULL, + send_status varchar(1) NOT NULL, + user_id varchar(64) , + nike_name varchar(100) , + result_error varchar(2500) , + sys_type varchar(20) , + data_status varchar(2) NOT NULL, + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(0) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_id IS '【主键id】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.phone_number IS '【手机号码】某场景可能有多个,但限制20个'; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_title IS '【消息标题】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_text IS '【消息内容】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.msg_type IS '【消息类型】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.send_status IS '【发送状态】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.user_id IS '【接收用户id】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.nike_name IS '【接收用户姓名】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.result_error IS '【错误描述】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.sys_type IS '【系统类型】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_public_phone_msg_log.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_public_phone_msg_log IS '【短信记录表】'; + +-- ---------------------------- +-- Table structure for tbl_qa_centime_delay +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_centime_delay; +CREATE TABLE tbl_qa_centime_delay ( + id int8 NOT NULL AUTO_INCREMENT , + time_range varchar(20) NOT NULL, + delay_count int4 NOT NULL, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_centime_delay.id IS '主键'; +COMMENT ON COLUMN tbl_qa_centime_delay.time_range IS '时间范围'; +COMMENT ON COLUMN tbl_qa_centime_delay.delay_count IS '延迟数量'; +COMMENT ON COLUMN tbl_qa_centime_delay.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_centime_delay.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_centime_delay IS '延迟上送比率'; + +-- ---------------------------- +-- Table structure for tbl_qa_pos_match_rate +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_pos_match_rate; +CREATE TABLE tbl_qa_pos_match_rate ( + id int8 NOT NULL AUTO_INCREMENT , + tran_num int4 NOT NULL, + match_num int4 NOT NULL, + match_rate float8, + txn_date date NOT NULL, + create_time timestamp(6) DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_pos_match_rate.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.tran_num IS '交易数量'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.match_num IS '匹配数量'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.match_rate IS '匹配率'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_pos_match_rate.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_pos_match_rate IS 'Pos匹配率'; + +-- ---------------------------- +-- Table structure for tbl_qa_route_daily_count +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_route_daily_count; +CREATE TABLE tbl_qa_route_daily_count ( + id int8 NOT NULL AUTO_INCREMENT , + company_name varchar(50) NOT NULL, + route_count int4 NOT NULL, + txn_date date NOT NULL, + company_code varchar(20) NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_route_daily_count.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_route_daily_count.company_name IS '营运公司名称'; +COMMENT ON COLUMN tbl_qa_route_daily_count.route_count IS '线路数量'; +COMMENT ON COLUMN tbl_qa_route_daily_count.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_route_daily_count.company_code IS '运营公司编码'; +COMMENT ON COLUMN tbl_qa_route_daily_count.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_route_daily_count IS '日营运线路条数'; + +-- ---------------------------- +-- Table structure for tbl_qa_route_miss +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_route_miss; +CREATE TABLE tbl_qa_route_miss ( + id int8 NOT NULL AUTO_INCREMENT , + miss_rate float8, + txn_date date NOT NULL, + route_count int4 NOT NULL, + bus_stop_count int4 NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_route_miss.id IS '主键Id'; +COMMENT ON COLUMN tbl_qa_route_miss.miss_rate IS '缺失率'; +COMMENT ON COLUMN tbl_qa_route_miss.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_route_miss.route_count IS '电子路单数量班次'; +COMMENT ON COLUMN tbl_qa_route_miss.bus_stop_count IS '调离站班次数量'; +COMMENT ON COLUMN tbl_qa_route_miss.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_route_miss IS '班次缺失率'; + +-- ---------------------------- +-- Table structure for tbl_qa_route_turnover_time +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_route_turnover_time; +CREATE TABLE tbl_qa_route_turnover_time ( + id int8 NOT NULL AUTO_INCREMENT , + line_code varchar(10) NOT NULL, + line_name varchar(20) NOT NULL, + turnover_time float8 NOT NULL, + hlow_peak_name varchar(20) NOT NULL, + way_bill_type varchar(20) NOT NULL, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_route_turnover_time.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.line_code IS '线路编码'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.turnover_time IS '平均周转时间'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.hlow_peak_name IS '早晚高峰名称'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.way_bill_type IS '路单类型'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_route_turnover_time.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_route_turnover_time IS '班次周转时间'; + +-- ---------------------------- +-- Table structure for tbl_qa_station_miss +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_station_miss; +CREATE TABLE tbl_qa_station_miss ( + id int8 NOT NULL AUTO_INCREMENT , + line_code varchar(10) NOT NULL, + line_name varchar(20) NOT NULL, + license_plate varchar(20) , + driver_code varchar(20) , + start_time timestamp(6) NOT NULL, + arrival_time timestamp(6) NOT NULL, + start_station varchar(50) , + end_station varchar(50) , + up varchar(20) NOT NULL, + way_bill_type varchar(20) NOT NULL, + start_station_levels int4, + end_station_levels int4, + level_num int4, + bus_stop_num int4, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now(), + miss_rate float8 +) +; +COMMENT ON COLUMN tbl_qa_station_miss.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_station_miss.line_code IS '线路编码'; +COMMENT ON COLUMN tbl_qa_station_miss.line_name IS '线路名称'; +COMMENT ON COLUMN tbl_qa_station_miss.license_plate IS '车辆牌照'; +COMMENT ON COLUMN tbl_qa_station_miss.driver_code IS '驾驶员工号'; +COMMENT ON COLUMN tbl_qa_station_miss.start_time IS '发车时间'; +COMMENT ON COLUMN tbl_qa_station_miss.arrival_time IS '到达时间'; +COMMENT ON COLUMN tbl_qa_station_miss.start_station IS '起点'; +COMMENT ON COLUMN tbl_qa_station_miss.end_station IS '终点'; +COMMENT ON COLUMN tbl_qa_station_miss.up IS '上下行'; +COMMENT ON COLUMN tbl_qa_station_miss.way_bill_type IS '路单类型'; +COMMENT ON COLUMN tbl_qa_station_miss.start_station_levels IS '起点站级'; +COMMENT ON COLUMN tbl_qa_station_miss.end_station_levels IS '终点站级'; +COMMENT ON COLUMN tbl_qa_station_miss.level_num IS '班次站点数'; +COMMENT ON COLUMN tbl_qa_station_miss.bus_stop_num IS '车辆到离站数'; +COMMENT ON COLUMN tbl_qa_station_miss.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_station_miss.create_time IS '创建时间'; +COMMENT ON COLUMN tbl_qa_station_miss.miss_rate IS '缺失率'; +COMMENT ON TABLE tbl_qa_station_miss IS '站点缺失率'; + +-- ---------------------------- +-- Table structure for tbl_qa_vehicle_daily_count +-- ---------------------------- +DROP TABLE IF EXISTS tbl_qa_vehicle_daily_count; +CREATE TABLE tbl_qa_vehicle_daily_count ( + id int8 NOT NULL AUTO_INCREMENT , + company_code varchar(10) NOT NULL, + company_name varchar(20) NOT NULL, + vehicle_count int4 NOT NULL, + txn_date date NOT NULL, + create_time timestamp(6) NOT NULL DEFAULT now() +) +; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.id IS '主键ID'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.company_code IS '公司编码'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.company_name IS '公司名称'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.vehicle_count IS '车辆数'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.txn_date IS '日期'; +COMMENT ON COLUMN tbl_qa_vehicle_daily_count.create_time IS '创建时间'; +COMMENT ON TABLE tbl_qa_vehicle_daily_count IS '日营运车辆数'; + +-- ---------------------------- +-- Table structure for tbl_sftp_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sftp_user; +CREATE TABLE tbl_sftp_user ( + sftp_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + sftp_username varchar(100) NOT NULL, + sftp_password varchar(100) NOT NULL, + contact_name varchar(100) , + contact_info varchar(100) , + sftp_perms varchar(50) , + sftp_path varchar(150) , + remarks varchar(500) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL DEFAULT '00', + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(6) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(6), + rsv1 varchar(100) , + rsv2 varchar(100) , + rsv3 varchar(100) +) +; +COMMENT ON COLUMN tbl_sftp_user.sftp_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sftp_user.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sftp_user.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_username IS '【账户名】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_password IS '【密码】'; +COMMENT ON COLUMN tbl_sftp_user.contact_name IS '【联系人】'; +COMMENT ON COLUMN tbl_sftp_user.contact_info IS '【联系方式】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_perms IS '【权限字符】'; +COMMENT ON COLUMN tbl_sftp_user.sftp_path IS '【分配目录】'; +COMMENT ON COLUMN tbl_sftp_user.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_sftp_user.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_sftp_user.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sftp_user.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_sftp_user.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sftp_user.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sftp_user.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_sftp_user.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sftp_user.rsv1 IS '【备用字段1】'; +COMMENT ON COLUMN tbl_sftp_user.rsv2 IS '【备用字段2】'; +COMMENT ON COLUMN tbl_sftp_user.rsv3 IS '【备用字段3】'; +COMMENT ON TABLE tbl_sftp_user IS '【SFTP用户表】'; + +-- ---------------------------- +-- Table structure for tbl_sftp_user_file +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sftp_user_file; +CREATE TABLE tbl_sftp_user_file ( + sftp_file_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + sftp_id int8 NOT NULL, + file_name varchar(500) NOT NULL, + file_path varchar(200) , + file_size varchar(20) , + remarks varchar(500) , + bus_status varchar(1) , + data_status varchar(2) NOT NULL DEFAULT '00', + create_by varchar(64) NOT NULL, + create_by_name varchar(100) NOT NULL, + create_time timestamp(6) NOT NULL, + update_by varchar(64) , + update_by_name varchar(100) , + update_time timestamp(6), + sftp_username varchar(100) +) +; +COMMENT ON COLUMN tbl_sftp_user_file.sftp_file_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sftp_user_file.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sftp_user_file.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sftp_user_file.sftp_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sftp_user_file.file_name IS '【文件名】'; +COMMENT ON COLUMN tbl_sftp_user_file.file_path IS '【文件路径】'; +COMMENT ON COLUMN tbl_sftp_user_file.file_size IS '【文件大小】'; +COMMENT ON COLUMN tbl_sftp_user_file.bus_status IS '【业务状态】'; +COMMENT ON COLUMN tbl_sftp_user_file.data_status IS '【数据状态】'; +COMMENT ON COLUMN tbl_sftp_user_file.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sftp_user_file.create_by_name IS '【 创建用户】'; +COMMENT ON COLUMN tbl_sftp_user_file.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sftp_user_file.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sftp_user_file.update_by_name IS '【更新用户】'; +COMMENT ON COLUMN tbl_sftp_user_file.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sftp_user_file.sftp_username IS '【账户名】'; +COMMENT ON TABLE tbl_sftp_user_file IS '【SFTP用户文件表】'; + +-- ---------------------------- +-- Table structure for tbl_source_data_quality +-- ---------------------------- +DROP TABLE IF EXISTS tbl_source_data_quality; +CREATE TABLE tbl_source_data_quality ( + source_data_table_name varchar(100) , + source_data_table_code varchar(100) , + source_data_quality_name varchar(500) , + source_data_quality_define varchar(500) , + source_data_quality_desc varchar(500) , + source_data_quality_value numeric(18,3), + source_data_quality_date date +) +; +COMMENT ON COLUMN tbl_source_data_quality.source_data_table_name IS '元数据表名'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_table_code IS '元数据表code'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_name IS '指标名称'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_define IS '指标定义'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_desc IS '指标说明'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_value IS '指标数值'; +COMMENT ON COLUMN tbl_source_data_quality.source_data_quality_date IS '数据日期'; + +-- ---------------------------- +-- Table structure for tbl_sys_config +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_config; +CREATE TABLE tbl_sys_config ( + config_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + config_name varchar(100) , + config_key varchar(100) , + config_value varchar(500) , + config_type char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_config.config_id IS '【参数主键】'; +COMMENT ON COLUMN tbl_sys_config.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_config.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_config.config_name IS '【参数名称】'; +COMMENT ON COLUMN tbl_sys_config.config_key IS '【参数键名】'; +COMMENT ON COLUMN tbl_sys_config.config_value IS '【参数键值】'; +COMMENT ON COLUMN tbl_sys_config.config_type IS '【系统内置】Y是 N否'; +COMMENT ON COLUMN tbl_sys_config.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_config.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_config.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_config.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_config.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_config IS '【参数配置表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_dept +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_dept; +CREATE TABLE tbl_sys_dept ( + dept_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + parent_id int8, + ancestors varchar(50) , + dept_name varchar(30) NOT NULL, + order_num int4, + leader varchar(20) , + phone varchar(11) , + email varchar(50) , + status char(1) , + del_flag char(1) DEFAULT '0', + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_sys_dept.dept_id IS '【部门id】'; +COMMENT ON COLUMN tbl_sys_dept.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_dept.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_dept.parent_id IS '【父部门id】'; +COMMENT ON COLUMN tbl_sys_dept.ancestors IS '【祖级列表】'; +COMMENT ON COLUMN tbl_sys_dept.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_sys_dept.order_num IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_dept.leader IS '【负责人】'; +COMMENT ON COLUMN tbl_sys_dept.phone IS '【联系电话】'; +COMMENT ON COLUMN tbl_sys_dept.email IS '【邮箱】'; +COMMENT ON COLUMN tbl_sys_dept.status IS '【部门状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_dept.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_sys_dept.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_dept.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_dept.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_dept.update_time IS '【更新时间】'; +COMMENT ON TABLE tbl_sys_dept IS '【部门表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_dict_data +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_dict_data; +CREATE TABLE tbl_sys_dict_data ( + dict_code int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dict_sort int4, + dict_label varchar(100) , + dict_value varchar(100) , + dict_type varchar(100) NOT NULL, + css_class varchar(100) , + list_class varchar(100) , + is_default char(1) , + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_dict_data.dict_code IS '【字典编码】'; +COMMENT ON COLUMN tbl_sys_dict_data.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_dict_data.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_sort IS '【字典排序】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_label IS '【字典标签】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_value IS '【字典键值】'; +COMMENT ON COLUMN tbl_sys_dict_data.dict_type IS '【字典类型】'; +COMMENT ON COLUMN tbl_sys_dict_data.css_class IS '【样式属性】其他样式扩展'; +COMMENT ON COLUMN tbl_sys_dict_data.list_class IS '【表格回显样式】'; +COMMENT ON COLUMN tbl_sys_dict_data.is_default IS '【是否默认】Y是 N否'; +COMMENT ON COLUMN tbl_sys_dict_data.status IS '【状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_dict_data.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_dict_data.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_dict_data.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_dict_data.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_dict_data.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_dict_data IS '【字典数据表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_dict_type +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_dict_type; +CREATE TABLE tbl_sys_dict_type ( + dict_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dict_name varchar(100) , + dict_type varchar(100) NOT NULL, + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_dict_type.dict_id IS '【字典主键】'; +COMMENT ON COLUMN tbl_sys_dict_type.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_dict_type.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_dict_type.dict_name IS '【字典名称】'; +COMMENT ON COLUMN tbl_sys_dict_type.dict_type IS '【字典类型】'; +COMMENT ON COLUMN tbl_sys_dict_type.status IS '【状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_dict_type.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_dict_type.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_dict_type.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_dict_type.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_dict_type.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_dict_type IS '【字典类型表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_job +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_job; +CREATE TABLE tbl_sys_job ( + job_id int8 NOT NULL AUTO_INCREMENT , + job_name varchar(64) NOT NULL, + job_group varchar(64) NOT NULL, + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL, + invoke_target varchar(500) NOT NULL, + cron_expression varchar(255) , + misfire_policy varchar(20) , + concurrent char(1) , + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) , + parent_id int8, + level varchar(200) +) +; +COMMENT ON COLUMN tbl_sys_job.job_id IS '【任务ID】'; +COMMENT ON COLUMN tbl_sys_job.job_name IS '【任务名称】'; +COMMENT ON COLUMN tbl_sys_job.job_group IS '【任务组名】'; +COMMENT ON COLUMN tbl_sys_job.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_job.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_job.invoke_target IS '【调用目标字符串】'; +COMMENT ON COLUMN tbl_sys_job.cron_expression IS '【cron执行表达式】'; +COMMENT ON COLUMN tbl_sys_job.misfire_policy IS '【计划执行错误策略】1立即执行 2执行一次 3放弃执行'; +COMMENT ON COLUMN tbl_sys_job.concurrent IS '【是否并发执行】0允许 1禁止'; +COMMENT ON COLUMN tbl_sys_job.status IS '【状态】0正常 1暂停'; +COMMENT ON COLUMN tbl_sys_job.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_job.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_job.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_job.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_job.remark IS '【备注信息】'; +COMMENT ON COLUMN tbl_sys_job.parent_id IS '【父ID】'; +COMMENT ON COLUMN tbl_sys_job.level IS '【层级】'; +COMMENT ON TABLE tbl_sys_job IS '【定时任务调度表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_job_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_job_log; +CREATE TABLE tbl_sys_job_log ( + job_log_id int8 NOT NULL AUTO_INCREMENT , + job_name varchar(64) NOT NULL, + job_group varchar(64) NOT NULL, + invoke_target varchar(500) NOT NULL, + job_message varchar(500) , + status char(1) , + exception_info varchar(2000) , + create_time timestamp(6) +) +; +COMMENT ON COLUMN tbl_sys_job_log.job_log_id IS '【任务日志ID】'; +COMMENT ON COLUMN tbl_sys_job_log.job_name IS '【任务名称】'; +COMMENT ON COLUMN tbl_sys_job_log.job_group IS '【任务组名】'; +COMMENT ON COLUMN tbl_sys_job_log.invoke_target IS '【调用目标字符串】'; +COMMENT ON COLUMN tbl_sys_job_log.job_message IS '【日志信息】'; +COMMENT ON COLUMN tbl_sys_job_log.status IS '【执行状态】0正常 1失败'; +COMMENT ON COLUMN tbl_sys_job_log.exception_info IS '【异常信息】'; +COMMENT ON COLUMN tbl_sys_job_log.create_time IS '【创建时间】'; +COMMENT ON TABLE tbl_sys_job_log IS '【定时任务调度日志表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2024; +CREATE TABLE tbl_sys_logininfor_2024 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2025; +CREATE TABLE tbl_sys_logininfor_2025 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2026; +CREATE TABLE tbl_sys_logininfor_2026 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2027; +CREATE TABLE tbl_sys_logininfor_2027 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2028; +CREATE TABLE tbl_sys_logininfor_2028 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_2029; +CREATE TABLE tbl_sys_logininfor_2029 ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor_default +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor_default; +CREATE TABLE tbl_sys_logininfor_default ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_menu +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_menu; +CREATE TABLE tbl_sys_menu ( + menu_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + menu_name varchar(50) NOT NULL, + parent_id int8 DEFAULT 0, + order_num int4, + path varchar(200) , + component varchar(255) , + query_params varchar(255) , + is_frame char(1) , + is_cache char(1) , + url_path varchar(255) , + url_method varchar(20) , + url_opr_type varchar(20) , + url_check_flag char(1) , + menu_type char(1) , + visible char(1) , + status char(1) , + perms varchar(100) , + icon varchar(100) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_menu.menu_id IS '【菜单ID】'; +COMMENT ON COLUMN tbl_sys_menu.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_menu.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_menu.menu_name IS '【菜单名称】'; +COMMENT ON COLUMN tbl_sys_menu.parent_id IS '【父菜单ID】'; +COMMENT ON COLUMN tbl_sys_menu.order_num IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_menu.path IS '【路由地址】'; +COMMENT ON COLUMN tbl_sys_menu.component IS '【组件路径】'; +COMMENT ON COLUMN tbl_sys_menu.query_params IS '【路由参数】'; +COMMENT ON COLUMN tbl_sys_menu.is_frame IS '【是否为外链】0是 1否'; +COMMENT ON COLUMN tbl_sys_menu.is_cache IS '【是否缓存】0缓存 1不缓存'; +COMMENT ON COLUMN tbl_sys_menu.url_path IS '【url路径】'; +COMMENT ON COLUMN tbl_sys_menu.url_method IS '【URL请求方式】由于restful风格同名,因此需要GET,POST等'; +COMMENT ON COLUMN tbl_sys_menu.url_opr_type IS '【url操作类型】为了更便捷分配同类型资源,query:查询 ,add:新增,edit:编辑。。。'; +COMMENT ON COLUMN tbl_sys_menu.url_check_flag IS '【url网关校验标志】为空或0则不校验;1校验;'; +COMMENT ON COLUMN tbl_sys_menu.menu_type IS '【菜单类型】M目录 C菜单 F按钮'; +COMMENT ON COLUMN tbl_sys_menu.visible IS '【菜单显示状态】0显示 1隐藏'; +COMMENT ON COLUMN tbl_sys_menu.status IS '【菜单状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_menu.perms IS '【权限标识】'; +COMMENT ON COLUMN tbl_sys_menu.icon IS '【菜单图标】'; +COMMENT ON COLUMN tbl_sys_menu.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_menu.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_menu.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_menu.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_menu.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_menu IS '【菜单权限表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_notice +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_notice; +CREATE TABLE tbl_sys_notice ( + notice_id int4 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + notice_title varchar(50) NOT NULL, + notice_type char(1) NOT NULL, + notice_content text , + status char(1) , + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(255) +) +; +COMMENT ON COLUMN tbl_sys_notice.notice_id IS '【公告ID】'; +COMMENT ON COLUMN tbl_sys_notice.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_notice.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_notice.notice_title IS '【公告标题】'; +COMMENT ON COLUMN tbl_sys_notice.notice_type IS '【公告类型】1通知 2公告'; +COMMENT ON COLUMN tbl_sys_notice.notice_content IS '【公告内容】'; +COMMENT ON COLUMN tbl_sys_notice.status IS '【公告状态】0正常 1关闭'; +COMMENT ON COLUMN tbl_sys_notice.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_notice.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_notice.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_notice.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_notice.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_notice IS '【通知公告表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2024 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2024; +CREATE TABLE tbl_sys_oper_log_2024 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2025 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2025; +CREATE TABLE tbl_sys_oper_log_2025 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2026 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2026; +CREATE TABLE tbl_sys_oper_log_2026 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2027 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2027; +CREATE TABLE tbl_sys_oper_log_2027 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2028 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2028; +CREATE TABLE tbl_sys_oper_log_2028 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_2029 +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_2029; +CREATE TABLE tbl_sys_oper_log_2029 ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log_default +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log_default; +CREATE TABLE tbl_sys_oper_log_default ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_post +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_post; +CREATE TABLE tbl_sys_post ( + post_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + post_code varchar(64) NOT NULL, + post_name varchar(50) NOT NULL, + post_sort int4 NOT NULL, + status char(1) NOT NULL, + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_post.post_id IS '【岗位ID】'; +COMMENT ON COLUMN tbl_sys_post.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_post.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_post.post_code IS '【岗位编码】'; +COMMENT ON COLUMN tbl_sys_post.post_name IS '【岗位名称】'; +COMMENT ON COLUMN tbl_sys_post.post_sort IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_post.status IS '【状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_post.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_post.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_post.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_post.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_post.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_post IS '【岗位信息表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_role +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_role; +CREATE TABLE tbl_sys_role ( + role_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + role_name varchar(30) NOT NULL, + role_key varchar(100) NOT NULL, + role_sort int4 NOT NULL DEFAULT 0, + data_scope varchar(1) , + menu_check_strictly varchar(1) , + dept_check_strictly varchar(1) , + status varchar(1) NOT NULL, + del_flag varchar(1) DEFAULT '0', + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_role.role_id IS '【角色ID】'; +COMMENT ON COLUMN tbl_sys_role.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_role.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_role.role_name IS '【角色名称】'; +COMMENT ON COLUMN tbl_sys_role.role_key IS '【角色权限字符串】'; +COMMENT ON COLUMN tbl_sys_role.role_sort IS '【显示顺序】'; +COMMENT ON COLUMN tbl_sys_role.data_scope IS '【数据范围】1:全部数据权限 2:自定数据权限 3:本部门数据权限 4:本部门及以下数据权限'; +COMMENT ON COLUMN tbl_sys_role.menu_check_strictly IS '【菜单树选择项是否关联显示】'; +COMMENT ON COLUMN tbl_sys_role.dept_check_strictly IS '【部门树选择项是否关联显示】'; +COMMENT ON COLUMN tbl_sys_role.status IS '【角色状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_role.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_sys_role.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_role.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_role.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_role.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_role.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_role IS '【角色信息表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_role_dept +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_role_dept; +CREATE TABLE tbl_sys_role_dept ( + role_id int8 NOT NULL, + dept_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_role_dept.role_id IS '【角色ID】'; +COMMENT ON COLUMN tbl_sys_role_dept.dept_id IS '【部门ID】'; +COMMENT ON TABLE tbl_sys_role_dept IS '【角色和部门关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_role_menu +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_role_menu; +CREATE TABLE tbl_sys_role_menu ( + role_id int8 NOT NULL, + menu_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_role_menu.role_id IS '【角色ID】'; +COMMENT ON COLUMN tbl_sys_role_menu.menu_id IS '【菜单ID】'; +COMMENT ON TABLE tbl_sys_role_menu IS '【角色和菜单关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user; +CREATE TABLE tbl_sys_user ( + user_id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + dept_id int8, + user_name varchar(30) NOT NULL, + nick_name varchar(30) NOT NULL, + user_type varchar(2) DEFAULT '00', + email varchar(50) , + phonenumber varchar(11) , + sex char(1) , + avatar varchar(100) , + password varchar(100) , + status char(1) , + del_flag char(1) DEFAULT '0', + login_ip varchar(128) , + login_date timestamp(6), + is_locked char(1) , + login_error_count int4, + last_login_error_time timestamp(6), + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; +COMMENT ON COLUMN tbl_sys_user.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sys_user.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_user.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_user.dept_id IS '【部门ID】'; +COMMENT ON COLUMN tbl_sys_user.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_sys_user.nick_name IS '【用户昵称】'; +COMMENT ON COLUMN tbl_sys_user.user_type IS '【用户类型】00系统用户'; +COMMENT ON COLUMN tbl_sys_user.email IS '【用户邮箱】'; +COMMENT ON COLUMN tbl_sys_user.phonenumber IS '【手机号码】'; +COMMENT ON COLUMN tbl_sys_user.sex IS '【用户性别】0男 1女 2未知'; +COMMENT ON COLUMN tbl_sys_user.avatar IS '【头像地址】'; +COMMENT ON COLUMN tbl_sys_user.password IS '【密码】'; +COMMENT ON COLUMN tbl_sys_user.status IS '【帐号状态】0正常 1停用'; +COMMENT ON COLUMN tbl_sys_user.del_flag IS '【删除标志】0代表存在 2代表删除'; +COMMENT ON COLUMN tbl_sys_user.login_ip IS '【最后登录IP】'; +COMMENT ON COLUMN tbl_sys_user.login_date IS '【最后登录时间】'; +COMMENT ON COLUMN tbl_sys_user.is_locked IS '【锁定状态】'; +COMMENT ON COLUMN tbl_sys_user.login_error_count IS '【登陆错误次数】'; +COMMENT ON COLUMN tbl_sys_user.last_login_error_time IS '【登陆错误时间】'; +COMMENT ON COLUMN tbl_sys_user.create_by IS '【创建者】'; +COMMENT ON COLUMN tbl_sys_user.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_user.update_by IS '【更新者】'; +COMMENT ON COLUMN tbl_sys_user.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_user.remark IS '【备注】'; +COMMENT ON TABLE tbl_sys_user IS '【用户信息表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user_post +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user_post; +CREATE TABLE tbl_sys_user_post ( + user_id int8 NOT NULL, + post_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_user_post.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sys_user_post.post_id IS '【岗位ID】'; +COMMENT ON TABLE tbl_sys_user_post IS '【用户与岗位关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user_role +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user_role; +CREATE TABLE tbl_sys_user_role ( + user_id int8 NOT NULL, + role_id int8 NOT NULL +) +; +COMMENT ON COLUMN tbl_sys_user_role.user_id IS '【用户ID】'; +COMMENT ON COLUMN tbl_sys_user_role.role_id IS '【角色ID】'; +COMMENT ON TABLE tbl_sys_user_role IS '【用户和角色关联表】'; + +-- ---------------------------- +-- Table structure for tbl_sys_user_zltest +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_user_zltest; +CREATE TABLE tbl_sys_user_zltest ( + user_id int8, + version_num int4, + rec_token varchar(10) , + dept_id int8, + user_name varchar(30) , + nick_name varchar(30) , + user_type varchar(2) , + email varchar(50) , + phonenumber varchar(11) , + sex char(1) , + avatar varchar(100) , + password varchar(100) , + status char(1) , + del_flag char(1) , + login_ip varchar(128) , + login_date timestamp(6), + is_locked char(1) , + login_error_count int4, + last_login_error_time timestamp(6), + create_by varchar(64) , + create_time timestamp(0), + update_by varchar(64) , + update_time timestamp(0), + remark varchar(500) +) +; + +-- ---------------------------- +-- Table structure for tbl_sys_warning_contact +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_warning_contact; +CREATE TABLE tbl_sys_warning_contact ( + id int8 NOT NULL AUTO_INCREMENT , + version_num int4 NOT NULL DEFAULT 0, + rec_token varchar(10) NOT NULL DEFAULT '1', + warning_type varchar(32) NOT NULL, + contact_type varchar(32) NOT NULL, + contact varchar(32) NOT NULL, + status varchar(32) NOT NULL DEFAULT '00', + create_by varchar(32) , + create_time timestamp(0), + update_by varchar(32) , + update_time timestamp(0), + del_flag char(1) DEFAULT '0' +) +; +COMMENT ON COLUMN tbl_sys_warning_contact.id IS '【主键id】'; +COMMENT ON COLUMN tbl_sys_warning_contact.version_num IS '【版本号】'; +COMMENT ON COLUMN tbl_sys_warning_contact.rec_token IS '【随机码】'; +COMMENT ON COLUMN tbl_sys_warning_contact.warning_type IS '【告警场景】'; +COMMENT ON COLUMN tbl_sys_warning_contact.contact_type IS '【类型】手机号:01 邮箱:02'; +COMMENT ON COLUMN tbl_sys_warning_contact.contact IS '【联系方式】'; +COMMENT ON COLUMN tbl_sys_warning_contact.status IS '【状态】正常:00 停用:01 删除:03'; +COMMENT ON COLUMN tbl_sys_warning_contact.create_by IS '【创建人】'; +COMMENT ON COLUMN tbl_sys_warning_contact.create_time IS '【创建时间】'; +COMMENT ON COLUMN tbl_sys_warning_contact.update_by IS '【更新人】'; +COMMENT ON COLUMN tbl_sys_warning_contact.update_time IS '【更新时间】'; +COMMENT ON COLUMN tbl_sys_warning_contact.del_flag IS '【删除标志】'; +COMMENT ON TABLE tbl_sys_warning_contact IS '【告警联系方式表】'; + +-- ---------------------------- +-- Table structure for tbl_zltest +-- ---------------------------- +DROP TABLE IF EXISTS tbl_zltest; +CREATE TABLE tbl_zltest ( + test_id varchar +) +; + +-- ---------------------------- +-- Table structure for test_89 +-- ---------------------------- +DROP TABLE IF EXISTS test_89; +CREATE TABLE test_89 ( + api_id int8, + status char(1) , + create_by varchar(50) , + create_time timestamp(0), + create_dept varchar(50) , + update_by varchar(50) , + update_time timestamp(0), + remark varchar(1000) , + api_name varchar(255) , + api_version varchar(60) , + api_url varchar(255) , + req_method varchar(10) , + res_type varchar(10) , + deny varchar(2000) , + limit_json text , + config_json text , + req_json text , + res_json text , + version_num int4, + rec_token varchar(100) , + del_flag char(1) , + api_code varchar(50) , + api_type char(1) , + source_id int8 +) +; + +-- ---------------------------- +-- Table structure for tbl_portal_logininfor +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_logininfor; +CREATE TABLE tbl_portal_logininfor ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status char(1) , + msg varchar(2000) , + login_time timestamp(0) +); +COMMENT ON COLUMN tbl_portal_logininfor.info_id IS '【访问ID】'; +COMMENT ON COLUMN tbl_portal_logininfor.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_portal_logininfor.ipaddr IS '【登录IP地址】'; +COMMENT ON COLUMN tbl_portal_logininfor.login_location IS '【登录地点】'; +COMMENT ON COLUMN tbl_portal_logininfor.browser IS '【浏览器类型】'; +COMMENT ON COLUMN tbl_portal_logininfor.os IS '【操作系统】'; +COMMENT ON COLUMN tbl_portal_logininfor.status IS '【登录状态】0成功 1失败'; +COMMENT ON COLUMN tbl_portal_logininfor.msg IS '【提示消息】'; +COMMENT ON COLUMN tbl_portal_logininfor.login_time IS '【访问时间】'; +COMMENT ON TABLE tbl_portal_logininfor IS '【门户登录日志】'; + +-- ---------------------------- +-- Table structure for tbl_portal_oper_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_portal_oper_log; +CREATE TABLE tbl_portal_oper_log ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(100) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param varchar(2000) , + json_result varchar(2000) , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) +) +; +COMMENT ON COLUMN tbl_portal_oper_log.oper_id IS '【日志主键】'; +COMMENT ON COLUMN tbl_portal_oper_log.title IS '【模块标题】'; +COMMENT ON COLUMN tbl_portal_oper_log.business_type IS '【业务类型】0其它 1新增 2修改 3删除'; +COMMENT ON COLUMN tbl_portal_oper_log.method IS '【方法名称】'; +COMMENT ON COLUMN tbl_portal_oper_log.request_method IS '【请求方式】'; +COMMENT ON COLUMN tbl_portal_oper_log.operator_type IS '【操作类别】0其它 1后台用户 2手机端用户'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_name IS '【操作人员】'; +COMMENT ON COLUMN tbl_portal_oper_log.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_url IS '【请求URL】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_ip IS '【主机地址】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_location IS '【操作地点】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_param IS '【请求参数】'; +COMMENT ON COLUMN tbl_portal_oper_log.json_result IS '【返回参数】'; +COMMENT ON COLUMN tbl_portal_oper_log.status IS '【操作状态】0正常 1异常'; +COMMENT ON COLUMN tbl_portal_oper_log.error_msg IS '【错误消息】'; +COMMENT ON COLUMN tbl_portal_oper_log.oper_time IS '【操作时间】'; +COMMENT ON TABLE tbl_portal_oper_log IS '【门户操作日志】'; + +-- ---------------------------- +-- Table structure for tbl_sys_logininfor +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_logininfor; +CREATE TABLE tbl_sys_logininfor ( + info_id int8 NOT NULL AUTO_INCREMENT , + user_name varchar(50) , + ipaddr varchar(128) , + login_location varchar(255) , + browser varchar(50) , + os varchar(50) , + status varchar(1) , + msg varchar(2000) , + login_time timestamp(0) NOT NULL +); +COMMENT ON COLUMN tbl_sys_logininfor.info_id IS '【访问ID】'; +COMMENT ON COLUMN tbl_sys_logininfor.user_name IS '【用户账号】'; +COMMENT ON COLUMN tbl_sys_logininfor.ipaddr IS '【登录IP地址】'; +COMMENT ON COLUMN tbl_sys_logininfor.login_location IS '【登录地点】'; +COMMENT ON COLUMN tbl_sys_logininfor.browser IS '【浏览器类型】'; +COMMENT ON COLUMN tbl_sys_logininfor.os IS '【操作系统】'; +COMMENT ON COLUMN tbl_sys_logininfor.status IS '【登录状态】0成功 1失败'; +COMMENT ON COLUMN tbl_sys_logininfor.msg IS '【提示消息】'; +COMMENT ON COLUMN tbl_sys_logininfor.login_time IS '【访问时间】'; +COMMENT ON TABLE tbl_sys_logininfor IS '【系统访问记录】'; + +-- ---------------------------- +-- Table structure for tbl_sys_oper_log +-- ---------------------------- +DROP TABLE IF EXISTS tbl_sys_oper_log; +CREATE TABLE tbl_sys_oper_log ( + oper_id int8 NOT NULL AUTO_INCREMENT , + title varchar(50) NOT NULL, + business_type int4, + method varchar(300) , + request_method varchar(10) , + operator_type int4, + oper_name varchar(50) , + dept_name varchar(50) , + oper_url varchar(255) , + oper_ip varchar(128) , + oper_location varchar(255) , + oper_param text , + json_result text , + status int4, + error_msg varchar(2000) , + oper_time timestamp(0) NOT NULL +); +COMMENT ON COLUMN tbl_sys_oper_log.oper_id IS '【日志主键】'; +COMMENT ON COLUMN tbl_sys_oper_log.title IS '【模块标题】'; +COMMENT ON COLUMN tbl_sys_oper_log.business_type IS '【业务类型】0其它 1新增 2修改 3删除'; +COMMENT ON COLUMN tbl_sys_oper_log.method IS '【方法名称】'; +COMMENT ON COLUMN tbl_sys_oper_log.request_method IS '【请求方式】'; +COMMENT ON COLUMN tbl_sys_oper_log.operator_type IS '【操作类别】0其它 1后台用户 2手机端用户'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_name IS '【操作人员】'; +COMMENT ON COLUMN tbl_sys_oper_log.dept_name IS '【部门名称】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_url IS '【请求URL】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_ip IS '【主机地址】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_location IS '【操作地点】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_param IS '【请求参数】'; +COMMENT ON COLUMN tbl_sys_oper_log.json_result IS '【返回参数】'; +COMMENT ON COLUMN tbl_sys_oper_log.status IS '【操作状态】0正常 1异常'; +COMMENT ON COLUMN tbl_sys_oper_log.error_msg IS '【错误消息】'; +COMMENT ON COLUMN tbl_sys_oper_log.oper_time IS '【操作时间】'; +COMMENT ON TABLE tbl_sys_oper_log IS '【操作日志记录】'; + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- + +-- SELECT setval('demorange_int_seq', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('prd_line_station_trans_month', 9, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_asset_column', 33144, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_asset_table', 4304, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_asset_table_column', 55346, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_config', 1, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_institute', 4, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_institute_api_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_institute_auth', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_market_api', 149, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_market_api_log', 480, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_market_api_mask', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_authorize', 300, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_change_record', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_column', 269265, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_source', 58, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_source_conn', 21, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_metadata_table', 10289, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_quality_report', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_sql_console_export', 101, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_data_sql_log', 14700, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_info', 43, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_lib', 99, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_review', 31, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_apply_review_dtl', 16, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_config_hardware', 31, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_download_apply', 31, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_images', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_vpn', 5, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_docker_with_user_account', 56, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_gen_table', 34, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_gen_table_column', 414, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_lab_config_hardware', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_api_auth', 171, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_config', 164, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_gateway_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_org_statistics', 46, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_content', 55, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_logininfor', 352, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_oper_log', 99, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_user', 18, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_portal_user_msg', 61, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_metric_day', 135492453, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_metric_hour', 1747381, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_metric_month', 33049, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_metric_day', 145553, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_metric_hour', 9, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_metric_month', 127360, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_trans_day', 337065, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_trans_hour', 2572505, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_line_station_trans_month', 294933, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_route_metric_day', 1494935, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_metric_day', 156294, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_metric_month', 299393, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_trans_day', 756913, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_prd_station_freq_trans_month', 478054, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_files', 386, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_files_progress', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_msg_template', 39, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_public_phone_msg_log', 151, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_centime_delay', 39, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_pos_match_rate', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_route_daily_count', 15, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_route_miss', 3, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_route_turnover_time', 6456, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_station_miss', 260288, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_qa_vehicle_daily_count', 10, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sftp_user', 32, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sftp_user_file', 40, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sql_console_file', 115, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sql_data_apply', 223, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_config', 6, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_dept', 12, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_dict_data', 330, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_dict_type', 86, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_job', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_job_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_logininfor', 3797, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_menu', 3292, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_notice', 10, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_oper_log', 3828, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_post', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_role', 20, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_user', 100026, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_warning_contact', 18, true); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_sys_warning_log', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- SELECT setval('seq_test_t_t', 1, false); + +-- ---------------------------- +-- Alter sequences owned by +-- ---------------------------- +-- ALTER SEQUENCE tbl_prd_sync_record_id_seq +-- OWNED BY tbl_prd_sync_record.id; +-- SELECT setval('tbl_prd_sync_record_id_seq', 286, true); + +-- ---------------------------- +-- Primary Key structure for table gen_table +-- ---------------------------- +ALTER TABLE gen_table ADD CONSTRAINT gen_table_pkey PRIMARY KEY (table_id); + +-- ---------------------------- +-- Primary Key structure for table gen_table_column +-- ---------------------------- +ALTER TABLE gen_table_column ADD CONSTRAINT gen_table_column_pkey PRIMARY KEY (column_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_batch_table_mapping +-- ---------------------------- +ALTER TABLE tbl_batch_table_mapping ADD CONSTRAINT pk_tbl_batch_table_mapping PRIMARY KEY (task_no); + +-- ---------------------------- +-- Primary Key structure for table tbl_batch_task +-- ---------------------------- +ALTER TABLE tbl_batch_task ADD CONSTRAINT pk_tbl_batch_task PRIMARY KEY (task_no); + +-- ---------------------------- +-- Indexes structure for table tbl_data_api +-- ---------------------------- +CREATE INDEX index_dataApi_apiType ON tbl_data_api ( + api_type +); +CREATE UNIQUE INDEX index_dataApi_apicode ON tbl_data_api ( + api_code +); +CREATE INDEX index_dataApi_sourceId ON tbl_data_api ( + source_id +); +CREATE INDEX index_dataApi_status ON tbl_data_api ( + status +); +CREATE INDEX index_dataApi_url ON tbl_data_api ( + api_url +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_api +-- ---------------------------- +ALTER TABLE tbl_data_api ADD CONSTRAINT market_api_pkey PRIMARY KEY (api_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_api_log +-- ---------------------------- +CREATE INDEX idx_tbl_data_api_log_1 ON tbl_data_api_log ( + api_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_api_log +-- ---------------------------- +ALTER TABLE tbl_data_api_log ADD CONSTRAINT market_api_log_pkey PRIMARY KEY (api_log_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_asset_column +-- ---------------------------- +CREATE INDEX idx_tbl_data_asset_column_1 ON tbl_data_asset_column ( + column_name +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_asset_column +-- ---------------------------- +ALTER TABLE tbl_data_asset_column ADD CONSTRAINT tbl_data_asset_column_pkey PRIMARY KEY (asset_column_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_asset_table +-- ---------------------------- +CREATE INDEX idx_tbl_data_asset_table_1 ON tbl_data_asset_table ( + source_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_asset_table +-- ---------------------------- +ALTER TABLE tbl_data_asset_table ADD CONSTRAINT tbl_data_asset_table_pkey PRIMARY KEY (asset_table_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_asset_table_column +-- ---------------------------- +CREATE INDEX idx_tbl_data_asset_table_column_1 ON tbl_data_asset_table_column ( + asset_table_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_asset_table_column +-- ---------------------------- +ALTER TABLE tbl_data_asset_table_column ADD CONSTRAINT tbl_data_asset_table_column_pkey PRIMARY KEY (asset_table_column_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_column +-- ---------------------------- +ALTER TABLE tbl_data_metadata_column ADD CONSTRAINT metadata_column_pkey PRIMARY KEY (column_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_metadata_source +-- ---------------------------- +CREATE INDEX idx_tbl_data_metadata_source_1 ON tbl_data_metadata_source ( + conn_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_source +-- ---------------------------- +ALTER TABLE tbl_data_metadata_source ADD CONSTRAINT metadata_source_pkey PRIMARY KEY (source_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_source_conn +-- ---------------------------- +ALTER TABLE tbl_data_metadata_source_conn ADD CONSTRAINT tbl_data_metadata_source_link_pkey PRIMARY KEY (conn_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_metadata_table +-- ---------------------------- +CREATE INDEX idx_tbl_data_metadata_table_1 ON tbl_data_metadata_table ( + source_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_metadata_table +-- ---------------------------- +ALTER TABLE tbl_data_metadata_table ADD CONSTRAINT metadata_table_pkey PRIMARY KEY (table_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_console_export +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_console_export_1 ON tbl_data_sql_console_export ( + user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_console_export +-- ---------------------------- +ALTER TABLE tbl_data_sql_console_export ADD CONSTRAINT tbl_data_sql_console_export_pkey PRIMARY KEY (export_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_console_file +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_console_file_1 ON tbl_data_sql_console_file ( + source_id +); +CREATE INDEX idx_tbl_data_sql_console_file_2 ON tbl_data_sql_console_file ( + user_id +); +CREATE INDEX idx_tbl_data_sql_console_file_3 ON tbl_data_sql_console_file ( + pid +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_console_file +-- ---------------------------- +ALTER TABLE tbl_data_sql_console_file ADD CONSTRAINT tbl_sql_console_file_pkey PRIMARY KEY (file_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_data_apply +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_data_apply_1 ON tbl_data_sql_data_apply ( + apply_no +); +CREATE INDEX idx_tbl_data_sql_data_apply_2 ON tbl_data_sql_data_apply ( + user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_data_apply +-- ---------------------------- +ALTER TABLE tbl_data_sql_data_apply ADD CONSTRAINT tbl_sql_data_apply_pkey PRIMARY KEY (apply_id); + +-- ---------------------------- +-- Indexes structure for table tbl_data_sql_data_auth +-- ---------------------------- +CREATE INDEX idx_tbl_data_sql_data_auth_1 ON tbl_data_sql_data_auth ( + user_id +); +CREATE INDEX idx_tbl_data_sql_data_auth_2 ON tbl_data_sql_data_auth ( + user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_data_auth +-- ---------------------------- +ALTER TABLE tbl_data_sql_data_auth ADD CONSTRAINT metadata_authorize_pkey PRIMARY KEY (object_id, user_id, apply_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_data_sql_log +-- ---------------------------- +ALTER TABLE tbl_data_sql_log ADD CONSTRAINT tbl_data_sql_log_pkey PRIMARY KEY (sql_log_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_info +-- ---------------------------- +CREATE INDEX idx_docker_apply_info_1 ON tbl_docker_apply_info ( + apply_user_id , + service_type +); +CREATE INDEX idx_docker_apply_info_3 ON tbl_docker_apply_info ( + bus_status +); +CREATE INDEX idx_docker_apply_info_4 ON tbl_docker_apply_info ( + create_by +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_info +-- ---------------------------- +ALTER TABLE tbl_docker_apply_info ADD CONSTRAINT pk_tbl_docker_apply_info PRIMARY KEY (apply_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_lib +-- ---------------------------- +CREATE INDEX idx_docker_apply_lib_1 ON tbl_docker_apply_lib ( + apply_id +); +CREATE INDEX idx_docker_apply_lib_2 ON tbl_docker_apply_lib ( + file_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_lib +-- ---------------------------- +ALTER TABLE tbl_docker_apply_lib ADD CONSTRAINT pk_tbl_docker_apply_lib PRIMARY KEY (apply_lib_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_review +-- ---------------------------- +CREATE INDEX index_docker_apply_review_1 ON tbl_docker_apply_review ( + apply_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_review +-- ---------------------------- +ALTER TABLE tbl_docker_apply_review ADD CONSTRAINT pk_tbl_docker_apply_review PRIMARY KEY (review_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_apply_review_dtl +-- ---------------------------- +CREATE INDEX index_docker_apply_review_dtl_1 ON tbl_docker_apply_review_dtl ( + review_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_apply_review_dtl +-- ---------------------------- +ALTER TABLE tbl_docker_apply_review_dtl ADD CONSTRAINT pk_tbl_docker_apply_review_dtl PRIMARY KEY (review_dtl_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_client_info +-- ---------------------------- +ALTER TABLE tbl_docker_client_info ADD CONSTRAINT pk_tbl_docker_client_info PRIMARY KEY (docker_server_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_config_hardware +-- ---------------------------- +ALTER TABLE tbl_docker_config_hardware ADD CONSTRAINT pk_tbl_docker_config_hardware PRIMARY KEY (config_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_download_apply +-- ---------------------------- +CREATE INDEX idx_docker_download_apply_1 ON tbl_docker_download_apply ( + apply_id +); +CREATE INDEX idx_docker_download_apply_2 ON tbl_docker_download_apply ( + apply_user_id +); +CREATE INDEX index__docker_download_apply_1 ON tbl_docker_download_apply ( + apply_user_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_download_apply +-- ---------------------------- +ALTER TABLE tbl_docker_download_apply ADD CONSTRAINT pk_tbl_docker_download_apply PRIMARY KEY (download_apply_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_images +-- ---------------------------- +ALTER TABLE tbl_docker_images ADD CONSTRAINT pk_tbl_docker_images PRIMARY KEY (docker_image_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_port_list +-- ---------------------------- +ALTER TABLE tbl_docker_port_list ADD CONSTRAINT pk_tbl_docker_port_list PRIMARY KEY (docker_port_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_portainer_user +-- ---------------------------- +ALTER TABLE tbl_docker_portainer_user ADD CONSTRAINT pk_tbl_docker_portainer_user PRIMARY KEY (docker_account_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_vpn +-- ---------------------------- +ALTER TABLE tbl_docker_vpn ADD CONSTRAINT pk_tbl_docker_vpn PRIMARY KEY (vpn_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_with_user +-- ---------------------------- +CREATE INDEX idx_docker_with_user_1 ON tbl_docker_with_user ( + apply_user_id +); +CREATE INDEX idx_docker_with_user_2 ON tbl_docker_with_user ( + bus_status +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_with_user +-- ---------------------------- +ALTER TABLE tbl_docker_with_user ADD CONSTRAINT pk_tbl_docker_with_user PRIMARY KEY (apply_id); + +-- ---------------------------- +-- Indexes structure for table tbl_docker_with_user_account +-- ---------------------------- +CREATE INDEX idx_docker_with_user_account_1 ON tbl_docker_with_user_account ( + apply_id +); +CREATE INDEX idx_docker_with_user_account_2 ON tbl_docker_with_user_account ( + bus_status +); +CREATE INDEX index__docker_with_user_account_1 ON tbl_docker_with_user_account ( + apply_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_docker_with_user_account +-- ---------------------------- +ALTER TABLE tbl_docker_with_user_account ADD CONSTRAINT pk_tbl_docker_with_user_account PRIMARY KEY (account_id); + +-- ---------------------------- +-- Indexes structure for table tbl_org_api_auth +-- ---------------------------- +CREATE INDEX idx_tbl_org_api_auth_1 ON tbl_org_api_auth ( + org_no +); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_api_auth +-- ---------------------------- +ALTER TABLE tbl_org_api_auth ADD CONSTRAINT tbl_instit_api_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Indexes structure for table tbl_org_config +-- ---------------------------- +CREATE INDEX idx_tbl_org_config_1 ON tbl_org_config ( + org_no +); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_config +-- ---------------------------- +ALTER TABLE tbl_org_config ADD CONSTRAINT tbl_org_config_pkey PRIMARY KEY (config_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_info +-- ---------------------------- +ALTER TABLE tbl_org_info ADD CONSTRAINT pk_org_info PRIMARY KEY (org_no); + +-- ---------------------------- +-- Indexes structure for table tbl_org_statistics +-- ---------------------------- +CREATE INDEX idx_tbl_org_statistics_1 ON tbl_org_statistics ( + org_no , + api_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_org_statistics +-- ---------------------------- +ALTER TABLE tbl_org_statistics ADD CONSTRAINT pk_tbl_org_statistics PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_content +-- ---------------------------- +ALTER TABLE tbl_portal_content ADD CONSTRAINT pk_tbl_portal_content PRIMARY KEY (content_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_logininfor_copy1 +-- ---------------------------- +ALTER TABLE tbl_portal_logininfor_copy1 ADD CONSTRAINT tbl_portal_logininfor_copy1_pkey PRIMARY KEY (info_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_oper_log_copy1 +-- ---------------------------- +ALTER TABLE tbl_portal_oper_log_copy1 ADD CONSTRAINT tbl_portal_oper_log_copy1_pkey PRIMARY KEY (oper_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_user +-- ---------------------------- +ALTER TABLE tbl_portal_user ADD CONSTRAINT pk_tbl_portal_user PRIMARY KEY (user_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_portal_user_msg +-- ---------------------------- +ALTER TABLE tbl_portal_user_msg ADD CONSTRAINT pk_tbl_portal_user_msg PRIMARY KEY (msg_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_base_line +-- ---------------------------- +ALTER TABLE tbl_prd_base_line ADD CONSTRAINT tbl_prd_line_info_pkey PRIMARY KEY (line_name, line_code); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_base_line_station +-- ---------------------------- +ALTER TABLE tbl_prd_base_line_station ADD CONSTRAINT tbl_prd_line_station_info_pkey PRIMARY KEY (line_code, levels); + +-- ---------------------------- +-- Indexes structure for table tbl_prd_line_metric_day +-- ---------------------------- +CREATE INDEX metric_day_index ON tbl_prd_line_metric_day ( + metric_date +); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_line_metric_day ADD CONSTRAINT tbl_prd_line_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_metric_hour +-- ---------------------------- +ALTER TABLE tbl_prd_line_metric_hour ADD CONSTRAINT tbl_prd_line_metric_hour_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_metric_month +-- ---------------------------- +ALTER TABLE tbl_prd_line_metric_month ADD CONSTRAINT tbl_prd_line_metric_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_metric_day ADD CONSTRAINT tbl_prd_line_station_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_metric_hour +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_metric_hour ADD CONSTRAINT tbl_prd_line_station_metric_hour_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_metric_month +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_metric_month ADD CONSTRAINT tbl_prd_line_station_metric_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_trans_day +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_trans_day ADD CONSTRAINT tbl_prd_line_station_trans_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_trans_hour +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_trans_hour ADD CONSTRAINT tbl_prd_line_station_trans_hour_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_line_station_trans_month +-- ---------------------------- +ALTER TABLE tbl_prd_line_station_trans_month ADD CONSTRAINT tbl_prd_line_station_trans_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_route_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_route_metric_day ADD CONSTRAINT tbl_prd_route_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_metric_day +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_metric_day ADD CONSTRAINT tbl_prd_station_freq_metric_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_metric_month +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_metric_month ADD CONSTRAINT tbl_prd_station_freq_metric_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_trans_day +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_trans_day ADD CONSTRAINT tbl_prd_station_freq_trans_day_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_station_freq_trans_month +-- ---------------------------- +ALTER TABLE tbl_prd_station_freq_trans_month ADD CONSTRAINT tbl_prd_station_freq_trans_month_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_prd_sync_record +-- ---------------------------- +ALTER TABLE tbl_prd_sync_record ADD CONSTRAINT tbl_prd_sync_record_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Indexes structure for table tbl_public_files +-- ---------------------------- +CREATE INDEX idx_public_files_1 ON tbl_public_files ( + uuid +); +CREATE INDEX idx_public_files_2 ON tbl_public_files ( + create_by , + file_source_type +); +CREATE INDEX idx_public_files_3 ON tbl_public_files ( + file_busi_id , + file_source_type +); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_files +-- ---------------------------- +ALTER TABLE tbl_public_files ADD CONSTRAINT pk_tbl_public_files PRIMARY KEY (file_id); + +-- ---------------------------- +-- Indexes structure for table tbl_public_files_progress +-- ---------------------------- +CREATE INDEX idx_sys_files_progress_1 ON tbl_public_files_progress ( + file_id , + uuid +); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_files_progress +-- ---------------------------- +ALTER TABLE tbl_public_files_progress ADD CONSTRAINT pk_tbl_public_files_progress PRIMARY KEY (file_progress_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_msg_template +-- ---------------------------- +ALTER TABLE tbl_public_msg_template ADD CONSTRAINT pk_tbl_public_msg_template PRIMARY KEY (template_id); + +-- ---------------------------- +-- Indexes structure for table tbl_public_phone_msg_log +-- ---------------------------- +CREATE INDEX idx_public_phone_msg_log_1 ON tbl_public_phone_msg_log ( + phone_number +); +CREATE INDEX idx_public_phone_msg_log_2 ON tbl_public_phone_msg_log ( + msg_type +); + +-- ---------------------------- +-- Primary Key structure for table tbl_public_phone_msg_log +-- ---------------------------- +ALTER TABLE tbl_public_phone_msg_log ADD CONSTRAINT pk_tbl_public_phone_msg_log PRIMARY KEY (msg_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_centime_delay +-- ---------------------------- +ALTER TABLE tbl_qa_centime_delay ADD CONSTRAINT tbl_qa_centime_delay_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_pos_match_rate +-- ---------------------------- +ALTER TABLE tbl_qa_pos_match_rate ADD CONSTRAINT tbl_qa_pos_match_rate_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_route_daily_count +-- ---------------------------- +ALTER TABLE tbl_qa_route_daily_count ADD CONSTRAINT tbl_qa_route_daily_count_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_route_miss +-- ---------------------------- +ALTER TABLE tbl_qa_route_miss ADD CONSTRAINT tbl_qa_route_miss_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_route_turnover_time +-- ---------------------------- +ALTER TABLE tbl_qa_route_turnover_time ADD CONSTRAINT tbl_qa_route_turnover_time_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_station_miss +-- ---------------------------- +ALTER TABLE tbl_qa_station_miss ADD CONSTRAINT tbl_qa_station_miss_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_qa_vehicle_daily_count +-- ---------------------------- +ALTER TABLE tbl_qa_vehicle_daily_count ADD CONSTRAINT tbl_qa_vehicle_daily_count_pkey PRIMARY KEY (id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sftp_user +-- ---------------------------- +ALTER TABLE tbl_sftp_user ADD CONSTRAINT pk_tbl_sftp_user PRIMARY KEY (sftp_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sftp_user_file +-- ---------------------------- +ALTER TABLE tbl_sftp_user_file ADD CONSTRAINT pk_tbl_sftp_user_file PRIMARY KEY (sftp_file_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_config +-- ---------------------------- +ALTER TABLE tbl_sys_config ADD CONSTRAINT pk_tbl_sys_config PRIMARY KEY (config_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_dept +-- ---------------------------- +ALTER TABLE tbl_sys_dept ADD CONSTRAINT pk_tbl_sys_dept PRIMARY KEY (dept_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_dict_data +-- ---------------------------- +CREATE INDEX idx_sys_dict_data_1 ON tbl_sys_dict_data ( + dict_type +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_dict_data +-- ---------------------------- +ALTER TABLE tbl_sys_dict_data ADD CONSTRAINT pk_tbl_sys_dict_data PRIMARY KEY (dict_code); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_dict_type +-- ---------------------------- +ALTER TABLE tbl_sys_dict_type ADD CONSTRAINT pk_tbl_sys_dict_type PRIMARY KEY (dict_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_job +-- ---------------------------- +ALTER TABLE tbl_sys_job ADD CONSTRAINT pk_tbl_sys_job PRIMARY KEY (job_id, job_name, job_group); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_job_log +-- ---------------------------- +ALTER TABLE tbl_sys_job_log ADD CONSTRAINT pk_tbl_sys_job_log PRIMARY KEY (job_log_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_logininfor_2024 +-- ---------------------------- +-- ---------------------------- +-- Indexes structure for table tbl_sys_logininfor_default +-- ---------------------------- +CREATE UNIQUE INDEX tbl_sys_logininfor_default_pkey ON tbl_sys_logininfor_default ( + info_id , + login_time +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_logininfor_default +-- ---------------------------- +ALTER TABLE tbl_sys_logininfor_default ADD CONSTRAINT tbl_sys_logininfor_default_pkey PRIMARY KEY (info_id, login_time); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_menu +-- ---------------------------- +ALTER TABLE tbl_sys_menu ADD CONSTRAINT pk_tbl_sys_menu PRIMARY KEY (menu_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_notice +-- ---------------------------- +ALTER TABLE tbl_sys_notice ADD CONSTRAINT pk_tbl_sys_notice PRIMARY KEY (notice_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_oper_log_2024 +-- ---------------------------- +-- ---------------------------- +-- Indexes structure for table tbl_sys_oper_log_default +-- ---------------------------- +CREATE UNIQUE INDEX tbl_sys_oper_log_default_pkey ON tbl_sys_oper_log_default ( + oper_id , + oper_time +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_oper_log_default +-- ---------------------------- +ALTER TABLE tbl_sys_oper_log_default ADD CONSTRAINT tbl_sys_oper_log_default_pkey PRIMARY KEY (oper_id, oper_time); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_post +-- ---------------------------- +ALTER TABLE tbl_sys_post ADD CONSTRAINT pk_tbl_sys_post PRIMARY KEY (post_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_role +-- ---------------------------- +ALTER TABLE tbl_sys_role ADD CONSTRAINT pk_tbl_sys_role PRIMARY KEY (role_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_role_dept +-- ---------------------------- +ALTER TABLE tbl_sys_role_dept ADD CONSTRAINT pk_tbl_sys_role_dept PRIMARY KEY (role_id, dept_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_role_menu +-- ---------------------------- +ALTER TABLE tbl_sys_role_menu ADD CONSTRAINT pk_tbl_sys_role_menu PRIMARY KEY (role_id, menu_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_user +-- ---------------------------- +CREATE INDEX idx_sys_user_1 ON tbl_sys_user ( + dept_id +); +CREATE INDEX idx_sys_user_2 ON tbl_sys_user ( + phonenumber +); +CREATE INDEX idx_tbl_sys_user_1 ON tbl_sys_user ( + dept_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_user +-- ---------------------------- +ALTER TABLE tbl_sys_user ADD CONSTRAINT pk_tbl_sys_user PRIMARY KEY (user_id); + +-- ---------------------------- +-- Indexes structure for table tbl_sys_user_post +-- ---------------------------- +CREATE INDEX idx_tbl_sys_user_post_1 ON tbl_sys_user_post ( + post_id +); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_user_post +-- ---------------------------- +ALTER TABLE tbl_sys_user_post ADD CONSTRAINT pk_tbl_sys_user_post PRIMARY KEY (user_id, post_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_user_role +-- ---------------------------- +ALTER TABLE tbl_sys_user_role ADD CONSTRAINT pk_tbl_sys_user_role PRIMARY KEY (user_id, role_id); + +-- ---------------------------- +-- Primary Key structure for table tbl_sys_warning_contact +-- ---------------------------- +ALTER TABLE tbl_sys_warning_contact ADD CONSTRAINT pk_tbl_sys_warning_contact PRIMARY KEY (id); diff --git a/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/pom.xml new file mode 100644 index 00000000..bb16f3ef --- /dev/null +++ b/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17/pom.xml @@ -0,0 +1,163 @@ + + + 4.0.0 + pom + + + org.springframework.boot + spring-boot-starter-parent + 2.6.7 + + + com.jiuyv.sptcc.agile + agile-data + 0.2.17 + agile-data + agile-data + + + UTF-8 + UTF-8 + 1.8 + 1.8 + 1.8 + 3.1.1 + 3.1.0 + 3.1.0 + 2021.0.2 + 3.3 + 6.2.3.Final + 3.1.0 + 1.3.0 + 0.2.17 + 0.1.13 + 0.1.6 + 1.4.6 + 2.8.5 + 0.1.55 + 20.3 + 3.14.9 + 6.3 + 1.2.11 + -Xdoclint:none + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + + org.mybatis.spring.boot + mybatis-spring-boot-starter + ${mybatis.version} + + + + com.jiuyv.sptcc.agile + agile-data-api + ${agile.service.api} + + + + com.jiuyv.sptcc.agile + agile-common + ${agile-common} + + + + com.jiuyv.sptcc.agile + agile-mobile-message-api + ${message-api.version} + + + + + + + + + agile-data-api + agile-data-service + + + + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17 + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/agile-date-service/src/tags/agile-data-0.2.17 + + + + + nexus-releases + Internal Releases + http://172.16.12.11:8082/repository/maven-releases/ + + + + nexus-snapshots + Internal Snapshots + http://172.16.12.11:8082/repository/maven-snapshots/ + + + + + + + jiuyv + jiuyv + http://172.16.12.11:8082/repository/maven-public/ + + true + always + + + + + aliyun-releases + Internal Releases + http://maven.aliyun.com/nexus/content/groups/public + + + + spring-milestone-releases + Internal Releases + https://repo.spring.io/milestone + + + + + jiuyv + jiuyu Plugin Repository + http://172.16.12.11:8082/repository/maven-public/ + + true + always + + + + aliyun-releases + Internal Releases + http://maven.aliyun.com/nexus/content/groups/public + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + none + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/pom.xml index 5615ab0b..7c2d3ddd 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/pom.xml +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/pom.xml @@ -3,7 +3,7 @@ agile-data com.jiuyv.sptcc.agile - 0.2.15-SNAPSHOT + 0.2.18-SNAPSHOT 4.0.0 jar @@ -14,7 +14,7 @@ 8 8 - + true diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java index a85fc393..2e43162b 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/api/batch/BatchApi.java @@ -30,7 +30,7 @@ public interface BatchApi { /** * pos匹配率异常告警 - * @param date + * @param dateVo * @return */ @PostMapping(PREFIX_PATH + "/pos/posRate") diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java index a635f718..31a760d4 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-api/src/main/java/com/jiuyv/sptcc/agile/dataservice/dto/enums/AlgorithmCrypto.java @@ -6,8 +6,8 @@ public enum AlgorithmCrypto implements IDictEnum { MD5("2", "MD5加密"), SHA_1("3", "SHA_1加密"), SHA_256("4", "SHA_256加密"), - AES("5", "AES加密"), - DES("6", "DES加密"); + AES("5", "AES加密"); + // DES("6", "DES加密"); private final String key; diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/pom.xml index c69a4d1d..40156b44 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/pom.xml +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/pom.xml @@ -3,7 +3,7 @@ agile-data com.jiuyv.sptcc.agile - 0.2.15-SNAPSHOT + 0.2.18-SNAPSHOT 4.0.0 @@ -168,15 +168,6 @@ ${pageHelper.version} - - - - - - - - - com.luhuiguo aspose-words diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java index c85f5e04..3355ab0c 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/api/ApiController.java @@ -8,6 +8,7 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.github.pagehelper.PageInfo; import com.jiuyv.sptcc.agile.dataservice.api.console.DataApiFeign; import com.jiuyv.sptcc.agile.dataservice.api.portal.DataApiFeignApi; +import com.jiuyv.sptcc.agile.dataservice.common.exception.BaseException; import com.jiuyv.sptcc.agile.dataservice.common.exception.ServiceException; import com.jiuyv.sptcc.agile.dataservice.common.controller.BaseController; import com.jiuyv.sptcc.agile.dataservice.dao.entity.ApiEntity; @@ -25,6 +26,7 @@ import com.jiuyv.sptcc.agile.dataservice.dto.response.TreeSelect; import com.jiuyv.sptcc.agile.dataservice.service.api.AgileApiService; import com.jiuyv.sptcc.agile.dataservice.utils.*; import com.jiuyv.sptcc.agile.dataservice.utils.uuid.IdUtils; +import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; import com.jiuyv.sptccc.agile.common.core.domain.R; import com.jiuyv.sptccc.agile.common.core.page.PageResult; import feign.Response; @@ -241,13 +243,18 @@ public class ApiController extends BaseController implements DataApiFeign, DataA @Override public Response wordDataApi(Long id) throws Exception { HttpServletResponse response = ServletUtils.getResponse(); + ApiEntity apiEntity = apiService.getDataApiById(id); + if(apiEntity == null){ + throw new BaseException(ResultCode.DATE_NOT_EXIST); + } + String apiName = apiEntity.getApiName(); if(response != null){ // 清空response response.reset(); // 设置response的Header response.setContentType("application/octet-stream;charset=utf-8"); // 设置content-disposition响应头控制浏览器以下载的形式打开文件 - response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("接口文档.docx", "utf-8")); + response.addHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("接口文档-"+apiName+".docx", "utf-8")); Document doc = apiService.wordDataApi(id); OutputStream out = response.getOutputStream(); doc.save(out, SaveOptions.createSaveOptions(SaveFormat.DOCX)); diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java index bfed744b..e9ae5ca2 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/controller/batch/BatchController.java @@ -42,8 +42,10 @@ public class BatchController extends BaseController implements BatchApi { @Override public R down(String date) { - Date excuteDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD, date); - if(StringUtils.isBlank(date)){ + Date excuteDate = null; + if(StringUtils.isNotBlank(date)){ + excuteDate = DateUtils.dateTime(DateUtils.YYYY_MM_DD, date); + }else{ excuteDate = DateUtils.addDays(DateUtils.date(),-1); } Boolean down = orgTask.down(excuteDate); diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java index 7367bc08..2192661c 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AESCrypto.java @@ -1,16 +1,27 @@ package com.jiuyv.sptcc.agile.dataservice.factory.crypto; import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import javax.crypto.Cipher; import javax.crypto.KeyGenerator; import javax.crypto.SecretKey; import javax.crypto.spec.SecretKeySpec; +import java.security.NoSuchAlgorithmException; import java.security.SecureRandom; import java.util.Base64; public class AESCrypto implements Crypto { + + public static final Logger log = LoggerFactory.getLogger(AESCrypto.class); + + private static final String TRANSFORMATION = "AES/GCM/NoPadding"; + + private static final String ALGORITHM = "AES"; + public static final String SecretKey = "6dUhsytWsgiMVZ8UeT3TzQ=="; + @Override public String encrypt(String content) { if (StringUtils.isBlank(content)) { @@ -18,19 +29,9 @@ public class AESCrypto implements Crypto { } try { //1.构造密钥生成器,指定为AES算法,不区分大小写 - KeyGenerator kGen = KeyGenerator.getInstance("AES"); - SecureRandom random = SecureRandom.getInstance("SHA1PRNG"); - random.setSeed(SLAT.getBytes()); - //2.根据 RULES 规则初始化密钥生成器,根据传入的字节数组生成一个128位的随机源 - kGen.init(128, random); - //3.产生原始对称密钥 - SecretKey secretKey = kGen.generateKey(); - //4.获得原始对称密钥的字节数组 - byte[] enCodeFormat = secretKey.getEncoded(); - //5.根据字节数组生成AES密钥 - SecretKeySpec key = new SecretKeySpec(enCodeFormat, "AES"); + SecretKeySpec key = initSecretKey(); //6.根据指定算法AES生成密码器 - Cipher cipher = Cipher.getInstance("AES"); + Cipher cipher = Cipher.getInstance(TRANSFORMATION); //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密解密(Decrypt_mode)操作,第二个参数为使用的KEY cipher.init(Cipher.ENCRYPT_MODE, key); //8.根据密码器的初始化方式--加密:将数据加密 @@ -38,7 +39,7 @@ public class AESCrypto implements Crypto { //9.将字符串返回 return Base64.getEncoder().encodeToString(AES_encrypt); } catch (Exception e) { - e.printStackTrace(); + log.error("AES加密失败",e); } return null; } @@ -50,27 +51,35 @@ public class AESCrypto implements Crypto { } try { //1.构造密钥生成器,指定为AES算法,不区分大小写 - KeyGenerator kGen = KeyGenerator.getInstance("AES"); - SecureRandom random = SecureRandom.getInstance("SHA1PRNG"); - random.setSeed(SLAT.getBytes()); - //2.根据 RULES 规则初始化密钥生成器,根据传入的字节数组生成一个128位的随机源 - kGen.init(128, random); - //3.产生原始对称密钥 - SecretKey secretKey = kGen.generateKey(); - //4.获得原始对称密钥的字节数组 - byte[] enCodeFormat = secretKey.getEncoded(); - //5.根据字节数组生成AES密钥 - SecretKeySpec key = new SecretKeySpec(enCodeFormat, "AES"); + SecretKeySpec key = initSecretKey(); //6.根据指定算法AES生成密码器 - Cipher cipher = Cipher.getInstance("AES"); + Cipher cipher = Cipher.getInstance(TRANSFORMATION); //7.初始化密码器,第一个参数为加密(Encrypt_mode)或者解密解密(Decrypt_mode)操作,第二个参数为使用的KEY cipher.init(Cipher.DECRYPT_MODE, key);// 初始化 //8.根据密码器的初始化方式--加密:将数据加密 byte[] AES_decode = cipher.doFinal(Base64.getDecoder().decode(content)); return new String(AES_decode, CHARSET_UTF8); } catch (Exception e) { - e.printStackTrace(); + log.error("AES解密失败",e); } return null; } -} + + private String getKey() throws NoSuchAlgorithmException { + KeyGenerator kGen = KeyGenerator.getInstance(ALGORITHM); + SecureRandom random = SecureRandom.getInstance(SHA1PRNG); + random.setSeed(SLAT.getBytes()); + //2.根据 RULES 规则初始化密钥生成器,根据传入的字节数组生成一个128位的随机源 + kGen.init(128, random); + //3.产生原始对称密钥 + SecretKey secretKey = kGen.generateKey(); + //4.获得原始对称密钥的字节数组 + byte[] enCodeFormat = secretKey.getEncoded(); + return Base64.getEncoder().encodeToString(enCodeFormat); + } + + private SecretKeySpec initSecretKey() { + return new SecretKeySpec(Base64.getDecoder().decode(AESCrypto.SecretKey), "AES"); + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java index 9e4fb5f2..0fd824f8 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/AlgorithmRegistry.java @@ -12,7 +12,6 @@ public class AlgorithmRegistry { public AlgorithmRegistry() { algorithm_enum_map.put(AlgorithmCrypto.BASE64, new BASE64Crypto()); algorithm_enum_map.put(AlgorithmCrypto.AES, new AESCrypto()); - algorithm_enum_map.put(AlgorithmCrypto.DES, new DESCrypto()); algorithm_enum_map.put(AlgorithmCrypto.MD5, new MD5Crypto()); algorithm_enum_map.put(AlgorithmCrypto.SHA_1, new SHA1Crypto()); algorithm_enum_map.put(AlgorithmCrypto.SHA_256, new SHA256Crypto()); diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java index 6da7b910..253c39ce 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/factory/crypto/DESCrypto.java @@ -1,67 +1,77 @@ -package com.jiuyv.sptcc.agile.dataservice.factory.crypto; - -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import javax.crypto.Cipher; -import javax.crypto.KeyGenerator; -import javax.crypto.NoSuchPaddingException; -import javax.crypto.SecretKey; -import javax.crypto.spec.SecretKeySpec; -import java.io.UnsupportedEncodingException; -import java.security.NoSuchAlgorithmException; -import java.security.SecureRandom; -import java.util.Base64; - -public class DESCrypto implements Crypto { - - private static final Logger log = LoggerFactory.getLogger(DESCrypto.class); - private static final String DES ="DES"; - - @Override - public String encrypt(String content) { - if (StringUtils.isBlank(content)) { - return null; - } - try { - KeyGenerator kGen = KeyGenerator.getInstance(DES); - SecureRandom random = SecureRandom.getInstance(SHA1PRNG); - random.setSeed(SLAT.getBytes()); - kGen.init(56,random); - SecretKey secretKey = kGen.generateKey(); - byte[] enCodeFormat = secretKey.getEncoded(); - SecretKeySpec key = new SecretKeySpec(enCodeFormat, DES); - Cipher cipher = Cipher.getInstance(DES); - cipher.init(Cipher.ENCRYPT_MODE, key); - byte[] DES_encrypt = cipher.doFinal(content.getBytes(CHARSET_UTF8)); - return Base64.getEncoder().encodeToString(DES_encrypt); - } catch (Exception e) { - log.error("des encrypt 失败", e); - } - return null; - } - - @Override - public String decrypt(String content) { - if (StringUtils.isBlank(content)) { - return null; - } - try { - KeyGenerator kGen = KeyGenerator.getInstance(DES); - SecureRandom random = SecureRandom.getInstance(SHA1PRNG); - random.setSeed(SLAT.getBytes()); - kGen.init(56,random); - SecretKey secretKey = kGen.generateKey(); - byte[] enCodeFormat = secretKey.getEncoded(); - SecretKeySpec key = new SecretKeySpec(enCodeFormat, DES); - Cipher cipher = Cipher.getInstance(DES); - cipher.init(Cipher.DECRYPT_MODE, key); - byte[] DES_decrypt = cipher.doFinal(Base64.getDecoder().decode(content)); - return new String(DES_decrypt, CHARSET_UTF8); - } catch (Exception e) { - log.error("des encrypt 失败", e); - } - return null; - } -} +// package com.jiuyv.sptcc.agile.dataservice.factory.crypto; +// +// import org.apache.commons.lang3.StringUtils; +// import org.slf4j.Logger; +// import org.slf4j.LoggerFactory; +// +// import javax.crypto.Cipher; +// import javax.crypto.KeyGenerator; +// import javax.crypto.SecretKey; +// import javax.crypto.spec.SecretKeySpec; +// import java.nio.charset.StandardCharsets; +// import java.security.NoSuchAlgorithmException; +// import java.security.SecureRandom; +// import java.util.Base64; +// +// public class DESCrypto implements Crypto { +// +// private static final Logger log = LoggerFactory.getLogger(DESCrypto.class); +// private static final String DES ="DES"; +// private static final String KEY = "DES/ECB/PKCS5Padding"; +// +// private static final String SLAT = "jiuyv"; +// +// +// @Override +// public String encrypt(String content) { +// if (StringUtils.isBlank(content)) { +// return null; +// } +// try { +// SecretKeySpec key = getKey(); +// Cipher cipher = Cipher.getInstance("DES/ECB/PKCS5Padding"); +// cipher.init(Cipher.ENCRYPT_MODE, key); +// byte[] DES_encrypt = cipher.doFinal(content.getBytes(StandardCharsets.UTF_8)); +// return Base64.getEncoder().encodeToString(DES_encrypt); +// } catch (Exception e) { +// log.error("des encrypt 失败", e); +// } +// return null; +// } +// +// +// private SecretKeySpec getKey() throws NoSuchAlgorithmException { +// KeyGenerator kGen = KeyGenerator.getInstance(DES); +// SecureRandom random = SecureRandom.getInstance(SHA1PRNG); +// random.setSeed(SLAT.getBytes()); +// kGen.init(56,random); +// SecretKey secretKey = kGen.generateKey(); +// return new SecretKeySpec(secretKey.getEncoded(), DES); +// } +// +// @Override +// public String decrypt(String content) { +// if (StringUtils.isBlank(content)) { +// return null; +// } +// try { +// SecretKeySpec key = getKey(); +// Cipher cipher = Cipher.getInstance(KEY); +// cipher.init(Cipher.DECRYPT_MODE, key); +// byte[] DES_decrypt = cipher.doFinal(Base64.getDecoder().decode(content)); +// return new String(DES_decrypt, StandardCharsets.UTF_8); +// } catch (Exception e) { +// log.error("des encrypt 失败", e); +// } +// return null; +// } +// +// public static void main(String[] args) { +// DESCrypto desCrypto = new DESCrypto(); +// String encrypt = desCrypto.encrypt("123456"); +// System.out.println(encrypt); +// System.out.println(desCrypto.decrypt(encrypt)); +// } +// +// +// } diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java index 930e58d1..36378e17 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgAuthServiceImpl.java @@ -16,11 +16,10 @@ import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthReq; import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgAuthRequest; import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgAuthResp; import com.jiuyv.sptcc.agile.dataservice.dto.response.org.OrgKeyResponse; -import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; -import com.jiuyv.sptcc.agile.dataservice.factory.crypto.DESCrypto; import com.jiuyv.sptcc.agile.dataservice.service.org.OrgAuthService; import com.jiuyv.sptcc.agile.dataservice.utils.DateUtils; import com.jiuyv.sptcc.agile.dataservice.utils.IpWhiteCheckUtil; +import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; import com.jiuyv.sptcc.agile.dataservice.web.ResultCode; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -79,9 +78,8 @@ public class OrgAuthServiceImpl implements OrgAuthService { orgAuthResp.setOrgName(orgInfo.getOrgName()); orgAuthResp.setOrgType(orgInfo.getOrgType()); - Crypto crypto = new DESCrypto(); - String deptSalt = crypto.decrypt(orgInfo.getSalt()); - String deptEncrypt = crypto.decrypt(orgInfo.getEncrypt()); + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); orgAuthResp.setSalt(deptSalt); orgAuthResp.setEncrypt(deptEncrypt); @@ -124,9 +122,9 @@ public class OrgAuthServiceImpl implements OrgAuthService { throw new BaseException(ResultCode.API_IS_DOWN); } OrgKeyResponse response = new OrgKeyResponse(); - Crypto crypto = new DESCrypto(); - String deptSalt = crypto.decrypt(orgInfo.getSalt()); - String deptEncrypt = crypto.decrypt(orgInfo.getEncrypt()); + + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); response.setSalt(deptSalt); response.setEncrypt(deptEncrypt); // 该机构的授权接口 diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java index cf651604..162af5bd 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/service/org/impl/OrgInfoServiceImpl.java @@ -20,8 +20,6 @@ import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgDelReq; import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoAddReq; import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoEditReq; import com.jiuyv.sptcc.agile.dataservice.dto.request.org.OrgInfoStatusReq; -import com.jiuyv.sptcc.agile.dataservice.factory.crypto.Crypto; -import com.jiuyv.sptcc.agile.dataservice.factory.crypto.DESCrypto; import com.jiuyv.sptcc.agile.dataservice.service.org.IOrgInfoService; import com.jiuyv.sptcc.agile.dataservice.utils.ParamsUtil; import com.jiuyv.sptcc.agile.dataservice.utils.sm.Sm4Util; @@ -67,9 +65,8 @@ public class OrgInfoServiceImpl implements IOrgInfoService { @Override public OrgInfoEntity selectOrgInfoByOrgNo(String orgNo) { OrgInfoEntity orgInfo = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); - Crypto crypto = new DESCrypto(); - String deptSalt = crypto.decrypt(orgInfo.getSalt()); - String deptEncrypt = crypto.decrypt(orgInfo.getEncrypt()); + String deptSalt = Sm4Util.decryptEcb(orgInfo.getSalt()); + String deptEncrypt = Sm4Util.decryptEcb(orgInfo.getEncrypt()); orgInfo.setSalt(deptSalt); orgInfo.setEncrypt(deptEncrypt); return orgInfo; @@ -93,15 +90,17 @@ public class OrgInfoServiceImpl implements IOrgInfoService { @Transactional(rollbackFor = Exception.class) @Override public void orgApiAuth(OrgApiAuthRequest request) { - String orgNo = request.getOrgNo(); Long[] apiIds = request.getApiIds(); - - //是否有效id - List apis = apiMapper.getByIds(apiIds); - if(apis.size() != apiIds.length){ - throw new BaseException(ResultCode.DATE_NOT_EXIST.getCode(),"接口数据不匹配"); + List apis = null; + if (apiIds.length != 0) { + //是否有效id + apis = apiMapper.getByIds(apiIds); + if (apis.size() != apiIds.length) { + throw new BaseException(ResultCode.DATE_NOT_EXIST.getCode(), "接口数据不匹配"); + } } + // 删除原绑定信息 orgApiAuthMapper.deleteByOrgNo(orgNo); for (Long apiId : apiIds) { @@ -117,9 +116,12 @@ public class OrgInfoServiceImpl implements IOrgInfoService { config.setConfigKey(ConfigCrypot.OrgCfnKeyEnum.DOWN_RIGHT.getCode()); configMapper.deleteByEntity(config); //如果该接口是下载接口,交易码是download,默认拥有全部下载权限 + if (apis == null) { + return ; + } List collect = apis.stream().map(ApiEntity::getApiCode).collect(Collectors.toList()); OrgInfoEntity orgInfoEntity = orgInfoMapper.selectOrgInfoByOrgNo(orgNo); - if(collect.contains(ApicodeEnum.DWONLOAD.getCode())){ + if (collect.contains(ApicodeEnum.DWONLOAD.getCode())) { FileTypeEnum[] values = FileTypeEnum.values(); for (FileTypeEnum value : values) { OrgConfig vo = new OrgConfig(); @@ -137,7 +139,6 @@ public class OrgInfoServiceImpl implements IOrgInfoService { vo.setCreateByName(request.getUserName()); configMapper.insert(vo); } - } } @@ -181,9 +182,8 @@ public class OrgInfoServiceImpl implements IOrgInfoService { entity.setOrgType(base.getOrgType()); entity.setOrgDesc(base.getOrgDesc()); //密钥数据库加密存储 - Crypto crypto = new DESCrypto(); - String encryptSalt = crypto.encrypt(base.getSalt()); - String encryptEcpt = crypto.encrypt(base.getEncrypt()); + String encryptSalt = Sm4Util.encryptEcb(base.getSalt()); + String encryptEcpt = Sm4Util.encryptEcb(base.getEncrypt()); entity.setSalt(encryptSalt); entity.setEncrypt(encryptEcpt); entity.setStartTime(base.getStartTime()); diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java index 9b06db3e..58cb47a9 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm3Util.java @@ -9,6 +9,7 @@ import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.bouncycastle.pqc.math.linearalgebra.ByteUtils; import java.io.UnsupportedEncodingException; +import java.nio.charset.StandardCharsets; import java.security.Security; import java.util.Arrays; @@ -26,8 +27,6 @@ public class Sm3Util { Security.addProvider(new BouncyCastleProvider()); } - private static final String ENCODING = "UTF-8"; - /** * 无密钥加密 * @param text @@ -35,7 +34,7 @@ public class Sm3Util { */ public static String encrypt(String text) throws UnsupportedEncodingException { String resultHexStr = ""; - byte[] srcData = text.getBytes(ENCODING); + byte[] srcData = text.getBytes(StandardCharsets.UTF_8); byte[] resultHash = hash(srcData); resultHexStr = ByteUtils.toHexString(resultHash); return resultHexStr; @@ -75,7 +74,7 @@ public class Sm3Util { */ public static boolean verify(String srcStr, String sm3HexString) throws UnsupportedEncodingException { boolean flag; - byte[] srcData = srcStr.getBytes(ENCODING); + byte[] srcData = srcStr.getBytes(StandardCharsets.UTF_8); byte[] sm3Hash = ByteUtils.fromHexString(sm3HexString); byte[] newHash = hash(srcData); flag = Arrays.equals(sm3Hash, newHash); diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java index 94a72fbb..9e6204cf 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/main/java/com/jiuyv/sptcc/agile/dataservice/utils/sm/Sm4Util.java @@ -7,6 +7,7 @@ import org.apache.commons.codec.binary.Hex; import org.bouncycastle.jce.provider.BouncyCastleProvider; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; import javax.crypto.*; import javax.crypto.spec.SecretKeySpec; diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java index fd401755..2a7bd111 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/agile-data-service/src/test/java/com/jiuyv/sptcc/agile/test/utils/DateUtilsTest.java @@ -87,7 +87,7 @@ public class DateUtilsTest extends BaseApplicationTest { @Test public void differentDaysByMillisecond(){ int s = DateUtils.differentDaysByMillisecond(new Date(),new Date()); - Assertions.assertNotNull(s); + Assertions.assertEquals(s,0); } @Test diff --git a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/pom.xml b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/pom.xml index 9bf3c2d0..eca79c7d 100644 --- a/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/pom.xml +++ b/sptcc_agile_etl/src/agile-date-service/src/trunk/agile-dataservice/pom.xml @@ -11,7 +11,7 @@ com.jiuyv.sptcc.agile agile-data - 0.2.15-SNAPSHOT + 0.2.18-SNAPSHOT agile-data agile-data @@ -29,7 +29,7 @@ 6.2.3.Final 3.1.0 1.3.0 - 0.2.15-SNAPSHOT + 0.2.18-SNAPSHOT 0.1.13 0.1.6 1.4.6 diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/.gitignore b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/pom.xml b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/pom.xml new file mode 100644 index 00000000..735bbe38 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/pom.xml @@ -0,0 +1,47 @@ + + + + + com.jiuyv.sptcc.agile + agile-research-gateway + 0.0.1-SNAPSHOT + + + 4.0.0 + agile-research-api + 0.0.1-SNAPSHOT + agile-research-api + agile-research-api + jar + + + 1.8 + 8 + 8 + + + + + com.fasterxml.jackson.core + jackson-annotations + + + org.springframework + spring-web + + + org.springframework + spring-context + + + org.apache.commons + commons-lang3 + + + org.springframework.boot + spring-boot-starter-validation + + + + diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/api/ProductDownloadApi.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/api/ProductDownloadApi.java new file mode 100644 index 00000000..b6ba20f4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/api/ProductDownloadApi.java @@ -0,0 +1,22 @@ +package com.jiuyv.sptcc.agile.research.api; + +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.io.IOException; + +/** + * @ClassName : PassengerProductApi + * @Description : 客流宝接口 + * @Author : sky + * @Date: 2023-06-06 18:43 + */ +public interface ProductDownloadApi { + + String PRE_PATH = "/agile-gateway/public/product/download.do"; + @PostMapping(PRE_PATH) + void downloadFile(@RequestBody @Validated ReqVo req) throws IOException; + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/api/RealLineFlow.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/api/RealLineFlow.java new file mode 100644 index 00000000..7b9fbf98 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/api/RealLineFlow.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.research.api; + +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.dto.RespVo; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @ClassName : PassengerProductApi + * @Description : 客流宝接口 + * @Author : sky + * @Date: 2023-06-06 18:43 + */ +public interface RealLineFlow { + + @PostMapping("/agile-research/public/realLineFlow") + RespVo realLineFlow(ReqVo req); + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/common/OrgCode.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/common/OrgCode.java new file mode 100644 index 00000000..3552ef99 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/common/OrgCode.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.research.common; + +/** + * The Interface OrgCode. 机构号 + * + * @author zsd + * @version 1.0.0 + * @since 2017-10-26 + * @company Shanghai JiuYv Software Systems CO.,LTD. + */ +public enum OrgCode { + + /** 本系统销售渠道 */ + MARKET, + + /** 对销售渠道网关 */ + API_GATE; + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/common/RespCode.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/common/RespCode.java new file mode 100644 index 00000000..aff9427d --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/common/RespCode.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.research.common; + +/** + * 返回码与返回描述 + * @ClassName : RespCode + * @Description : + * @Author : sky + * @Date: 2023-09-04 15:16 + */ +public enum RespCode { + /** success : . */ + SUCCESS("success","成功"), + /** business_error : 业务异常 */ + BUSINESS_ERROR("business_error","业务异常"), + /** input_not_valid : 输入不合法. */ + INPUT_NOT_VALID("input_not_valid","输入不合法"), + /** json_failed : json解析失败. */ + JSON_FAILED("json_failed","json解析失败"), + /** sign_check_failed : 请求验签失败. */ + SIGN_CHECK_FAILED("sign_check_failed","请求验签失败"), + /** decrypt_failed : 解密失败. */ + DECRYPT_FAILED("decrypt_failed","解密失败"), + /** sc_not_valid : 非法销售渠道代码. */ + SC_NOT_VALID("sc_not_valid","非法销售渠道代码"), + /** sub_sc_not_valid : 非法二级销售渠道代码. */ + SUB_SC_NOT_VALID("sub_sc_not_valid","非法二级销售渠道代码"), + /** sys_error : 系统异常. */ + SYS_ERROR("sys_error","未知异常"), + /** post_failed : 通信失败. */ + POST_FAILED("post_failed","通信失败"), + /** refused : 访问拒绝. */ + REFUSED("refused","访问拒绝"), + /** rate_limiting : 流量限制. */ + RATE_LIMITING("rate_limiting","流量限制"), + /** request_timeout : 请求超时. */ + REQUEST_TIMEOUT("request_timeout","请求超时"), + + ; + + private final String code; + private final String msg; + + RespCode(String code, String msg) { + this.code = code; + this.msg = msg; + } + + public String getCode() { + return code; + } + + public String getMsg() { + return msg; + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/common/ResultCode.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/common/ResultCode.java new file mode 100644 index 00000000..48731823 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/common/ResultCode.java @@ -0,0 +1,62 @@ +package com.jiuyv.sptcc.agile.research.common; + +public enum ResultCode { + + SUCCESS("success", "操作成功"), + PROCESS("process", "订单处理中,请稍后查询"), + FAILED("failed", "操作失败,请刷新重试"), + VALIDATE_FAILED("input_not_valid", "输入不合法"), + SYS_ERROR("sys_error", "系统异常"), + DATE_NOT_EXIST("date_not_exist", "数据不存在"), + UPDATE_FAILED("update_failed", "更新失败,版本过期"), + FORBIDDEN("forbidden", "禁止访问"), + ORG_NOT_FOUND("org_not_found", "该机构不存在"), + ORG_DATE_TIME_ERROR("org_date_time_error", "启动时间不在有效时间范围内"), + ORG_IP_WHILE_LIST("org_ip_while_list", "该ip不在允许的白名单范围"), + API_NOT_RIGHT("api_not_right", "api接口没有权限"), + API_BECOME_DUE("api_become_due", "api接口到期,请重新授权"), + API_HAS_ORG("api_has_org", "该api已绑定了机构"), + API_ERROR_STATUS("api_error_status", "数据状态不对"), + API_NOT_RELEASE("api_not_release", "api接口已注销"), + API_HAS_RELEASE("api_has_release", "api接口已注册"), + API_DELETE_ERROR("api_delete_error", "只能删除下架和待注册API"), + API_IS_DOWN("api_is_down", "机构权限为上架"), + API_CODE_HAS_USED("api_code_has_used", "交易码已被使用"), + API_PATH_HAS_USED("api_path_has_used", "该注册地址已被使用"), + API_REGISTER_CHECK_ERROR("api_register_check_error", "注册校验异常"), + API_IS_USED("api_is_used", "该API已经被机构使用,不能删除"), + DATA_TIME_NO_RIGHT("data_time_no_right", "没有该范围的数据权限"), + REPEAT_SUBMIT("duplicate_req_id", "请勿重复提交"), + AUTHORIZATION_LIMIT("authorization limit", "权限限制"), + ILLEGALLY("illegally request", "不合法请求"), + INPUT_NOT_VALID("input_not_valid", "输入不合法"), + DUPLICATE_REQ_ID("duplicate_req_id", "重复请求"), + BUSINESS_ERROR("business_error", "调用返回非成功"), + SQL_EXCEPTION("sql_lock_exception", "乐观锁异常"), + BATCH_EXCEPTION("batch_exception", "跑批数据异常"), + PORTAL_USER_HAS_BINGED("portal_user_has_binged", "该会员已经绑定机构,不能重复绑定"), + FILE_DOWN_FAIL("file_down_fail", "文件下载失败"), + FILE_DOWN_NO_RIGHT("file_down_no_right", "没有文件下载权限"), + FILE_DOWN_NO_EXIST("file_down_no_exist", "文件不存在"), + FILE_DOWN_DATA_ERROR("file_down_data_error", "只保留最近一个月的文件,T+4生成文件"); + + private String code; + private String message; + + private ResultCode(String code, String message) { + this.code = code; + this.message = message; + } + + public String getCode() { + return this.code; + } + + public String getMessage() { + return this.message; + } + + public static boolean success(String code) { + return SUCCESS.getCode().equalsIgnoreCase(code); + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/DownloadReq.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/DownloadReq.java new file mode 100644 index 00000000..2b189be1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/DownloadReq.java @@ -0,0 +1,33 @@ +package com.jiuyv.sptcc.agile.research.dto; + +import javax.validation.constraints.NotBlank; + +public class DownloadReq extends ReqBase{ + /** + */ + private static final long serialVersionUID = -6492287991244986952L; + + /** 报文内容 */ + @NotBlank + private String body; + + /** 签名 */ + @NotBlank + private String sign; + + public String getBody() { + return body; + } + + public void setBody(String body) { + this.body = body; + } + + public String getSign() { + return sign; + } + + public void setSign(String sign) { + this.sign = sign; + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/ReqBase.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/ReqBase.java new file mode 100644 index 00000000..395767ed --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/ReqBase.java @@ -0,0 +1,81 @@ +package com.jiuyv.sptcc.agile.research.dto; + + +import com.fasterxml.jackson.annotation.JsonFormat; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; +import java.util.Date; + +/** + * @ClassName : ReqBase + * @Description : 请求类基础报文 + * @Author : sky + * @Date: 2023-07-14 10:43 + */ +public class ReqBase implements Serializable { + + /** 序列化 */ + private static final long serialVersionUID = 1L; + + /** 秘钥版本号 */ + private String keyVersion; + /** + * 流水号,方便问题追踪 + */ + @NotBlank(message = "流水号不能为空") + private String seriNo; + + /** 机构号 */ + @NotBlank(message = "机构号不能为空") + private String orgCode; + /** + * 备用 + */ + private String subOrgCode; + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date timestamp; + + + public String getKeyVersion() { + return keyVersion; + } + + public void setKeyVersion(String keyVersion) { + this.keyVersion = keyVersion; + } + + public String getSeriNo() { + return seriNo; + } + + public void setSeriNo(String seriNo) { + this.seriNo = seriNo; + } + + public String getOrgCode() { + return orgCode; + } + + public void setOrgCode(String orgCode) { + this.orgCode = orgCode; + } + + public String getSubOrgCode() { + return subOrgCode; + } + + public void setSubOrgCode(String subOrgCode) { + this.subOrgCode = subOrgCode; + } + + public Date getTimestamp() { + return timestamp; + } + + public void setTimestamp(Date timestamp) { + this.timestamp = timestamp; + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/ReqVo.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/ReqVo.java new file mode 100644 index 00000000..25b5dba9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/ReqVo.java @@ -0,0 +1,55 @@ +package com.jiuyv.sptcc.agile.research.dto; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * 请求包装对象 + * @author jiuyv + * + */ +public class ReqVo extends ReqBase implements Serializable { + + + /** + * + */ + private static final long serialVersionUID = -6492287991244986952L; + + /** 报文内容 */ + @NotBlank + private String body; + + /** 签名 */ + @NotBlank + private String sign; + + /** + * @return the body + */ + public String getBody() { + return body; + } + + /** + * @param body the body to set + */ + public void setBody(String body) { + this.body = body; + } + + /** + * @return the sign + */ + public String getSign() { + return sign; + } + + /** + * @param sign the sign to set + */ + public void setSign(String sign) { + this.sign = sign; + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/RespVo.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/RespVo.java new file mode 100644 index 00000000..4942f819 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/RespVo.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.research.dto; + +import com.jiuyv.sptcc.agile.research.common.RespCode; + +import java.io.Serializable; + +/** + * 返回包装对象 + * @author jiuyv + * + */ +public class RespVo extends ReqBase implements Serializable { + + /** 序列化 */ + private static final long serialVersionUID = 1L; + + /** 返回码*/ + private String respCode; + + /** 返回说明 */ + private String respDesc; + + /** 返回码*/ + private String respSubCode; + + /** 返回说明 */ + private String respSubDesc; + + /** 报文内容 */ + private String body; + + /** 签名 */ + private String sign; + + public RespVo() { + } + + public RespVo(String respCode, String respDesc) { + this.respCode = respCode; + this.respDesc = respDesc; + } + + /** + * @return the body + */ + public String getBody() { + return body; + } + + /** + * @param body the body to set + */ + public void setBody(String body) { + this.body = body; + } + + /** + * @return the sign + */ + public String getSign() { + return sign; + } + + /** + * @param sign the sign to set + */ + public void setSign(String sign) { + this.sign = sign; + } + + /** + * @return the respCode + */ + public String getRespCode() { + return respCode; + } + + /** + * @param respCode the respCode to set + */ + public void setRespCode(String respCode) { + this.respCode = respCode; + } + + /** + * @return the respDesc + */ + public String getRespDesc() { + return respDesc; + } + + /** + * @param respDesc the respDesc to set + */ + public void setRespDesc(String respDesc) { + this.respDesc = respDesc; + } + + public String getRespSubCode() { + return respSubCode; + } + + public void setRespSubCode(String respSubCode) { + this.respSubCode = respSubCode; + } + + public String getRespSubDesc() { + return respSubDesc; + } + + public void setRespSubDesc(String respSubDesc) { + this.respSubDesc = respSubDesc; + } + + public static RespVo error(){ + return new RespVo(RespCode.SYS_ERROR.getCode(),RespCode.SYS_ERROR.getMsg()); + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/base/Transcode.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/base/Transcode.java new file mode 100644 index 00000000..7aaa940d --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-api/src/main/java/com/jiuyv/sptcc/agile/research/dto/base/Transcode.java @@ -0,0 +1,19 @@ +package com.jiuyv.sptcc.agile.research.dto.base; + +import javax.validation.constraints.NotBlank; + +public class Transcode { + /** + * 交易码 + */ + @NotBlank(message = "交易码不能为空") + private String transCode; + + public String getTransCode() { + return transCode; + } + + public void setTransCode(String transCode) { + this.transCode = transCode; + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/.gitignore b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/.gitignore new file mode 100644 index 00000000..549e00a2 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/pom.xml b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/pom.xml new file mode 100644 index 00000000..d570bef8 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/pom.xml @@ -0,0 +1,165 @@ + + + + + com.jiuyv.sptcc.agile + agile-research-gateway + 0.0.1-SNAPSHOT + + + 4.0.0 + agile-research-service + 0.0.1-SNAPSHOT + agile-research-service + agile-research-service + jar + + + 1.8 + UTF-8 + UTF-8 + true + + + + + + com.jiuyv.sptcc.agile + agile-data-api + + + + org.springframework.boot + spring-boot-starter + + + + com.jiuyv.sptcc.agile + agile-research-api + + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.boot + spring-boot-starter-actuator + + + + org.springframework.boot + spring-boot-starter-security + + + + org.springframework.cloud + spring-cloud-starter-sleuth + + + + org.springframework.cloud + spring-cloud-starter-openfeign + + + + io.github.openfeign + feign-okhttp + + + + + org.apache.commons + commons-lang3 + + + + commons-codec + commons-codec + + + com.fasterxml.uuid + java-uuid-generator + + + + + net.logstash.logback + logstash-logback-encoder + + + + + org.springframework.boot + spring-boot-starter-cache + + + + com.github.ben-manes.caffeine + caffeine + + + + + com.fasterxml.jackson.core + jackson-core + + + + + + + + com.jiuyv.agile + agile-common + + + + + com.jiuyv.spring + monitor-starter-v2 + + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.8.1 + + 1.8 + 1.8 + UTF-8 + + + + org.springframework.boot + spring-boot-maven-plugin + ${spring-boot.version} + + com.jiuyv.sptcc.agile.research.ResearchServiceApplication + true + + + + repackage + + repackage + + + + + + + + diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/ResearchServiceApplication.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/ResearchServiceApplication.java new file mode 100644 index 00000000..f0f5c581 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/ResearchServiceApplication.java @@ -0,0 +1,21 @@ +package com.jiuyv.sptcc.agile.research; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.openfeign.EnableFeignClients; + + +/** + * @ClassName: ResearchServiceApplication + * @Description: 启动类 + * @author: sky + */ +@SpringBootApplication +@EnableFeignClients +public class ResearchServiceApplication { + + public static void main(String[] args) { + SpringApplication.run(ResearchServiceApplication.class, args); + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/SectionHistogram.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/SectionHistogram.java new file mode 100644 index 00000000..6d308fe0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/SectionHistogram.java @@ -0,0 +1,209 @@ +package com.jiuyv.sptcc.agile.research.common; + +import io.prometheus.client.Collector.MetricFamilySamples; +import io.prometheus.client.Counter; +import io.prometheus.client.Histogram; +import io.prometheus.client.Histogram.Timer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.List; + +/** + * 断面摘要 + * + * @author chen_yang + * @create 2018-09-05-16:24 + */ +public class SectionHistogram { + + private static final Logger LOGGER = LoggerFactory.getLogger(SectionHistogram.class); + + /*交易合计(总数 总耗时 平均耗时)*/ + private static Histogram histogram; + /*交易失败总数 交易成功总数*/ + private static Counter counter; + + /*交易断面合计*/ + private static Histogram timingCleanHistogram; + /*定时计数器 每日0点清空*/ + private static Counter timingCleanCounter; + /*定时错误计数器 每日0点清空*/ + private static Counter errorTimingCleanCounter; + + /** + * @param subsystem 子系统名称 + * @param bucketParameters 桶基准值 + */ + public SectionHistogram(String subsystem, double... bucketParameters) { + Histogram.Builder totalHBuilder = Histogram.build() + .subsystem(subsystem) + .name("summary_histogram") + .labelNames(LabelName.ORG_CODE, LabelName.TRANS_CODE) + .help("总请求统计,根据orgCode和transCode划分"); + + Histogram.Builder timingCleanHBuilder = Histogram.build() + .subsystem(subsystem) + .name("timing_clean_histogram") + .labelNames(LabelName.ORG_CODE, LabelName.TRANS_CODE) + .help("断面请求数统计,根据orgCode和transCode划分"); + + if (null != bucketParameters && 0 != bucketParameters.length) { + totalHBuilder = totalHBuilder.buckets(bucketParameters); + timingCleanHBuilder = timingCleanHBuilder.buckets(bucketParameters); + } + + histogram = totalHBuilder.register(); + timingCleanHistogram = timingCleanHBuilder.register(); + + // 统计 成功/失败 总次数/总耗时 + counter = Counter.build() + .subsystem(subsystem) + .name("summary_counter") + .labelNames(LabelName.ORG_CODE, LabelName.TRANS_CODE, LabelName.SUMMARY_TYPE) + .help("总请求数统计,根据orgCode,transCode,成功/失败划分") + .register(); + + timingCleanCounter = Counter.build() + .subsystem(subsystem) + .name("timing_clean_counter") + .labelNames(LabelName.ORG_CODE, LabelName.TRANS_CODE, LabelName.SUMMARY_TYPE) + .help("每日计数器,根据orgCode,transCode,成功/失败 划分") + .register(); + + errorTimingCleanCounter = Counter.build() + .subsystem(subsystem) + .name("error_timing_clean_counter") + .labelNames(LabelName.ORG_CODE, LabelName.TRANS_CODE, LabelName.ERROR_CODE, LabelName.ERROR_MSG) + .help("每次错误计数器,根据orgCode,transCode,errorCode划分") + .register(); + } + + /** + * 请求累加 + * + * @param transCode 交易代码 + * @return timer计时器 + */ + public TimerTuple inc(String orgCode, String transCode) { + return TimerTuple.build( + histogram.labels(orgCode, transCode).startTimer(), + timingCleanHistogram.labels(orgCode, transCode).startTimer() + ); + } + + /** + * 应答累加 + * + * @param orgCode 请求机构代码 + * @param transCode 交易代码 + * @param timerTuple 请求累加时返回的计时器 + * @param isSuccess 应答返回是否成功 + */ + public void incResp(String orgCode, String transCode, + TimerTuple timerTuple, boolean isSuccess) { + // 请求数统计累加 & 获取 处理耗时数 + timerTuple.getTotalTimer().observeDuration(); + // 成功/失败 应答总数/应答总耗时 累加 + ResponseType responseType = + isSuccess ? ResponseType.SUCCESS : ResponseType.FAIL; + // + counter.labels(orgCode, transCode, responseType.value).inc(); + timingCleanCounter.labels(orgCode, transCode, responseType.value).inc(); + timerTuple.getTimingCleanTimer().observeDuration(); + } + + /** + * 应答累加 如果 isSuccess 值为 false 则记录 respCode到 每日累加器,每日0点清空 + * + * @param orgCode 请求机构代码 + * @param transCode 交易代码 + * @param timerTuple 请求累加时返回的计时器 + * @param respCode 应答码 + * @param isSuccess 应答返回是否成功 + */ + public void incResp(String orgCode, String transCode, + TimerTuple timerTuple, String respCode, String respDesc, boolean isSuccess) { + if (!isSuccess) { + errorTimingCleanCounter.labels(orgCode, transCode, respCode, respDesc).inc(); + } + + incResp(orgCode, transCode, timerTuple, isSuccess); + } + + /** + * 定时重置接口 重置所有定时计数器 + */ + public void resetTiming() { + LOGGER.info("计数器重置触发"); + timingCleanCounter.clear(); + timingCleanHistogram.clear(); + errorTimingCleanCounter.clear(); + } + + public List getMonitoringData() { + List familySamples = histogram.collect(); + familySamples.addAll(counter.collect()); + familySamples.addAll(timingCleanHistogram.collect()); + familySamples.addAll(timingCleanCounter.collect()); + return familySamples; + } + + /** + * 应答类型 + */ + public enum ResponseType { + SUCCESS("SUCCESS", "SUCCESS_TIME"), + FAIL("FAIL", "FAIL_TIME"), + TOTAL("TOTAL", "TOTAL_TIME"); + public final String value; + public final String timeValue; + + ResponseType(String value, String timeValue) { + this.value = value; + this.timeValue = timeValue; + } + } + + /** + * {@link Histogram}用数据标签 + */ + public static class LabelName { + + public static final String ORG_CODE = "orgCode"; + public static final String TRANS_CODE = "transCode"; + public static final String SUMMARY_TYPE = "type"; + public static final String ERROR_CODE = "errorCode"; + public static final String ERROR_MSG = "errorMsg"; + } + + /** + * 时间元组(存储计时器{@link Timer}) + */ + public static final class TimerTuple { + + public final Timer totalTimer; + public final Timer timingCleanTimer; + + private TimerTuple(Timer totalTimer, Timer timingCleanTimer) { + this.totalTimer = totalTimer; + this.timingCleanTimer = timingCleanTimer; + } + + /** + * @param totalTimer 总计时器 + * @param sectionTimer 断面计时器 + */ + public static TimerTuple build(Timer totalTimer, Timer sectionTimer) { + return new TimerTuple(totalTimer, sectionTimer); + } + + public Timer getTotalTimer() { + return totalTimer; + } + + public Timer getTimingCleanTimer() { + return timingCleanTimer; + } + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/constants/Constants.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/constants/Constants.java new file mode 100644 index 00000000..b60ff8ba --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/constants/Constants.java @@ -0,0 +1,18 @@ +package com.jiuyv.sptcc.agile.research.common.constants; + +/** + * @ClassName : Constants + * @Description : + * @Author : sky + * @Date: 2023-07-14 16:05 + */ +public final class Constants { + + public static final String USE_NAME = "Cookie"; + public static final String TOKEN = "token"; + public static final String MODULE = "agile-api-gateway"; + + private Constants() throws IllegalAccessException { + throw new IllegalAccessException(); + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/enums/ApiCodeEnum.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/enums/ApiCodeEnum.java new file mode 100644 index 00000000..79f034dc --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/enums/ApiCodeEnum.java @@ -0,0 +1,82 @@ +// package com.jiuyv.sptcc.agile.research.common.enums; +// +// +// import com.jiuyv.sptcc.agile.research.plugin.BaseProcess; +// import com.jiuyv.sptcc.agile.research.service.impl.*; +// +// /** +// * Api编码与对应关系 +// * +// * @ClassName : ApiCodeEnum +// * @Author : sky +// * @Date: 2023-07-13 18:42 +// */ +// public enum ApiCodeEnum { +// LINE_HOUR("lineHour", LineHourRequest.class, LineMetricHourImpl.class, "获取线路小时客流指标"), +// LINE_DAY("lineDay", LineDayReqRequest.class, LineMetricDayServiceImpl.class, "获取线路每日客流指标"), +// LINE_MONTH("lineMonth", LineMonthRequest.class, LineMetricMonthServiceImpl.class, "获取线路每月客流指标"), +// STATION_HOUR("stationHour", StationHourRequest.class, LineStationMetricHourImpl.class, "获取线路站点小时客流指标"), +// STATION_DAY("stationDay", StationDayRequest.class, LineStationMetricDayImpl.class, "获取线路站点每日客流指标"), +// STATION_MONTH("stationMonth", StationMonthRequest.class, LineStationMetricMonthImpl.class, "获取线路站点每月客流指标"), +// STATION_TRANS_HOUR("stationTransHour", StationTransHourRequest.class, StationTransMetricHourImpl.class, "获取线路站点小时换乘指标"), +// STATION_TRANS_DAY("stationTransDay", StationTransDayRequest.class, StationTransMetricDayImpl.class, "获取线路站点每日换乘指标"), +// STATION_TRNAS_MONTH("stationTransMonth", StationTransMonthRequest.class, StationTransMetricMonthImpl.class, "站点换乘月指标"), +// STATION_FREQ_DAY("stationFreqDay", StationFreqDayRequest.class, StationFreqMetricDayImpl.class, "站点常乘客日指标"), +// STATION_FREQ_MONTH("stationFreqMonth", StationFreqMonthRequest.class, StationFreqMetricMonthImpl.class, "站点常乘客日指标"), +// STATION_FREQ_TRANS_DAY("stationFreqTransDay", StationFreqTransDayRequest.class, StationFreqTransDayImpl.class, "站点常乘客换乘月日指标"), +// STATION_FREQ_TRANS_MONTH("stationFreqTransMonth", StationFreqTransMonthRequest.class, StationFreqTransMonthImpl.class, "站点常乘客换乘月指标"), +// ROUTE_DAY("routeDay", RouteDayRequest.class, RouteMetricDayImpl.class, "班次客流量"), +// STRING("", String.class, AgileApiImpl.class, "敏捷App"), +// DWONLOAD("download", DownLoadRequest.class, FileDownloadImpl.class, "敏捷接口"), +// +// ; +// +// private final String code; +// +// private final Class clazz; +// +// private final Class bean; +// +// private final String msg; +// +// ApiCodeEnum(String code, Class clazz, Class bean, String msg) { +// this.code = code; +// this.clazz = clazz; +// this.bean = bean; +// this.msg = msg; +// } +// +// public static ApiCodeEnum getEnum(String code) { +// for (ApiCodeEnum value : ApiCodeEnum.values()) { +// if (value.getCode().equals(code)) { +// return value; +// } +// } +// return null; +// } +// +// public static Class getEnumClass(String code) { +// for (ApiCodeEnum value : ApiCodeEnum.values()) { +// if (value.getCode().equals(code)) { +// return value.getClazz(); +// } +// } +// return null; +// } +// +// public String getCode() { +// return code; +// } +// +// public Class getClazz() { +// return clazz; +// } +// +// public Class getBean() { +// return bean; +// } +// +// public String getMsg() { +// return msg; +// } +// } diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/enums/ContentTypeEnum.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/enums/ContentTypeEnum.java new file mode 100644 index 00000000..e6be2e04 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/enums/ContentTypeEnum.java @@ -0,0 +1,25 @@ +package com.jiuyv.sptcc.agile.research.common.enums; + +/** + * @author ShenTuZhiGang + * @version 1.0.0 + * @date 2020-09-27 22:16 + */ +public enum ContentTypeEnum { + + FORM("application/x-www-from-urlencoded"), + MULTIPART("multipart/form-data"), + JSON("application/json"); + + private final static String ENCODING = "utf-8"; + private final String value; + + ContentTypeEnum(String value) { + this.value = value + ";charset=" + ENCODING; + } + + @Override + public String toString() { + return value; + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/enums/ReqMethodEnum.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/enums/ReqMethodEnum.java new file mode 100644 index 00000000..aae021d0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/enums/ReqMethodEnum.java @@ -0,0 +1,12 @@ +package com.jiuyv.sptcc.agile.research.common.enums; + +/** + * @ClassName : ReqMethedEnum + * @Description : 请求方式 + * @Author : sky + * @Date: 2023-09-04 14:08 + */ +public enum ReqMethodEnum { + POST, + GET +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/exception/BaseException.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/exception/BaseException.java new file mode 100644 index 00000000..e34e38d4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/exception/BaseException.java @@ -0,0 +1,54 @@ +package com.jiuyv.sptcc.agile.research.common.exception; + + +import com.jiuyv.sptcc.agile.research.common.ResultCode; + +/** + * @author shu_k + * @Description: 基础异常 + * @date 2021年12月3日 下午5:55:56 + */ +public class BaseException extends RuntimeException { + + /** + * + */ + private static final long serialVersionUID = 1L; + /** + * 错误码 + */ + private final String code; + + /** + * 错误消息 + */ + private final String defaultMessage; + + public BaseException(String defaultMessage) { + super(defaultMessage); + this.code = ResultCode.SYS_ERROR.getCode(); + this.defaultMessage = defaultMessage; + } + + public BaseException(String code, String defaultMessage) { + super(defaultMessage); + this.code = code; + this.defaultMessage = defaultMessage; + } + + public BaseException(ResultCode iErrorCode) { + super(iErrorCode.getMessage()); + this.code = iErrorCode.getCode(); + this.defaultMessage = iErrorCode.getMessage(); + } + + public String getCode() { + return code; + } + + public String getDefaultMessage() { + return defaultMessage; + } + + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/interceptor/GolabExceptionHandler.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/interceptor/GolabExceptionHandler.java new file mode 100644 index 00000000..8ff6ae74 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/interceptor/GolabExceptionHandler.java @@ -0,0 +1,137 @@ +package com.jiuyv.sptcc.agile.research.common.interceptor; + + +import com.jiuyv.sptcc.agile.research.common.RespCode; +import com.jiuyv.sptcc.agile.research.common.ResultCode; +import com.jiuyv.sptcc.agile.research.common.exception.BaseException; +import com.jiuyv.sptcc.agile.research.dto.RespVo; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.validation.BindException; +import org.springframework.validation.BindingResult; +import org.springframework.validation.FieldError; +import org.springframework.validation.ObjectError; +import org.springframework.web.bind.MethodArgumentNotValidException; +import org.springframework.web.bind.MissingServletRequestParameterException; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.RestControllerAdvice; +import org.springframework.web.servlet.NoHandlerFoundException; + +import javax.servlet.http.HttpServletRequest; +import javax.validation.ConstraintViolationException; +import javax.validation.ValidationException; +import java.util.List; +import java.util.Objects; +import java.util.stream.Collectors; + +/** + * @author shu_k + * @Description: 全局异常处理 + * @date 2022年1月5日 下午1:54:37 + */ +@RestControllerAdvice +public class GolabExceptionHandler { + + private static final Logger logger = LoggerFactory.getLogger(GolabExceptionHandler.class); + + @ExceptionHandler(BaseException.class) + public RespVo handlerNoFoundException(BaseException e) { + logger.info("自定义异常,code: {},message: {}", e.getCode(), e.getDefaultMessage()); + RespVo respvO = new RespVo(); + respvO.setRespCode(RespCode.BUSINESS_ERROR.getCode()); + respvO.setRespDesc(RespCode.BUSINESS_ERROR.getMsg()); + respvO.setRespSubCode(e.getCode()); + respvO.setRespSubDesc(e.getMessage()); + return respvO; + } + + @ExceptionHandler(ValidationException.class) + public RespVo validedBindException(ValidationException e) { + logger.info("校验报错:{}", e.getMessage()); + RespVo respvO = new RespVo(); + respvO.setRespCode(ResultCode.INPUT_NOT_VALID.getCode()); + respvO.setRespDesc(e.getMessage()); + return respvO; + } + + /** + * 参数校验结果异常处理 + */ + @ExceptionHandler(MethodArgumentNotValidException.class) + public RespVo methodArgumentNotValidExceptionHandler(MethodArgumentNotValidException e) { + logger.info("参数校验结果异常处理"); + BindingResult bindingResult = e.getBindingResult(); + List list = bindingResult.getAllErrors(); + StringBuilder builder = new StringBuilder(); + for (ObjectError objectError : list) { + FieldError fieldError = (FieldError) objectError; + builder.append(fieldError.getField()).append(":").append(fieldError.getDefaultMessage()).append(";"); + } + logger.info("校验报错:{}", e.getMessage()); + RespVo respvO = new RespVo(); + respvO.setRespCode(ResultCode.INPUT_NOT_VALID.getCode()); + respvO.setRespDesc(builder.toString()); + return respvO; + } + + + @ExceptionHandler(BindException.class) + public RespVo bindException(BindException e) { + logger.info("参数校验错误 {}", e.getMessage()); + List list = e.getBindingResult().getAllErrors(); + StringBuilder builder = new StringBuilder(); + for (ObjectError objectError : list) { + FieldError fieldError = (FieldError) objectError; + builder.append(fieldError.getField()).append(":").append(fieldError.getDefaultMessage()).append(";"); + } + RespVo respvO = new RespVo(); + respvO.setRespCode(ResultCode.INPUT_NOT_VALID.getCode()); + respvO.setRespDesc(builder.toString()); + return respvO; + } + + @ExceptionHandler(NoHandlerFoundException.class) + public RespVo handlerNoFoundException(NoHandlerFoundException e) { + logger.warn(e.getMessage(), e); + RespVo respvO = new RespVo(); + respvO.setRespCode(ResultCode.INPUT_NOT_VALID.getCode()); + respvO.setRespDesc("路径不存在,请检查路径是否正确"); + return respvO; + } + + /** + * 方法参数校验异常 Validate + * + * @param request + * @param ex + * @return + */ + @ExceptionHandler(ConstraintViolationException.class) + public RespVo handleValidationException(HttpServletRequest request, ConstraintViolationException ex) { + logger.info("请求地址:{}, 异常: {}", request.getRequestURI(), ex); + String collect = ex.getConstraintViolations().stream().filter(Objects::nonNull) + .map(cv -> cv.getPropertyPath() + ": " + cv.getMessage()) + .collect(Collectors.joining(", ")); + RespVo respvO = new RespVo(); + respvO.setRespCode(ResultCode.INPUT_NOT_VALID.getCode()); + respvO.setRespDesc(collect); + return respvO; + } + + /** + * 访问接口参数不全 + * + * @param request + * @param pe + * @return + */ + @ExceptionHandler(MissingServletRequestParameterException.class) + public RespVo missingServletRequestParameterException(HttpServletRequest request, MissingServletRequestParameterException pe) { + logger.info("请求地址:{},\n异常: {}", request.getRequestURI(), pe); + RespVo respvO = new RespVo(); + respvO.setRespCode(ResultCode.INPUT_NOT_VALID.getCode()); + respvO.setRespDesc(pe.getMessage()); + return respvO; + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/model/AgileRequest.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/model/AgileRequest.java new file mode 100644 index 00000000..8e3571fc --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/model/AgileRequest.java @@ -0,0 +1,80 @@ +package com.jiuyv.sptcc.agile.research.common.model; + +/** + * @ClassName : AgileRequest + * @Description : + * @Author : sky + * @Date: 2023-09-01 18:59 + */ +public class AgileRequest { + + private String paramType; + + private String paramComment; + + private String nullable; + + private String defaultValue; + + private String paramName; + + private String whereType; + + private String exampleValue; + + public String getParamType() { + return paramType; + } + + public void setParamType(String paramType) { + this.paramType = paramType; + } + + public String getParamComment() { + return paramComment; + } + + public void setParamComment(String paramComment) { + this.paramComment = paramComment; + } + + public String getNullable() { + return nullable; + } + + public void setNullable(String nullable) { + this.nullable = nullable; + } + + public String getDefaultValue() { + return defaultValue; + } + + public void setDefaultValue(String defaultValue) { + this.defaultValue = defaultValue; + } + + public String getParamName() { + return paramName; + } + + public void setParamName(String paramName) { + this.paramName = paramName; + } + + public String getWhereType() { + return whereType; + } + + public void setWhereType(String whereType) { + this.whereType = whereType; + } + + public String getExampleValue() { + return exampleValue; + } + + public void setExampleValue(String exampleValue) { + this.exampleValue = exampleValue; + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/model/ResultBean.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/model/ResultBean.java new file mode 100644 index 00000000..4ee7b798 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/model/ResultBean.java @@ -0,0 +1,118 @@ +package com.jiuyv.sptcc.agile.research.common.model; + +/** + * 返回错误信息 + * + * @author jiuyv + */ +public class ResultBean { + + /** + * 是否成功 + */ + private boolean success; + + /** + * 返回码 + */ + private String respCode; + + /** + * 返回信息 + */ + private String respMessage; + + /** + * 数据 + */ + private T data; + + /** + * 构造方法 + */ + public ResultBean() { + + } + + + /** + * 构造方法 + * + * @param respCode + * @param respMessage + */ + public ResultBean(boolean success, String respCode, String respMessage) { + this.success = success; + this.respCode = respCode; + this.respMessage = respMessage; + } + + /** + * 构造方法 + * + * @param respCode + * @param respMessage + */ + public ResultBean(boolean success, String respCode, String respMessage, T data) { + this.success = success; + this.respCode = respCode; + this.respMessage = respMessage; + this.data = data; + } + + /** + * @return the respCode + */ + public String getRespCode() { + return respCode; + } + + /** + * @param respCode the respCode to set + */ + public void setRespCode(String respCode) { + this.respCode = respCode; + } + + /** + * @return the respMessage + */ + public String getRespMessage() { + return respMessage; + } + + /** + * @param respMessage the respMessage to set + */ + public void setRespMessage(String respMessage) { + this.respMessage = respMessage; + } + + /** + * @return the data + */ + public T getData() { + return data; + } + + /** + * @param data the data to set + */ + public void setData(T data) { + this.data = data; + } + + /** + * @return the success + */ + public boolean isSuccess() { + return success; + } + + /** + * @param success the success to set + */ + public void setSuccess(boolean success) { + this.success = success; + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/web/BaseController.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/web/BaseController.java new file mode 100644 index 00000000..845d8f40 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/common/web/BaseController.java @@ -0,0 +1,147 @@ +package com.jiuyv.sptcc.agile.research.common.web; + + +import com.jiuyv.sptcc.agile.research.common.OrgCode; +import com.jiuyv.sptcc.agile.research.common.RespCode; +import com.jiuyv.sptcc.agile.research.common.ResultCode; +import com.jiuyv.sptcc.agile.research.common.SectionHistogram; +import com.jiuyv.sptcc.agile.research.common.exception.BaseException; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.dto.RespVo; +import io.micrometer.core.instrument.util.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.scheduling.annotation.Scheduled; + +/** + * 基础controller层父类 + * + * @ClassName : BaseController + * @Description : 基础controller层父类 + * @Author : sky + * @Date: 2023-07-13 09:57 + */ +public class BaseController { + + /** + * The Constant LOGGER. + */ + private static final Logger LOGGER = LoggerFactory.getLogger(BaseController.class); + + /** + * 普罗米修斯探针 + */ + private static final SectionHistogram histogram = new SectionHistogram(OrgCode.API_GATE.name()); + + protected static RespVo buildRes(ReqVo req) { + RespVo respvO = new RespVo(); + respvO.setKeyVersion(req.getKeyVersion()); + respvO.setSeriNo(req.getSeriNo()); + respvO.setOrgCode(req.getOrgCode()); + respvO.setSubOrgCode(req.getSubOrgCode()); + respvO.setTimestamp(req.getTimestamp()); + // respvO.setTransCode(req.getTransCode()); + return respvO; + } + + /** + * 探针增加计数 + * + * @param req 请求对象 + * @param transType 交易类型 + * @return 计时器 + */ + public SectionHistogram.TimerTuple incReq(ReqVo req, String transType) { + try { + // 销售渠道不为空,增加计数 + if (StringUtils.isNotBlank(req.getOrgCode())) { + SectionHistogram.TimerTuple timerTuple = histogram.inc(req.getOrgCode(), transType); + LOGGER.debug("incReq success scCode:【{}】, transType:【{}】", req.getOrgCode(), transType); + return timerTuple; + } + return null; + } catch (Exception e) { + LOGGER.error("incReq error", e); + } + return null; + } + + /** + * 探针增加计数 + * + * @param orgCode 机构号 + * @param transType 交易类型 + * @param timerTuple 计时器 + * @param respCode 返回码 + * @param respDesc 返回说明 + * @return 计时器 + */ + public void incResp(String orgCode, String transType, SectionHistogram.TimerTuple timerTuple, String respCode, String respDesc) { + try { + // 计时器不为空 + if (timerTuple != null) { + boolean isSuccess = RespCode.SUCCESS.getCode().equals(respCode); + // success代表成功 + histogram.incResp(orgCode, transType, timerTuple, respCode, respDesc, isSuccess); + LOGGER.debug("incResp success orgCode:【{}】, transType:【{}】", orgCode, transType); + } + } catch (Exception e) { + LOGGER.error("incResp error", e); + } + } + + @Scheduled(cron = "0 0 0 * * ?") + public void resetTiming() { + histogram.resetTiming(); + } + + /** + * 组装返回报文 + * + * @param req 通用请求体 + * @param code 返回码 + * @param message 返回报文 + * @param e 异常 + * @return + */ + protected RespVo generateErrorResp(ReqVo req, String code, String message, BaseException e) { + RespVo resp = generateErrorResp(req, code, message); + return getRespVo(e, resp); + } + + protected RespVo generateErrorResp(ReqVo req, BaseException e) { + RespVo resp = buildRes(req); + resp.setRespCode(RespCode.BUSINESS_ERROR.getCode()); + resp.setRespDesc(RespCode.BUSINESS_ERROR.getMsg()); + return getRespVo(e, resp); + } + + private RespVo getRespVo(BaseException e, RespVo resp) { + if (e != null) { + if (ResultCode.API_NOT_RIGHT.getCode().equals(e.getCode()) + || ResultCode.ORG_IP_WHILE_LIST.getCode().equals(e.getCode()) + || ResultCode.API_IS_DOWN.getCode().equals(e.getCode())) { + resp.setRespDesc(RespCode.REFUSED.getMsg()); + resp.setRespCode(RespCode.REFUSED.getCode()); + } + resp.setSubOrgCode(e.getCode()); + resp.setSubOrgCode(e.getMessage()); + } + return resp; + } + + /** + * 组装失败错误返回对象 + * + * @param req 输入对象 + * @param code 返回码 + * @param message 返回码解释 + * @throws BaseException 业务异常 + */ + protected RespVo generateErrorResp(ReqVo req, String code, String message) { + RespVo resp = buildRes(req); + resp.setRespCode(code); + resp.setRespDesc(message); + return resp; + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/ActuatorSecurityConfig.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/ActuatorSecurityConfig.java new file mode 100644 index 00000000..2cb5e64e --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/ActuatorSecurityConfig.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.research.config; + + +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.env.Environment; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; + +@Configuration +@EnableWebSecurity +public class ActuatorSecurityConfig extends WebSecurityConfigurerAdapter { + + @Autowired + Environment env; + + @Override + protected void configure(HttpSecurity security) throws Exception { + + String contextPath = env.getProperty("management.endpoints.web.base-path"); + if (StringUtils.isEmpty(contextPath)) { + contextPath = "/actuator"; + } + security.csrf().disable(); + security.authorizeRequests() + .antMatchers("/**" + contextPath + "/serviceregistry", "/**" + contextPath + "/refresh") + .access("hasIpAddress(\"127.0.0.1\")") + .antMatchers("/**" + contextPath + "/**") + .authenticated() + .anyRequest() + .permitAll() + .and() + .httpBasic(); + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/CustomFeignRequestInterceptor.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/CustomFeignRequestInterceptor.java new file mode 100644 index 00000000..6a3423cb --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/CustomFeignRequestInterceptor.java @@ -0,0 +1,28 @@ +package com.jiuyv.sptcc.agile.research.config; + + +import com.jiuyv.sptcc.agile.research.common.constants.Constants; +import com.jiuyv.sptcc.agile.research.utils.MD5; +import feign.RequestInterceptor; +import feign.RequestTemplate; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.context.annotation.Configuration; + +@Configuration +public class CustomFeignRequestInterceptor implements RequestInterceptor { + + @Value("${spring.application.name}") + private String name; + + @Override + public void apply(RequestTemplate template) { + // 核心网关验证接口调用的合法性 + String token = null; + try { + token = name.concat(":").concat(MD5.md5(name)); + } catch (Exception e) { + // + } + template.header(Constants.TOKEN, token); + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/FeignOkHttpConfig.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/FeignOkHttpConfig.java new file mode 100644 index 00000000..502a63b4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/FeignOkHttpConfig.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.research.config; + +import feign.Feign; +import okhttp3.Dispatcher; +import org.springframework.boot.autoconfigure.AutoConfigureBefore; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; +import org.springframework.cloud.openfeign.FeignAutoConfiguration; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; + +/** + * @author shu_k + * @Description: okhttp配置 + * @date 2021年12月31日 下午2:49:29 + */ +@Configuration +@ConditionalOnClass(Feign.class) +@AutoConfigureBefore(FeignAutoConfiguration.class) +public class FeignOkHttpConfig { + + @Bean + public okhttp3.OkHttpClient okHttpClient() { + Dispatcher pooledispatcher = new Dispatcher(); + pooledispatcher.setMaxRequestsPerHost(10000); + pooledispatcher.setMaxRequests(10000); + return new okhttp3.OkHttpClient.Builder().dispatcher(pooledispatcher).build(); + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/aop/LogAspect.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/aop/LogAspect.java new file mode 100644 index 00000000..f5e107e9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/aop/LogAspect.java @@ -0,0 +1,112 @@ +package com.jiuyv.sptcc.agile.research.config.aop; + +import com.jiuyv.sptcc.agile.research.utils.ExceptionUtil; +import com.jiuyv.sptcc.agile.research.utils.JacksonUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; +import org.springframework.web.multipart.MultipartFile; + +import javax.servlet.ServletRequest; +import javax.servlet.ServletResponse; +import javax.servlet.http.HttpServletRequest; + +/** + * @Description: 请求日志打印和记录 + * @author shu_k + * @date 2022年4月5日 下午10:26:23 + */ +@Aspect +@Component +public class LogAspect { + + private static final Logger LOGGER = LoggerFactory.getLogger(LogAspect.class); + + @Pointcut("(execution(public * com.jiuyv.sptcc.agile.research.controller..*.*(..)))") + public void controllerPointcut() { + // 切点 + } + + @Around("controllerPointcut()") + public Object doAround(ProceedingJoinPoint proceedingJoinPoint) throws Throwable { + long startTime = System.currentTimeMillis(); + ServletRequestAttributes attributes = (ServletRequestAttributes) RequestContextHolder.getRequestAttributes(); + if (attributes == null) { + return null; + } + HttpServletRequest request = attributes.getRequest(); + String requestUri = request.getRequestURI();// 请求的Uri + String ip = request.getRemoteAddr(); + String requestMethod = request.getMethod(); + Object[] arguments = getArguments(proceedingJoinPoint.getArgs()); + LOGGER.info("请求地址: {} ,请示方法{}", requestUri, requestMethod); + LOGGER.info("远程地址: {}", ip); + String traceId = request.getHeader("traceId"); + String spanId = request.getHeader("spanId"); + LOGGER.info("traceId: {}, spanId :{}", traceId,spanId); + this.printRequestJson(arguments); + Object result; + try { + result = proceedingJoinPoint.proceed(); + this.printRes(result); + } catch (Exception e) { + ExceptionUtil.printException(e, LOGGER); + throw e; + } + LOGGER.info("------------- 结束 耗时:{} ms -------------", System.currentTimeMillis() - startTime); + return result; + } + + private Object[] getArguments(Object[] args) { + Object[] arguments = new Object[args.length]; + for (int i = 0; i < args.length; i++) { + if (args[i] instanceof ServletRequest || args[i] instanceof ServletResponse + || args[i] instanceof MultipartFile) { + continue; + } + arguments[i] = args[i]; + } + return arguments; + } + + private void printRequestJson(Object[] arguments) { + String request = JacksonUtil.parseArray(arguments); + LOGGER.info("请求参数: {}", request); + } + + private void printRes(Object obj) { + String result = null; + if (null == obj || obj instanceof ServletResponse) { + result = "****stream******"; + } + else if (obj instanceof CharSequence) { + result = (String) obj; + } + else if (obj instanceof Boolean) { + result = obj.toString(); + } + //分页查询结果不打印 + else if(obj instanceof R){ + result = JacksonUtil.obj2String(obj); + //分页不打印具体列表信息 + if(result.contains("rows")){ + int pageBegin = result.indexOf("["); + int pageEnd = result.lastIndexOf("]"); + String substring = result.substring(pageBegin+1, pageEnd); + LOGGER.info("substring: {}", substring); + result = result.replace(substring,""); + } + }else{ + result = JacksonUtil.obj2String(obj); + } + + LOGGER.info("返回结果: {}", result); + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/handler/AuthHandler.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/handler/AuthHandler.java new file mode 100644 index 00000000..cf04d02d --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/handler/AuthHandler.java @@ -0,0 +1,101 @@ +package com.jiuyv.sptcc.agile.research.config.handler; + + +import com.jiuyv.sptcc.agile.research.common.RespCode; +import com.jiuyv.sptcc.agile.research.common.model.ResultBean; +import com.jiuyv.sptcc.agile.research.config.properties.SmProperties; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.dto.RespVo; +import com.jiuyv.sptcc.agile.research.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.research.utils.Sm3Util; +import com.jiuyv.sptcc.agile.research.utils.Sm4Util; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; + +/** + * 负责交易接口的鉴权 + * + * @author jiuyv + */ +@Component +public class AuthHandler { + + /** + * LOGGER + */ + protected static final Logger LOGGER = LoggerFactory.getLogger(AuthHandler.class); + + + @Resource + private SmProperties smProperties; + + + /** + * 验签解密 + * + * @param req + * @param T + * @return@Controller + */ + public ResultBean doValidSignDec(ReqVo req, Class T) throws Exception { + // 销售渠道为空 + if (StringUtils.isBlank(req.getOrgCode())) { + return new ResultBean(false, RespCode.INPUT_NOT_VALID.getCode(), RespCode.SC_NOT_VALID.getMsg()); + } + // 获取秘钥 + String sm4Key = smProperties.getSecret(); + String sm3Key = smProperties.getSalt(); + String body = req.getBody(); + String sign = req.getSign(); + // 验签 + String chkStr = body + sm3Key; + boolean verify = Sm3Util.verify(chkStr, sign); + if (!verify) { + return new ResultBean(false, RespCode.SIGN_CHECK_FAILED.getCode(), RespCode.SIGN_CHECK_FAILED.getMsg()); + } + + LOGGER.info("request body: {}", JacksonUtil.obj2String(req)); + if (LOGGER.isDebugEnabled()) { + LOGGER.debug("body: {}, key:{}", body, sm4Key); + } + // 解密 + String json = Sm4Util.decryptEcb(sm4Key, body); + + LOGGER.info("解密后请求报文:{}", json); + if (T == null) {// 没有,认为是api敏捷接口 + return new ResultBean(true, RespCode.JSON_FAILED.getCode(), RespCode.JSON_FAILED.getMsg(), (V) json); + } + V t = JacksonUtil.string2Obj(json, T); + if (t == null) { + return new ResultBean(false, RespCode.JSON_FAILED.getCode(), RespCode.JSON_FAILED.getMsg()); + } + return new ResultBean(true, RespCode.SUCCESS.getCode(), RespCode.SUCCESS.getMsg(), t); + } + + /** + * 加密签名 + * + * @return + */ + public void doSignEnc(RespVo resp, Object data) { + try { + String sm4Key = smProperties.getSecret(); + String sm3Key = smProperties.getSalt(); + // 加密 4 ps:aes 2 + String newBody = Sm4Util.encryptEcb(sm4Key, JacksonUtil.obj2String(data)); + String newSign = Sm3Util.encrypt(newBody + sm3Key); + resp.setBody(newBody); + resp.setSign(newSign); + } catch (Exception e) { + LOGGER.error("doSignEnc error", e); + resp.setRespCode(RespCode.SYS_ERROR.getCode()); + resp.setRespCode(RespCode.SYS_ERROR.getMsg()); + } + + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/monitor/GateReqCtxParser.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/monitor/GateReqCtxParser.java new file mode 100644 index 00000000..e1f67193 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/monitor/GateReqCtxParser.java @@ -0,0 +1,96 @@ +package com.jiuyv.sptcc.agile.research.config.monitor; + +import com.jiuyv.spring.starter.monitor.IRequestContextProcess; +import com.jiuyv.spring.starter.monitor.RequestContext; +import com.jiuyv.spring.starter.monitor.RequestContext.SuccessEnum; +import com.jiuyv.sptcc.agile.research.common.RespCode; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.dto.RespVo; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.util.Assert; + + +/** + * 网关请求返回解析处理 + * + * @author jiuyv + */ +public class GateReqCtxParser implements IRequestContextProcess { + + /** + * LOGGER + */ + private static final Logger LOGGER = LoggerFactory + .getLogger(GateReqCtxParser.class); + + /** + * 请求时设置上下文 + * + * @param ctx 请求上下文 + */ + @Override + public RequestContext request(RequestContext ctx) { + // 注解的filter会在方法进入的时候自动往上下文中存放请求信息 + // oriReqObj存放了原始请求对象,多个以下标区分 + ReqVo req = (ReqVo) ctx.oriReqObj[0]; + // TODO 设置交易代码 + ctx.transCode = ctx.oriReqObj[0].toString(); + // 设置请求机构号 + ctx.reqOrgCode = req.getOrgCode(); + return ctx; + } + + /** + * 返回时设置上下文 + * + * @param ctx 请求上下文 + */ + @Override + public RequestContext response(RequestContext ctx) { + Assert.notNull(ctx.reqOrgCode, "reqOrgCode空"); + Assert.notNull(ctx.transCode, "transCode空"); + // 注解的filter会在方法返回的时候自动往上下文中存放请求信息 + // oriRespObj存放了原始返回对象 + RespVo resp = (RespVo) ctx.oriRespObj; + // 设置是否成功 + ctx.isSuccess = SuccessEnum.FAIL; + // 非系统异常暂时都算成功 + if (!RespCode.SYS_ERROR.getCode().equals(resp.getRespCode())) { + ctx.isSuccess = SuccessEnum.SUCCESS; + } + // 设置返回码 + ctx.respCode = resp.getRespCode(); + // 设置返回码描述 防止空 + ctx.respMsg = StringUtils.isBlank(resp.getRespDesc()) ? "" : resp + .getRespDesc(); + return ctx; + } + + /** + * 拒绝时设置上下文 + * + * @param ctx 请求上下文 + */ + @Override + public Object reject(RequestContext ctx) { + Assert.notNull(ctx.reqOrgCode, "reqOrgCode空"); + Assert.notNull(ctx.transCode, "transCode空"); + LOGGER.info("交易被限流,返回失败"); + // isSuccess改为枚举 + ctx.isSuccess = SuccessEnum.FAIL; + // 设置返回码为交易限流 + ctx.respCode = RespCode.RATE_LIMITING.getCode(); + // 设置返回码描述为交易限流 + ctx.respMsg = RespCode.RATE_LIMITING.getMsg(); + LOGGER.info("reqOrgCode [{}]", ctx.reqOrgCode); + LOGGER.info("[{}] build reject service response", this); + // 重新加密 + RespVo resp = new RespVo(); + resp.setRespCode(ctx.respCode); + resp.setRespDesc(ctx.respMsg); + return resp; + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/properties/SmProperties.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/properties/SmProperties.java new file mode 100644 index 00000000..f7d52504 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/config/properties/SmProperties.java @@ -0,0 +1,35 @@ +package com.jiuyv.sptcc.agile.research.config.properties; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +@Component +@ConfigurationProperties(prefix = "sm4") +public class SmProperties { + + /** + * 密钥 + */ + private String secret; + + /** + * 加盐 + */ + private String salt; + + public String getSecret() { + return secret; + } + + public void setSecret(String secret) { + this.secret = secret; + } + + public String getSalt() { + return salt; + } + + public void setSalt(String salt) { + this.salt = salt; + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/controller/ProductController.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/controller/ProductController.java new file mode 100644 index 00000000..4609b6f5 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/controller/ProductController.java @@ -0,0 +1,29 @@ +package com.jiuyv.sptcc.agile.research.controller; + + +import com.jiuyv.sptcc.agile.research.api.RealLineFlow; +import com.jiuyv.sptcc.agile.research.common.web.BaseController; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.dto.RespVo; +import com.jiuyv.sptcc.agile.research.service.LineMetricMonthService; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +/** + * 客流宝产品-线路客流+轨道站点客流+金山铁路客流 + * Created by sky on 2024/8/23 + */ +@RestController +public class ProductController extends BaseController implements RealLineFlow { + + @Resource + private LineMetricMonthService lineMetricMonthService; + + @Override + public RespVo realLineFlow(@RequestBody ReqVo req) { + return lineMetricMonthService.process(req); + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/controller/ProductDownloadController.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/controller/ProductDownloadController.java new file mode 100644 index 00000000..6ca794c7 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/controller/ProductDownloadController.java @@ -0,0 +1,59 @@ +package com.jiuyv.sptcc.agile.research.controller; + + +import com.jiuyv.sptcc.agile.research.api.ProductDownloadApi; +import com.jiuyv.sptcc.agile.research.common.RespCode; +import com.jiuyv.sptcc.agile.research.common.ResultCode; +import com.jiuyv.sptcc.agile.research.common.exception.BaseException; +import com.jiuyv.sptcc.agile.research.common.web.BaseController; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.dto.RespVo; +import com.jiuyv.sptcc.agile.research.service.IDownloadService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.io.IOException; + +/** + * @ClassName : PassengerProductControllrt + * @Description : 客流宝产品接口文档 + * @Author : sky + * @Date: 2023-06-06 19:23 + */ +@RestController +public class ProductDownloadController extends BaseController implements ProductDownloadApi { + + private static final Logger log = LoggerFactory.getLogger(ProductDownloadController.class); + + @Resource + private IDownloadService downloadService; + + // private + @Override + public void downloadFile(ReqVo req) throws IOException { + + try { + downloadService.download(req); + } catch (BaseException e) { + log.error("异常 code: {} ,message :{}", e.getCode(), e.getMessage()); + RespVo respvO = new RespVo(); + respvO.setRespCode(RespCode.BUSINESS_ERROR.getCode()); + respvO.setRespDesc(RespCode.BUSINESS_ERROR.getMsg()); + if (ResultCode.API_NOT_RIGHT.getCode().equals(e.getCode()) + || ResultCode.ORG_IP_WHILE_LIST.getCode().equals(e.getCode()) + || ResultCode.API_IS_DOWN.getCode().equals(e.getCode())) { + respvO.setRespDesc(RespCode.REFUSED.getCode()); + respvO.setRespCode(RespCode.REFUSED.getMsg()); + } + respvO.setRespSubCode(e.getCode()); + respvO.setRespSubDesc(e.getMessage()); + throw new RuntimeException(respvO.getRespCode()); + } catch (IOException e1) { + throw e1; + } + } + + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/fegin/DownloadFeign.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/fegin/DownloadFeign.java new file mode 100644 index 00000000..e2cc99b4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/fegin/DownloadFeign.java @@ -0,0 +1,8 @@ +package com.jiuyv.sptcc.agile.research.fegin; + +import com.jiuyv.sptcc.agile.dataservice.api.product.DownloadApi; +import org.springframework.cloud.openfeign.FeignClient; + +@FeignClient(url = "${request.feign.remote.coreUrl}",name = "downloadFeign") +public interface DownloadFeign extends DownloadApi { +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/fegin/LineMetricMonthFeign.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/fegin/LineMetricMonthFeign.java new file mode 100644 index 00000000..190865db --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/fegin/LineMetricMonthFeign.java @@ -0,0 +1,15 @@ +package com.jiuyv.sptcc.agile.research.fegin; + +import com.jiuyv.sptcc.agile.dataservice.api.product.LineMetricMonthApi; +import org.springframework.cloud.openfeign.FeignClient; + +/** + * 线路月统计 + * @ClassName : LineMetricMonthFeign + * @Description : + * @Author : sky + * @Date: 2023-09-21 18:03 + */ +@FeignClient(name = "lineMetricMonthFeign",url = "${request.feign.remote.coreUrl}") +public interface LineMetricMonthFeign extends LineMetricMonthApi { +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/plugin/BaseProcess.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/plugin/BaseProcess.java new file mode 100644 index 00000000..e1c4f186 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/plugin/BaseProcess.java @@ -0,0 +1,131 @@ +package com.jiuyv.sptcc.agile.research.plugin; + + +import com.jiuyv.spring.starter.monitor.MicrometerMonitor; +import com.jiuyv.spring.starter.monitor.extension.sentinel.FlowGradeTypeEnum; +import com.jiuyv.sptcc.agile.research.common.RespCode; +import com.jiuyv.sptcc.agile.research.common.exception.BaseException; +import com.jiuyv.sptcc.agile.research.common.model.ResultBean; +import com.jiuyv.sptcc.agile.research.config.handler.AuthHandler; +import com.jiuyv.sptcc.agile.research.config.monitor.GateReqCtxParser; +import com.jiuyv.sptcc.agile.research.dto.ReqBase; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.dto.RespVo; +import feign.RetryableException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.annotation.Resource; +import java.lang.reflect.ParameterizedType; + +/** + * 接口业务逻辑处理interface + * R输入对象o + * S输出对象 + */ +public abstract class BaseProcess implements IProcess { + + protected static final Logger LOGGER = LoggerFactory.getLogger(BaseProcess.class); + + /** + * 鉴权处理 + */ + @Resource + private AuthHandler authHandler; + + /** + * 获取哨兵的资源名称 + * + * @param req 请求对象 + * @return 资源名称 + */ + protected abstract String getSentinelSourceName(ReqVo req); + + /** + * 接口逻辑处理 + * + * @param req 输入对象 + * @return 返回对象 + * @throws BaseException 业务异常 + */ + @Override + @MicrometerMonitor(resultParser = GateReqCtxParser.class, isOpenFlowControl = FlowGradeTypeEnum.QPS) + public RespVo process(ReqVo req) { + try { + // 获取内部请求对象泛型的类型 + Class entityClass = (Class) ((ParameterizedType) this.getClass().getGenericSuperclass()).getActualTypeArguments()[0]; + // 解密 + ResultBean rb = authHandler.doValidSignDec(req, entityClass); + if (!rb.isSuccess()) { + return generateErrorResp(req, rb.getRespCode(), rb.getRespMessage()); + } + V innerReq = rb.getData(); + // 业务逻辑处理 + S innerResp = business(innerReq, req); + // 加密 + return generateResp(req, innerResp); + } catch (BaseException e) { + LOGGER.error("单笔处理gate异常:BaseException", e); + return generateErrorResp(req, e.getCode(), e.getMessage()); + } catch (RetryableException e) { + LOGGER.error("单笔处理gate异常:RetryableException", e); + return generateErrorResp(req, RespCode.REQUEST_TIMEOUT.getCode(), RespCode.REQUEST_TIMEOUT.getMsg()); + } catch (Exception e) { + LOGGER.error("单笔处理gate异常:Exception", e); + return generateErrorResp(req, RespCode.SYS_ERROR.getCode(), RespCode.SYS_ERROR.getMsg()); + } + } + + /** + * 门户包装 + * + * @param req + * @param base + * @return + * @throws BaseException + */ + protected abstract S business(V req, ReqBase base) throws Exception; + + /** + * 组装返回错误返回对象 + * + * @param req + * @param result + * @return + * @throws NoSuchFieldException + * @throws IllegalAccessException + */ + protected RespVo generateResp(ReqVo req, S result) { + RespVo respVo = new RespVo(); + respVo.setKeyVersion(req.getKeyVersion()); + respVo.setSeriNo(req.getSeriNo()); + respVo.setOrgCode(req.getOrgCode()); + respVo.setSubOrgCode(req.getSubOrgCode()); + respVo.setTimestamp(req.getTimestamp()); + respVo.setRespCode(RespCode.SUCCESS.getCode()); + respVo.setRespDesc(RespCode.SUCCESS.getMsg()); + authHandler.doSignEnc(respVo, result); + return respVo; + } + + /** + * 组装失败错误返回对象 + * + * @param req 输入对象 + * @param code 返回码 + * @param message 返回码解释 + * @throws BaseException 业务异常 + */ + protected RespVo generateErrorResp(ReqVo req, String code, String message) { + RespVo resp = new RespVo(); + resp.setKeyVersion(req.getKeyVersion()); + resp.setSeriNo(req.getSeriNo()); + resp.setOrgCode(req.getOrgCode()); + resp.setSubOrgCode(req.getSubOrgCode()); + resp.setTimestamp(req.getTimestamp()); + resp.setRespCode(code); + resp.setRespDesc(message); + return resp; + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/plugin/IProcess.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/plugin/IProcess.java new file mode 100644 index 00000000..8058e488 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/plugin/IProcess.java @@ -0,0 +1,21 @@ +package com.jiuyv.sptcc.agile.research.plugin; + + +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.dto.RespVo; + +/** + * 接口业务逻辑处理interface + * R输入对象o + * S输出对象 + */ +public interface IProcess { + + /** + * 接口逻辑处理流程 + * + * @param req 输入对象 + * @return 返回对象 + */ + RespVo process(ReqVo req); +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/service/IDownloadService.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/service/IDownloadService.java new file mode 100644 index 00000000..fcd57779 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/service/IDownloadService.java @@ -0,0 +1,11 @@ +package com.jiuyv.sptcc.agile.research.service; + + +import com.jiuyv.sptcc.agile.research.dto.ReqVo; + +import java.io.IOException; + +public interface IDownloadService { + + void download(ReqVo request) throws IOException; +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/service/LineMetricMonthService.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/service/LineMetricMonthService.java new file mode 100644 index 00000000..3dd7eeb1 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/service/LineMetricMonthService.java @@ -0,0 +1,65 @@ +package com.jiuyv.sptcc.agile.research.service; + + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.LineMonthRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.response.product.LineMetricMonthRes; +import com.jiuyv.sptcc.agile.research.common.exception.BaseException; +import com.jiuyv.sptcc.agile.research.dto.ReqBase; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.fegin.LineMetricMonthFeign; +import com.jiuyv.sptcc.agile.research.plugin.BaseProcess; +import com.jiuyv.sptcc.agile.research.utils.JacksonUtil; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import com.jiuyv.sptccc.agile.common.core.page.PageResult; +import org.springframework.stereotype.Service; + +/** + * 线路每天客流宝量指标Service业务层处理 + * + * @author shu_k + * @date 2023-09-18 + */ +@Service +public class LineMetricMonthService extends BaseProcess> { + + private final LineMetricMonthFeign lineMetricMonthFeign; + + public LineMetricMonthService(LineMetricMonthFeign lineMetricMonthFeign) { + this.lineMetricMonthFeign = lineMetricMonthFeign; + } + + /** + * 获取哨兵的资源名称,限流使用,暂不开启 + * + * @param req 请求对象 + * @return 资源名称 + */ + @Override + protected String getSentinelSourceName(ReqVo req) { + //TODO 限流措施,需要配置sentinel, + return req.getOrgCode() + "LineMonhCode"; + } + + + /** + * 业务处理 + * @param req 请求对象 + * @param base 基础入参 + * @return PageResult 返回对象 + * @throws BaseException + */ + @Override + protected PageResult business(LineMonthRequest req, ReqBase base) throws BaseException { + req.setOrgNo(base.getOrgCode()); + LOGGER.info("request body {}", JacksonUtil.obj2String(req)); + R> commonPage = lineMetricMonthFeign.page(req); + LOGGER.info("response body {}", JacksonUtil.pageToString(commonPage)); + if (commonPage.isSuccess()) { + return commonPage.getData(); + }else{ + throw new BaseException(commonPage.getCode(),commonPage.getMsg()); + } + + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/service/impl/business/DownloadServiceImpl.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/service/impl/business/DownloadServiceImpl.java new file mode 100644 index 00000000..5a126408 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/service/impl/business/DownloadServiceImpl.java @@ -0,0 +1,88 @@ +package com.jiuyv.sptcc.agile.research.service.impl.business; + +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import com.jiuyv.sptcc.agile.research.common.RespCode; +import com.jiuyv.sptcc.agile.research.common.exception.BaseException; +import com.jiuyv.sptcc.agile.research.common.model.ResultBean; +import com.jiuyv.sptcc.agile.research.config.handler.AuthHandler; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.fegin.DownloadFeign; +import com.jiuyv.sptcc.agile.research.service.IDownloadService; +import com.jiuyv.sptcc.agile.research.utils.ServletUtils; +import feign.Response; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.stereotype.Service; + +import javax.servlet.http.HttpServletResponse; +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.IOException; +import java.util.Collection; + +@Service +public class DownloadServiceImpl implements IDownloadService { + + private static final Logger log = LoggerFactory.getLogger(DownloadServiceImpl.class); + + + private final DownloadFeign downloadFeign; + private final AuthHandler authHandler; + + public DownloadServiceImpl(DownloadFeign downloadFeign, AuthHandler authHandler) { + this.downloadFeign = downloadFeign; + this.authHandler = authHandler; + } + + @Override + public void download(ReqVo request) throws IOException { + HttpServletResponse response = ServletUtils.getResponse(); + if (response == null) { + return; + } + response.reset(); + + // 只有解密,不加密,返回文件流 + ResultBean rs = null; + try { + rs = authHandler.doValidSignDec(request, DownLoadRequest.class); + if (!rs.isSuccess()) { + log.error("gate解密请求对象参数失败,respCode:【{}】,respDesc:【{}】", rs.getRespCode(), rs.getRespMessage()); + throw new BaseException(rs.getRespCode(), rs.getRespCode()); + } + } catch (Exception e) { + log.error("解密验签异常", e); + throw new BaseException(RespCode.SYS_ERROR.getCode()); + } + // 下载文件类型权限 + + + // 下载文件 + DownLoadRequest req = rs.getData(); + req.setOrgNo(request.getOrgCode()); + + try (Response serviceResponse = downloadFeign.download(req); + BufferedInputStream bufferedInputStream = new BufferedInputStream(serviceResponse.body().asInputStream())) { + Collection fileHeader = serviceResponse.headers().get("Content-Disposition"); + if (null != fileHeader) { + // 文件下载失败 + response.setHeader("content-type", MediaType.APPLICATION_OCTET_STREAM_VALUE); + response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE); + response.setHeader("Content-Disposition", serviceResponse.headers().get("Content-Disposition").toString().replace("[", "").replace("]", "")); + } + BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(response.getOutputStream()); + int length = 0; + byte[] temp = new byte[1024 * 10]; + while ((length = bufferedInputStream.read(temp)) != -1) { + bufferedOutputStream.write(temp, 0, length); + } + bufferedOutputStream.flush(); + } catch (IOException e) { + log.error("文件下载失败"); + throw e; + } + + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/DateUtil.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/DateUtil.java new file mode 100644 index 00000000..b8155073 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/DateUtil.java @@ -0,0 +1,211 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.text.DateFormat; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.Calendar; +import java.util.Date; + +/** + * @ClassName DateUtil + * @Description 时间工具 + * @Author Spark + * @Date 11/6/2020 2:59 PM + **/ +public final class DateUtil { + + private DateUtil() { + throw new UnsupportedOperationException("Cannot instantiate utility class"); + } + + /** + * 后端数据库时间格式 + */ + public static final String DATE_TIME_BACK = "yyyyMMddHHmmss"; + public static final String DATE_FORMAT_YYYYMMDD = "yyyyMMdd"; + public static final String DATE_14FORMATDATE_HYPHEN = "yyyy-MM-dd HH:mm:ss"; + public static final String DATE_8FORMATDATE_HYPHEN = "yyyy-MM-dd"; + private static final Logger log = LoggerFactory.getLogger(DateUtil.class); + private static final String[] parsePatterns = {DATE_8FORMATDATE_HYPHEN, DATE_14FORMATDATE_HYPHEN, "yyyy-MM-dd HH:mm", "yyyy-MM", + "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", + "yyyy.MM.dd HH:mm", "yyyy.MM"}; + + /** + * @return java.lang.String + * @author Spark + * @Description 获取前xx分钟的时间 + * @Date 2:14 PM 11/12/2020 + * @Param [dateTime, minutes] + **/ + public static String getPreviousMinutes(String dateTime, Integer minutes) { + DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern(DATE_TIME_BACK); + LocalDateTime localDateTime = LocalDateTime.parse(dateTime, dateTimeFormatter); + localDateTime = localDateTime.minusMinutes(minutes); + return dateTimeFormatter.format(localDateTime); + } + + /** + * 返回指定格式时间字符串 + * + * @param format + * @return + */ + public static Date getNowDate(String format) { + Date date = new Date(); + Date sysDate = DateUtil.getFormatDate(format, + date); + return sysDate; + } + + // 返回当前日期date + public static Date getNowDate() { + return getNowDate(DateUtil.DATE_FORMAT_YYYYMMDD); + + } + + public static Date getFormatDate(String formate, Date date) { + SimpleDateFormat formatter = new SimpleDateFormat(formate); + String dateString = formatter.format(date); + return stringToDate(dateString, formate); + } + + /** + * 字符串转换到时间格式 + * + * @param dateStr 需要转换的字符串 + * @param formatStr 需要格式的目标字符串 举例 yyyy-MM-dd + * @return Date 返回转换后的时间 + * @throws ParseException 转换异常 + */ + public static Date stringToDate(String dateStr, String formatStr) { + DateFormat sdf = new SimpleDateFormat(formatStr); + Date date = null; + try { + date = sdf.parse(dateStr); + } catch (ParseException e) { + log.error(dateStr, e); + } + return date; + } + + /** + * 日期型字符串转化为日期 格式 + */ + public static Date parseDate(Object str) { + if (str == null) { + return null; + } + try { + return org.apache.commons.lang3.time.DateUtils.parseDate(str.toString(), parsePatterns); + } catch (ParseException e) { + return null; + } + } + + /** + * 返回当前日期yyyymmdd + * + * @return + */ + public static String getNowDateStr() { + return getNowDateStr(DateUtil.DATE_FORMAT_YYYYMMDD); + } + + public static String getNowDateStr(String format) { + Calendar cal = Calendar.getInstance(); + String sysDate = DateUtil.dateToString( + DateUtil.getFormatDate(format, + cal.getTime()), format); + return sysDate; + } + + public static String dateToString(Date date, String formatStr) { + DateFormat sdf = new SimpleDateFormat(formatStr); + String dateStr = null; + dateStr = sdf.format(date); + return dateStr; + } + + /** + * 校验token过期时间 + * + * @param stDate token过期时间 + * @param endDate 当前时间 + * @param minutes 偏移分钟 + * @return + */ + public static boolean tokenExpendExpiredChk(Date stDate, Date endDate, int minutes) { + long gapTimes = minutes * 60L * 1000L; + long expireTime = stDate.getTime(); + long curTime = endDate.getTime(); + long betweens = expireTime - curTime; + // 假设间隔3分钟 + return betweens <= gapTimes && betweens >= 0; // 需要延期 + } + + /** + * 字符串的日期格式的计算(bdate-smdate) + * + * @param smdate + * @param bdate + * @return + * @throws Exception + */ + public static int daysBetween(String smdate, String bdate) { + return daysBetween(smdate, bdate, DATE_FORMAT_YYYYMMDD); + } + + /** + * 字符串的日期格式的计算 + */ + public static int daysBetween(String smdate, String bdate, String formatStr) { + try { + SimpleDateFormat sdf = new SimpleDateFormat(formatStr); + Calendar cal = Calendar.getInstance(); + cal.setTime(sdf.parse(smdate)); + long time1 = cal.getTimeInMillis(); + cal.setTime(sdf.parse(bdate)); + long time2 = cal.getTimeInMillis(); + long betweenDays = (time2 - time1) / (1000 * 3600 * 24); + return Integer.parseInt(String.valueOf(betweenDays)); + } catch (Exception e) { + log.error("发生异常", e); + return 0; + } + } + + /** + * 判断时间大小 + * + * @param srcDateTime 需要判断的时间字符串 + * @param flagDateTime 判断依据时间字符串 + * @param format 时间字符串格式 + * @return 0:相等;1:目标时间字符串小于判断依据;-1:目标时间字符串大于判断依据;-2:发生异常 + */ + public static int dateTimeCompare(String srcDateTime, String flagDateTime, String format) { + try { + SimpleDateFormat sdf = new SimpleDateFormat(format); + Calendar cal = Calendar.getInstance(); + cal.setTime(sdf.parse(srcDateTime)); + long time1 = cal.getTimeInMillis(); + cal.setTime(sdf.parse(flagDateTime)); + long time2 = cal.getTimeInMillis(); + long betweens = time2 - time1; + if (betweens > 0L) { + return 1; + } else if (betweens < 0L) { + return -1; + } else { + return 0; + } + } catch (Exception e) { + log.error("dateTimeCompare occurs error", e); + return -2; + } + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/ExceptionUtil.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/ExceptionUtil.java new file mode 100644 index 00000000..69ab50a9 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/ExceptionUtil.java @@ -0,0 +1,39 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public final class ExceptionUtil { + + private static final Logger LOGGER = LoggerFactory.getLogger(ExceptionUtil.class); + + private ExceptionUtil() { + // private constructor to prevent instantiation + } + // rest of your utility methods + + public static void printException(Exception e, Logger logger) { + if (logger.isDebugEnabled()) { + logger.error("发生异常:", e); + } else { + logger.error("发生异常: {}", e.getMessage()); + } + } + + + public static void printException(Exception e) { + if (LOGGER.isDebugEnabled()) { + LOGGER.error("发生异常:", e); + } else { + LOGGER.error("发生异常: {}", e.getMessage()); + } + } + + public static String getMessage(Exception e, Integer length) { + String message = e.getMessage(); + if (message != null && message.length() > length) { + message = message.substring(0, length); + } + return message; + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/FileUtils.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/FileUtils.java new file mode 100644 index 00000000..05bf0d34 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/FileUtils.java @@ -0,0 +1,121 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import com.sun.jmx.mbeanserver.GetPropertyAction; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.security.AccessController; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-05 + * @time: 15:32 + */ +public class FileUtils { + + public static final int EOF = -1; + private static final Logger LOGGER = LoggerFactory.getLogger(FileUtils.class); + private static final String PREFIX = "temp_"; + private static final String SUFFIX_TXT = ".txt"; + private static final String SUFFIX_CSV = ".csv"; + private static final String DEFAULT_PATH = "default/"; + private static final int DEFAULT_BUFFER_SIZE = 1024 * 4; + + public static File generateTempTextFile() throws IOException { + return generateTempTextFile(DEFAULT_PATH); + } + + public static File generateTempCsvFile() throws IOException { + return generateTempCsvFile(DEFAULT_PATH); + } + + public static File generateTempTextFile(String path) throws IOException { + String prefix = DateUtil.getNowDateStr() + "_" + UUIDUtil.getRandomBaseUUIDshort(); + return generateTempFile(prefix, SUFFIX_TXT, path); + } + + public static File generateTempCsvFile(String path) throws IOException { + String prefix = DateUtil.getNowDateStr() + "_" + UUIDUtil.getRandomBaseUUIDshort(); + return generateTempFile(prefix, SUFFIX_CSV, path); + } + + public static String getDefaultTempPath(String path) { + // os默认临时文件夹 + if (null == path) { + path = DEFAULT_PATH; + } + String dir = ""; + String tempDirPath = AccessController.doPrivileged(new GetPropertyAction("java.io.tmpdir")); + // 不以斜杆结尾 + if ((tempDirPath.lastIndexOf("/") != (tempDirPath.length() - 1)) && (tempDirPath.lastIndexOf("\\") != (tempDirPath.length() - 1))) { + dir = tempDirPath + "/" + path; + } else { + dir = tempDirPath + path; + } + return dir; + } + + /** + * 删除对象文件(指定文件删除文件,指定文件夹删除该文件夹以及该文件夹下所有内容) + * + * @param tempFileRoot + */ + public static void removeTempFile(String tempFileRoot) throws IOException { + // 判断文件是否存在 + Path pat = Paths.get(tempFileRoot); + Files.delete(pat); + } + + public static File generateTempFile(String prefix, String suffix, String path) throws IOException { + // os默认临时文件夹 + String dir = getDefaultTempPath(path) + DateUtil.getNowDateStr() + "/"; + // linux不带 + File tempDir = new File(dir); + if (!tempDir.exists()) { + LOGGER.info("create temp upload directory, path:" + dir); + if (tempDir.mkdirs()) { + LOGGER.info("create temp upload directory success"); + } + } + File tempFile = File.createTempFile(prefix, suffix, new File(dir)); + return tempFile; + } + + public static int copy(final InputStream input, final OutputStream output) throws IOException { + return copy(input, output, DEFAULT_BUFFER_SIZE); + } + + public static int copy(final InputStream input, final OutputStream output, int bufferSize) throws IOException { + final long count = copyLarge(input, output, bufferSize); + if (count > Integer.MAX_VALUE) { + return -1; + } + return (int) count; + } + + public static long copyLarge(final InputStream input, final OutputStream output, Integer bufferSize) + throws IOException { + if (null == bufferSize) { + bufferSize = DEFAULT_BUFFER_SIZE; + } + byte[] buffer = new byte[bufferSize]; + long count = 0; + int n = 0; + while (EOF != (n = input.read(buffer))) { + output.write(buffer, 0, n); + count += n; + } + return count; + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/HttpUtils.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/HttpUtils.java new file mode 100644 index 00000000..078cedb4 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/HttpUtils.java @@ -0,0 +1,48 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-05 + * @time: 16:35 + */ +public class HttpUtils { + + private static final Logger LOGGER = LoggerFactory.getLogger(HttpUtils.class); + + /** + * 获取request + */ + public static HttpServletRequest getRequest() { + ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder + .getRequestAttributes(); + if (null != servletRequestAttributes) { + return servletRequestAttributes.getRequest(); + } + return null; + + } + + /** + * 获取response + */ + public static HttpServletResponse getResponse() { + ServletRequestAttributes servletRequestAttributes = (ServletRequestAttributes) RequestContextHolder + .getRequestAttributes(); + if (null != servletRequestAttributes) { + return servletRequestAttributes.getResponse(); + } + return null; + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/IPUtil.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/IPUtil.java new file mode 100644 index 00000000..cac200ec --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/IPUtil.java @@ -0,0 +1,79 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import javax.servlet.http.HttpServletRequest; +import java.net.Inet4Address; +import java.net.InetAddress; +import java.net.NetworkInterface; +import java.net.SocketException; +import java.net.UnknownHostException; +import java.util.Enumeration; + +public final class IPUtil { + private IPUtil() { + throw new UnsupportedOperationException("Cannot instantiate utility class"); + } + + private static final String UNKNOWN = "unknown"; + + public static String getLocalIP() throws SocketException { + String localIP = null; + Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces(); + InetAddress ip = null; + while (allNetInterfaces.hasMoreElements()) { + NetworkInterface netInterface = allNetInterfaces.nextElement(); + Enumeration addresses = netInterface.getInetAddresses(); + while (addresses.hasMoreElements()) { + ip = addresses.nextElement(); + if (ip instanceof Inet4Address) { + localIP = ip.getHostAddress(); + if (!"127.0.0.1".equalsIgnoreCase(localIP)) { + return localIP; + } + } + } + } + return localIP; + } + + /** + * 获取当前网络ip + * + * @param request 请求 + * @return string + */ + public static String getIpAddr(HttpServletRequest request) { + + String ipAddress = request.getHeader("x-forwarded-for"); + if (isInvalidIP(ipAddress)) { + ipAddress = request.getHeader("Proxy-Client-IP"); + } + if (isInvalidIP(ipAddress)) { + ipAddress = request.getHeader("WL-Proxy-Client-IP"); + } + if (isInvalidIP(ipAddress)) { + ipAddress = request.getRemoteAddr(); + if (ipAddress.equals("127.0.0.1") || ipAddress.equals("0:0:0:0:0:0:0:1")) { + // 根据网卡取本机配置的IP + InetAddress inet = null; + try { + inet = InetAddress.getLocalHost(); + } catch (UnknownHostException e) { + e.printStackTrace(); + } + ipAddress = inet != null ? inet.getHostAddress() : null; + } + } + // 对于通过多个代理的情况,第一个IP为客户端真实IP,多个IP按照','分割 + if (ipAddress != null && ipAddress.length() > 15) { //"***.***.***.***".length() = 15 + if (ipAddress.contains(",")) { + ipAddress = ipAddress.substring(0, ipAddress.indexOf(",")); + } + } + return ipAddress; + } + + private static boolean isInvalidIP(String ipAddress) { + return ipAddress == null || ipAddress.isEmpty() || UNKNOWN.equalsIgnoreCase(ipAddress); + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/JacksonUtil.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/JacksonUtil.java new file mode 100644 index 00000000..4ad37061 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/JacksonUtil.java @@ -0,0 +1,237 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.core.type.TypeReference; +import com.fasterxml.jackson.databind.DeserializationFeature; +import com.fasterxml.jackson.databind.JavaType; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.databind.PropertyNamingStrategies; +import com.fasterxml.jackson.databind.SerializationFeature; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.IOException; +import java.text.SimpleDateFormat; +import java.util.Collections; +import java.util.List; + +/** + * @ClassName : JacksonUtil + * @Description : Jackson工具类 + * @Author : sky + * @Date: 2023-06-07 10:55 + */ +public class JacksonUtil { + + private static final ObjectMapper OBJECT_MAPPER = new ObjectMapper(); + + private static final ObjectMapper OBJECT_MAPPER_SNAKE_CASE = new ObjectMapper(); + // 日期格式化 + private static final String STANDARD_FORMAT = "yyyy-MM-dd HH:mm:ss"; + + private static final Logger log = LoggerFactory.getLogger(JacksonUtil.class); + + static { + // 对象的所有字段全部列入 + OBJECT_MAPPER.setSerializationInclusion(JsonInclude.Include.ALWAYS); + // 取消默认转换timestamps形式 + OBJECT_MAPPER.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + // 忽略空Bean转json的错误 + OBJECT_MAPPER.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + // 所有的日期格式都统一为以下的样式,即yyyy-MM-dd HH:mm:ss + OBJECT_MAPPER.setDateFormat(new SimpleDateFormat(STANDARD_FORMAT)); + // 忽略 在json字符串中存在,但是在java对象中不存在对应属性的情况。防止错误 + OBJECT_MAPPER.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + } + + static { + // 对象的所有字段全部列入 + OBJECT_MAPPER_SNAKE_CASE.setSerializationInclusion(JsonInclude.Include.ALWAYS); + // 取消默认转换timestamps形式 + OBJECT_MAPPER_SNAKE_CASE.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false); + // 忽略空Bean转json的错误 + OBJECT_MAPPER_SNAKE_CASE.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false); + // 所有的日期格式都统一为以下的样式,即yyyy-MM-dd HH:mm:ss + OBJECT_MAPPER_SNAKE_CASE.setDateFormat(new SimpleDateFormat(STANDARD_FORMAT)); + // 忽略 在json字符串中存在,但是在java对象中不存在对应属性的情况。防止错误 + OBJECT_MAPPER_SNAKE_CASE.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); + // 转换为下划线 + OBJECT_MAPPER_SNAKE_CASE.setPropertyNamingStrategy(PropertyNamingStrategies.SNAKE_CASE); + } + + private JacksonUtil() { + } + + /** + * 对象转Json格式字符串 + * + * @param obj 对象 + * @return Json格式字符串 + */ + public static String obj2String(T obj) { + if (obj == null) { + return null; + } + try { + return obj instanceof String ? (String) obj : OBJECT_MAPPER.writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Error converting object to string: {}", e.getMessage()); + return null; + } + } + + public static String pageToString(T obj) { + if (obj == null) { + return null; + } + try { + String result = obj instanceof String ? (String) obj : OBJECT_MAPPER.writeValueAsString(obj); + if (result.contains("rows")) { + int pageBegin = result.indexOf("["); + int pageEnd = result.lastIndexOf("]"); + String substring = result.substring(pageBegin + 1, pageEnd); + result = result.replace(substring, "...."); + } + return result; + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 对象转Json格式字符串; 属性名从驼峰改为下划线形式 + * + * @param obj 对象 + * @return Json格式字符串 + */ + public static String obj2StringFieldSnakeCase(T obj) { + if (obj == null) { + return null; + } + try { + return obj instanceof String ? (String) obj : OBJECT_MAPPER_SNAKE_CASE.writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Parse Object to String error : {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象; 属性名从下划线形式改为驼峰 + * + * @param str 要转换的字符串 + * @param clazz 自定义对象的class对象 + * @return 自定义对象 + */ + public static T string2ObjFieldLowerCamelCase(String str, Class clazz) { + if (org.apache.commons.lang3.StringUtils.isEmpty(str) || clazz == null) { + return null; + } + try { + return clazz.equals(String.class) ? (T) str : OBJECT_MAPPER_SNAKE_CASE.readValue(str, clazz); + } catch (Exception e) { + log.warn("Error converting string to object with lower camel case: {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象(List); 属性名从下划线形式改为驼峰 + * + * @param str 要转换的字符串 + * @param typeReference 自定义对象的typeReference List 对象 + * @return 自定义对象 + */ + public static List string2ListFieldLowerCamelCase(String str, TypeReference> typeReference) { + if (StringUtils.isEmpty(str) || typeReference == null) { + return Collections.emptyList(); + } + try { + return OBJECT_MAPPER_SNAKE_CASE.readValue(str, typeReference); + } catch (Exception e) { + log.warn("Parse String to Object error : {}", e.getMessage()); + return Collections.emptyList(); + } + } + + /** + * 对象转Json格式字符串(格式化的Json字符串) + * + * @param obj 对象 + * @return 美化的Json格式字符串 + */ + public static String obj2StringPretty(T obj) { + if (obj == null) { + return null; + } + try { + return obj instanceof String ? (String) obj : OBJECT_MAPPER.writerWithDefaultPrettyPrinter().writeValueAsString(obj); + } catch (JsonProcessingException e) { + log.warn("Error converting object to pretty string: {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义对象 + * + * @param str 要转换的字符串 + * @param clazz 自定义对象的class对象 + * @return 自定义对象 + */ + public static T string2Obj(String str, Class clazz) { + if (StringUtils.isEmpty(str) || clazz == null) { + return null; + } + try { + return clazz.equals(String.class) ? (T) str : OBJECT_MAPPER.readValue(str, clazz); + } catch (Exception e) { + log.warn("Error parsing array to string: {}", e.getMessage()); + return null; + } + } + + /** + * 字符串转换为自定义字段转为list + * + * @param str + * @param typeReference + * @param + * @return + */ + public static T string2Obj(String str, TypeReference typeReference) { + if (StringUtils.isEmpty(str) || typeReference == null) { + return null; + } + try { + return OBJECT_MAPPER.readValue(str, typeReference); + } catch (IOException e) { + log.warn("Parse String to Object error", e); + return null; + } + } + + public static T string2Obj(String str, Class collectionClazz, Class... elementClazzes) { + JavaType javaType = OBJECT_MAPPER.getTypeFactory().constructParametricType(collectionClazz, elementClazzes); + try { + return OBJECT_MAPPER.readValue(str, javaType); + } catch (IOException e) { + log.warn("Error converting string to object with collection type: {}", e.getMessage()); + return null; + } + } + + + public static String parseArray(Object[] arguments) { + try { + return OBJECT_MAPPER.writeValueAsString(arguments); + } catch (JsonProcessingException e) { + log.warn("Error parsing array to string: {}", e.getMessage()); + return ""; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/MD5.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/MD5.java new file mode 100644 index 00000000..ab6f6129 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/MD5.java @@ -0,0 +1,56 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import org.apache.commons.codec.digest.DigestUtils; + +import java.math.BigInteger; +import java.nio.charset.StandardCharsets; +import java.security.MessageDigest; + +/** + * Description: md5加密解密 + */ +public class MD5 { + + public static String md5(String dateString) throws Exception { + MessageDigest md5 = null; + byte[] digest = MessageDigest.getInstance("md5").digest(dateString.getBytes(StandardCharsets.UTF_8)); + String md5code = new BigInteger(1, digest).toString(16); + // 如果生成数字未满32位,需要前面补0 + for (int i = 0; i < 32 - md5code.length(); i++) { + md5code = "0" + md5code; + } + return md5code; + } + + // ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。 + //(1)0~31及127(共33个)是控制字符或通信专用字符(其余为可显示字符), + // 如控制符:LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等;通信专用字 符:SOH(文头)、EOT(文尾)、ACK(确认)等; + // ASCII值为8、9、10 和13 分别转换为退格、制表、换行和回车字符。它们并没有特定的图形显示,但会依不同的 应用程序,而对文本显示有不同的影响。 + // 2)32~126(共95个)是字符(32是空格),其中48~57为0到9十个阿拉伯数字。 + //(3)65~90为26个大写英文字母,97~122号为26个小写英文字母,其余为一些标点符号、运算符号等。 + public static String md5PlusSalt(String keyword) { + // md5加密 + String md5 = DigestUtils.md5Hex(keyword); + // md5+盐 + return getString(md5); + + } + + private static String getString(String md5) { + char[] cArray = md5.toCharArray(); + for (int i = 0; i < cArray.length; i++) { + if (cArray[i] >= 48 && cArray[i] <= 57) { + cArray[i] = (char) (105 - cArray[i]); + + } + } + // 都可以使用 + return String.valueOf(cArray); + } + + // 解密+盐 + public static String md5MinusSalt(String md5) { + return getString(md5); + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/OkHttpUtil.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/OkHttpUtil.java new file mode 100644 index 00000000..9dc8ea5f --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/OkHttpUtil.java @@ -0,0 +1,130 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import com.jiuyv.sptcc.agile.research.common.RespCode; +import com.jiuyv.sptccc.agile.common.core.domain.R; +import okhttp3.Headers; +import okhttp3.MediaType; +import okhttp3.OkHttpClient; +import okhttp3.Request; +import okhttp3.RequestBody; +import okhttp3.Response; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import java.io.IOException; +import java.util.Map; + +/** + * + */ +@Component +public class OkHttpUtil { + + private static final Logger logger = LoggerFactory.getLogger(OkHttpUtil.class); + + private final OkHttpClient okHttpClient; + + @Autowired + public OkHttpUtil(OkHttpClient client) { + this.okHttpClient = client; + } + + /** + * get请求 + * + * @param url 请求地址 + * @param queries 请求参数 + * @param head 请求头 + * @return + */ + public R get(String url, Map queries, Map head) { + StringBuilder sb = new StringBuilder(url); + if (queries != null && !queries.keySet().isEmpty()) { + boolean firstFlag = true; + for (Map.Entry entry : queries.entrySet()) { + if (firstFlag) { + sb.append("?") + .append(entry.getKey()) + .append("=") + .append(entry.getValue()); + firstFlag = false; + } else { + sb.append("&") + .append(entry.getKey()) + .append("=") + .append(entry.getValue()); + } + } + } + Headers hearders = new Headers.Builder().build(); + if (null != head) { + hearders = Headers.of(head); + } + Request request = new Request.Builder() + .url(sb.toString()) + .headers(hearders) + .build(); + + return execute(request); + + } + + private R execute(Request request) { + try (Response response = okHttpClient.newCall(request).execute()) { + if (response.body() != null) { + String string = response.body().string(); + return JacksonUtil.string2Obj(string, R.class); + } else { + return R.fail(response.code(), response.message()); + } + } catch (IOException e) { + logger.error("消息发送失败!", e); + return R.fail(RespCode.SYS_ERROR, e.getMessage()); + } + } + + /** + * get + * + * @param url 请求的url + * @param queries 请求的参数,在浏览器?后面的数据,没有可以传null + * @return + */ + public R get(String url, Map queries) { + return get(url, queries, null); + } + + /** + * Post请求发送JSON数据....{"name":"zhangsan","pwd":"123456"} + * 参数一:请求Url + * 参数二:请求的JSON + * 参数三: 请求头 + */ + public R postJsonParams(String url, String jsonParams, Map head) { + RequestBody requestBody = RequestBody.create(MediaType.parse("application/json; charset=utf-8"), jsonParams); + Headers hearders = new Headers.Builder().build(); + if (null != head) { + hearders = Headers.of(head); + } + Request request = new Request.Builder() + .url(url) + .post(requestBody) + .headers(hearders) + .build(); + return execute(request); + } + + /** + * Post请求发送JSON数据....{"name":"zhangsan","pwd":"123456"} + * 参数一:请求Url + * 参数二:请求的JSON + */ + public R postJsonParams(String url, String jsonParams) { + return postJsonParams(url, jsonParams, null); + } + + +} + diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/RandomUtil.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/RandomUtil.java new file mode 100644 index 00000000..883195f0 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/RandomUtil.java @@ -0,0 +1,52 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import org.springframework.stereotype.Component; + +import java.math.BigInteger; +import java.util.UUID; + +/** + * @ClassName RandomUtil + * @Description RandomUtil + * @Author Spark + * @Date 2021/11/8 15:47 + **/ +@Component +public class RandomUtil { + + public static final String PRE = "0"; + + // @Resource + // private static SeqDao seqDao; + private static final int ID_MAX_LENGTH = 30; + + public static String getToken() { + return UUID.randomUUID().toString().replace("-", ""); + } + + // protected RandomUtil(SeqDao seqDao){ + // RandomUtil.seqDao = seqDao; + // + // } + + public static String getId(String now) { + Long seq = 1L; + String s = String.valueOf(seq); + StringBuilder bld = new StringBuilder(s); + int length = s.length(); + if (s.length() < 16) { + // 补偿0, + for (int i = 0; i < (16 - length); i++) { + bld.insert(0, PRE); + } + } + return now + bld; + } + + + public static String getId() { + String uuid = UUID.randomUUID().toString().replace("-", ""); + BigInteger subPrefix = new BigInteger(uuid, 16); + return subPrefix.toString().substring(0, ID_MAX_LENGTH); + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/ServletUtils.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/ServletUtils.java new file mode 100644 index 00000000..5d5a58a3 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/ServletUtils.java @@ -0,0 +1,106 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import org.springframework.web.context.request.RequestAttributes; +import org.springframework.web.context.request.RequestContextHolder; +import org.springframework.web.context.request.ServletRequestAttributes; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import java.io.IOException; + + +/** + * 客户端工具类 + * + * @author admin + */ +public class ServletUtils { + /** + * 获取request + */ + public static HttpServletRequest getRequest() { + ServletRequestAttributes requestAttributes = getRequestAttributes(); + if (null != requestAttributes) { + return requestAttributes.getRequest(); + } + return null; + } + + /** + * 获取response + */ + public static HttpServletResponse getResponse() { + ServletRequestAttributes requestAttributes = getRequestAttributes(); + if (null != requestAttributes) { + return requestAttributes.getResponse(); + } + return null; + } + + /** + * 获取session + */ + public static HttpSession getSession() { + HttpServletRequest request = getRequest(); + if (null != request) { + return request.getSession(); + } + return null; + } + + public static ServletRequestAttributes getRequestAttributes() { + RequestAttributes attributes = RequestContextHolder.getRequestAttributes(); + if (null != attributes) { + return (ServletRequestAttributes) attributes; + } + return null; + } + + /** + * 将字符串渲染到客户端 + * + * @param response 渲染对象 + * @param string 待渲染的字符串 + */ + public static void renderString(HttpServletResponse response, String string) { + try { + response.setStatus(200); + response.setContentType("application/json"); + response.setCharacterEncoding("utf-8"); + response.getWriter().print(string); + } catch (IOException e) { + e.printStackTrace(); + } + } + + /** + * 写入图片信息 + */ + public static void renderImg(HttpServletResponse response, String fileType, + String fileName, byte[] fileContent) { + response.setContentType(getContentType(fileType)); + response.setHeader("Pragma", "No-cache"); + response.setHeader("Cache-Control", "no-cache"); + try { + response.getOutputStream().write(fileContent); + } catch (IOException e) { + e.printStackTrace(); + } + } + + public static String getContentType(String fileType) { + if ("gif".equalsIgnoreCase(fileType)) { + return "image/gif"; + } else if ("jpg".equalsIgnoreCase(fileType) || "jpeg".equalsIgnoreCase(fileType)) { + return "image/jpg"; + } else if ("png".equalsIgnoreCase(fileType)) { + return "image/png"; + } else if ("bmp".equalsIgnoreCase(fileType)) { + return "image/bmp"; + } else { + return "application/octet-stream"; + } + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/Sm3Util.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/Sm3Util.java new file mode 100644 index 00000000..59013a90 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/Sm3Util.java @@ -0,0 +1,83 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import org.bouncycastle.crypto.digests.SM3Digest; +import org.bouncycastle.crypto.macs.HMac; +import org.bouncycastle.crypto.params.KeyParameter; +import org.bouncycastle.jce.provider.BouncyCastleProvider; +import org.bouncycastle.pqc.math.linearalgebra.ByteUtils; + +import java.io.UnsupportedEncodingException; +import java.security.Security; +import java.util.Arrays; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:35 + */ +public class Sm3Util { + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + private static final String ENCODING = "UTF-8"; + + /** + * 无密钥加密 + * @param text + * @return + */ + public static String encrypt(String text) throws UnsupportedEncodingException { + String resultHexStr = ""; + byte[] srcData = text.getBytes(ENCODING); + byte[] resultHash = hash(srcData); + resultHexStr = ByteUtils.toHexString(resultHash); + return resultHexStr; + } + + public static byte[] hash(byte[] srcData){ + SM3Digest digest = new SM3Digest(); + digest.update(srcData, 0, srcData.length); + byte[] hash = new byte[digest.getDigestSize()]; + digest.doFinal(hash, 0); + return hash; + } + + /** + * 有密钥加密 + * @param key + * @param srcData + * @return + */ + public static byte[] hmac(byte[] key, byte[] srcData){ + KeyParameter keyParameter = new KeyParameter(key); + SM3Digest digest = new SM3Digest(); + HMac mac = new HMac(digest); + mac.init(keyParameter); + mac.update(srcData, 0, srcData.length); + byte[] result = new byte[mac.getMacSize()]; + mac.doFinal(result, 0); + return result; + } + + /** + * 校验 + * @param srcStr + * @param sm3HexString + * @return + * @throws UnsupportedEncodingException + */ + public static boolean verify(String srcStr, String sm3HexString) throws UnsupportedEncodingException { + boolean flag; + byte[] srcData = srcStr.getBytes(ENCODING); + byte[] sm3Hash = ByteUtils.fromHexString(sm3HexString); + byte[] newHash = hash(srcData); + flag = Arrays.equals(sm3Hash, newHash); + return flag; + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/Sm4Util.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/Sm4Util.java new file mode 100644 index 00000000..6b85e5fd --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/Sm4Util.java @@ -0,0 +1,225 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import org.apache.commons.codec.DecoderException; +import org.apache.commons.codec.binary.Base64; +import org.apache.commons.codec.binary.Hex; +import org.bouncycastle.crypto.CipherParameters; +import org.bouncycastle.crypto.engines.SM4Engine; +import org.bouncycastle.crypto.macs.CBCBlockCipherMac; +import org.bouncycastle.crypto.macs.GMac; +import org.bouncycastle.crypto.modes.GCMBlockCipher; +import org.bouncycastle.crypto.paddings.BlockCipherPadding; +import org.bouncycastle.crypto.paddings.PKCS7Padding; +import org.bouncycastle.crypto.params.KeyParameter; +import org.bouncycastle.crypto.params.ParametersWithIV; +import org.bouncycastle.jce.provider.BouncyCastleProvider; + +import javax.crypto.BadPaddingException; +import javax.crypto.Cipher; +import javax.crypto.IllegalBlockSizeException; +import javax.crypto.KeyGenerator; +import javax.crypto.Mac; +import javax.crypto.NoSuchPaddingException; +import javax.crypto.spec.IvParameterSpec; +import javax.crypto.spec.SecretKeySpec; +import java.nio.charset.StandardCharsets; +import java.security.InvalidAlgorithmParameterException; +import java.security.InvalidKeyException; +import java.security.Key; +import java.security.NoSuchAlgorithmException; +import java.security.NoSuchProviderException; +import java.security.SecureRandom; +import java.security.Security; + +/** + * Created with IntelliJ IDEA. + * + * @author Shawffer + * @description: + * @date: 2022-07-19 + * @time: 17:04 + */ +public final class Sm4Util { + + private Sm4Util() { + throw new UnsupportedOperationException("Sm4Util is a utility class and cannot be instantiated"); + } + + public static final String ALGORITHM_NAME = "SM4"; + public static final String ALGORITHM_NAME_ECB_PADDING = "SM4/ECB/PKCS7Padding"; + public static final String ALGORITHM_NAME_ECB_NOPADDING = "SM4/ECB/NoPadding"; + public static final String ALGORITHM_NAME_CBC_PADDING = "SM4/CBC/PKCS7Padding"; + public static final String ALGORITHM_NAME_CBC_NOPADDING = "SM4/CBC/NoPadding"; + + /** + * SM4算法目前只支持128位(即密钥16字节) + */ + public static final int DEFAULT_KEY_SIZE = 128; + + static { + Security.addProvider(new BouncyCastleProvider()); + } + + public static byte[] generateKey() throws NoSuchAlgorithmException, NoSuchProviderException { + return generateKey(DEFAULT_KEY_SIZE); + } + + public static byte[] generateKey(int keySize) throws NoSuchAlgorithmException, NoSuchProviderException { + KeyGenerator kg = KeyGenerator.getInstance(ALGORITHM_NAME, BouncyCastleProvider.PROVIDER_NAME); + kg.init(keySize, new SecureRandom()); + return kg.generateKey().getEncoded(); + } + + public static byte[] encrypt_ECB_Padding(byte[] key, byte[] data) + throws InvalidKeyException, NoSuchAlgorithmException, NoSuchProviderException, + NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.ENCRYPT_MODE, key); + return cipher.doFinal(data); + } + + public static byte[] decrypt_ECB_Padding(byte[] key, byte[] cipherText) + throws IllegalBlockSizeException, BadPaddingException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_PADDING, Cipher.DECRYPT_MODE, key); + return cipher.doFinal(cipherText); + } + + public static byte[] encrypt_ECB_NoPadding(byte[] key, byte[] data) + throws InvalidKeyException, NoSuchAlgorithmException, NoSuchProviderException, + NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_NOPADDING, Cipher.ENCRYPT_MODE, key); + return cipher.doFinal(data); + } + + public static byte[] decrypt_ECB_NoPadding(byte[] key, byte[] cipherText) + throws IllegalBlockSizeException, BadPaddingException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException { + Cipher cipher = generateECBCipher(ALGORITHM_NAME_ECB_NOPADDING, Cipher.DECRYPT_MODE, key); + return cipher.doFinal(cipherText); + } + + public static byte[] encrypt_CBC_Padding(byte[] key, byte[] iv, byte[] data) + throws InvalidKeyException, NoSuchAlgorithmException, NoSuchProviderException, + NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException, + InvalidAlgorithmParameterException { + Cipher cipher = generateCBCCipher(ALGORITHM_NAME_CBC_PADDING, Cipher.ENCRYPT_MODE, key, iv); + return cipher.doFinal(data); + } + + public static byte[] decrypt_CBC_Padding(byte[] key, byte[] iv, byte[] cipherText) + throws IllegalBlockSizeException, BadPaddingException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException, + InvalidAlgorithmParameterException { + Cipher cipher = generateCBCCipher(ALGORITHM_NAME_CBC_PADDING, Cipher.DECRYPT_MODE, key, iv); + return cipher.doFinal(cipherText); + } + + public static byte[] encrypt_CBC_NoPadding(byte[] key, byte[] iv, byte[] data) + throws InvalidKeyException, NoSuchAlgorithmException, NoSuchProviderException, + NoSuchPaddingException, IllegalBlockSizeException, BadPaddingException, + InvalidAlgorithmParameterException { + Cipher cipher = generateCBCCipher(ALGORITHM_NAME_CBC_NOPADDING, Cipher.ENCRYPT_MODE, key, iv); + return cipher.doFinal(data); + } + + public static byte[] decrypt_CBC_NoPadding(byte[] key, byte[] iv, byte[] cipherText) + throws IllegalBlockSizeException, BadPaddingException, InvalidKeyException, + NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException, + InvalidAlgorithmParameterException { + Cipher cipher = generateCBCCipher(ALGORITHM_NAME_CBC_NOPADDING, Cipher.DECRYPT_MODE, key, iv); + return cipher.doFinal(cipherText); + } + + public static byte[] doCMac(byte[] key, byte[] data) throws NoSuchProviderException, NoSuchAlgorithmException, + InvalidKeyException { + Key keyObj = new SecretKeySpec(key, ALGORITHM_NAME); + return doMac("SM4-CMAC", keyObj, data); + } + + public static byte[] doGMac(byte[] key, byte[] iv, int tagLength, byte[] data) { + org.bouncycastle.crypto.Mac mac = new GMac(new GCMBlockCipher(new SM4Engine()), tagLength * 8); + return doMac(mac, key, iv, data); + } + + /** + * 默认使用PKCS7Padding/PKCS5Padding填充的CBCMAC + * + * @param key + * @param iv + * @param data + * @return + */ + public static byte[] doCBCMac(byte[] key, byte[] iv, byte[] data) { + SM4Engine engine = new SM4Engine(); + org.bouncycastle.crypto.Mac mac = new CBCBlockCipherMac(engine, engine.getBlockSize() * 8, new PKCS7Padding()); + return doMac(mac, key, iv, data); + } + + /** + * @param key + * @param iv + * @param padding 可以传null,传null表示NoPadding,由调用方保证数据必须是BlockSize的整数倍 + * @param data + * @return + * @throws Exception + */ + public static byte[] doCBCMac(byte[] key, byte[] iv, BlockCipherPadding padding, byte[] data) throws Exception { + SM4Engine engine = new SM4Engine(); + if (padding == null) { + if (data.length % engine.getBlockSize() != 0) { + throw new Exception("if no padding, data length must be multiple of SM4 BlockSize"); + } + } + org.bouncycastle.crypto.Mac mac = new CBCBlockCipherMac(engine, engine.getBlockSize() * 8, padding); + return doMac(mac, key, iv, data); + } + + + private static byte[] doMac(org.bouncycastle.crypto.Mac mac, byte[] key, byte[] iv, byte[] data) { + CipherParameters cipherParameters = new KeyParameter(key); + mac.init(new ParametersWithIV(cipherParameters, iv)); + mac.update(data, 0, data.length); + byte[] result = new byte[mac.getMacSize()]; + mac.doFinal(result, 0); + return result; + } + + private static byte[] doMac(String algorithmName, Key key, byte[] data) throws NoSuchProviderException, + NoSuchAlgorithmException, InvalidKeyException { + Mac mac = Mac.getInstance(algorithmName, BouncyCastleProvider.PROVIDER_NAME); + mac.init(key); + mac.update(data); + return mac.doFinal(); + } + + private static Cipher generateECBCipher(String algorithmName, int mode, byte[] key) + throws NoSuchAlgorithmException, NoSuchProviderException, NoSuchPaddingException, + InvalidKeyException { + Cipher cipher = Cipher.getInstance(algorithmName, BouncyCastleProvider.PROVIDER_NAME); + Key sm4Key = new SecretKeySpec(key, ALGORITHM_NAME); + cipher.init(mode, sm4Key); + return cipher; + } + + private static Cipher generateCBCCipher(String algorithmName, int mode, byte[] key, byte[] iv) + throws InvalidKeyException, InvalidAlgorithmParameterException, NoSuchAlgorithmException, + NoSuchProviderException, NoSuchPaddingException { + Cipher cipher = Cipher.getInstance(algorithmName, BouncyCastleProvider.PROVIDER_NAME); + Key sm4Key = new SecretKeySpec(key, ALGORITHM_NAME); + IvParameterSpec ivParameterSpec = new IvParameterSpec(iv); + cipher.init(mode, sm4Key, ivParameterSpec); + return cipher; + } + + public static String encryptEcb(String key, String text) throws DecoderException, NoSuchPaddingException, IllegalBlockSizeException, NoSuchAlgorithmException, BadPaddingException, InvalidKeyException, NoSuchProviderException { + return Base64.encodeBase64String(Sm4Util.encrypt_ECB_Padding(Hex.decodeHex(key), text.getBytes(StandardCharsets.UTF_8))); + } + + public static String decryptEcb(String key, String text) throws DecoderException, IllegalBlockSizeException, NoSuchPaddingException, BadPaddingException, NoSuchAlgorithmException, InvalidKeyException, NoSuchProviderException { + return new String(Sm4Util.decrypt_ECB_Padding(Hex.decodeHex(key), Base64.decodeBase64((text)))); + } + + public static String generateKeyHex() throws Exception { + return Hex.encodeHexString(Sm4Util.generateKey(DEFAULT_KEY_SIZE)); + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/SpringUtils.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/SpringUtils.java new file mode 100644 index 00000000..6e014f90 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/SpringUtils.java @@ -0,0 +1,53 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import org.springframework.beans.BeansException; +import org.springframework.context.ApplicationContext; +import org.springframework.context.ApplicationContextAware; +import org.springframework.stereotype.Component; + +/** + * spring工具类 方便在非spring管理环境中获取bean + * + * @author admin + */ +@Component +public final class SpringUtils implements ApplicationContextAware { + /** + * Spring应用上下文环境 + */ + private static ApplicationContext applicationContext; + + /** + * 获取对象 + * + * @param name + * @return Object 一个以所给名字注册的bean的实例 + * @throws BeansException + */ + @SuppressWarnings("unchecked") + public static T getBean(String name) throws BeansException { + return (T) applicationContext.getBean(name); + } + + /** + * 获取类型为requiredType的对象 + * + * @param clz + * @return + * @throws BeansException + */ + public static T getBean(Class clz) throws BeansException { + return applicationContext.getBean(clz); + } + + @Override + public void setApplicationContext(ApplicationContext applicationContext) throws BeansException { + setContext(applicationContext); + } + + public static void setContext(ApplicationContext applicationContext) { + SpringUtils.applicationContext = applicationContext; + } + + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/UUIDUtil.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/UUIDUtil.java new file mode 100644 index 00000000..bcb89656 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/java/com/jiuyv/sptcc/agile/research/utils/UUIDUtil.java @@ -0,0 +1,34 @@ +package com.jiuyv.sptcc.agile.research.utils; + +import com.fasterxml.uuid.EthernetAddress; +import com.fasterxml.uuid.Generators; +import com.fasterxml.uuid.impl.RandomBasedGenerator; +import com.fasterxml.uuid.impl.TimeBasedGenerator; + +import java.util.UUID; + +public class UUIDUtil { + // 修改成constructMulticastAddress ,防止jmv多个实例在一台服务器上 + private static final TimeBasedGenerator uuidGenerator = Generators.timeBasedGenerator(EthernetAddress.constructMulticastAddress()); + + // need to pass Ethernet address; can either use real one (shown here) + public static UUID getTimebaseUUID() { + // or bogus which would be gotten with: EthernetAddress.constructMulticastAddress() + + // also: we don't specify synchronizer, getting an intra-JVM syncer; there is + // also external file-locking-based synchronizer if multiple JVMs run JUG + return uuidGenerator.generate(); + } + + public static UUID getRandomBaseUUID() { + RandomBasedGenerator uuidGenerator = Generators.randomBasedGenerator(); + return uuidGenerator.generate(); + } + + public static String getRandomBaseUUIDshort() { + RandomBasedGenerator uuidGenerator = Generators.randomBasedGenerator(); + return String.valueOf( + getRandomBaseUUID().getLeastSignificantBits()).replaceFirst("-", ""); + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/resources/application-default.yml b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/resources/application-default.yml new file mode 100644 index 00000000..d4ad1291 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/resources/application-default.yml @@ -0,0 +1,24 @@ +request: + feign: + remote: + coreUrl: 172.16.12.106:18090 + +sentinel-integration: +#集群动态 + cluster: + enable: true + # eureka 拉取流控规则文件地址 + httpUrl: http://112.64.187.14:8081/svn/sptccmarketing/marketing/flow-rule/test/${spring.application.name}-cluster.yml + #流控规则 SVN地址 + svnBaseUrl: svn://112.64.187.14:8081/svn/sptccmarketing/marketing/flow-rule/test/ + username: zhangshengdi + password: zsd1990513 + refreshFileMs: 10000000 + #服务部署 本地流控规则文件副本保存地址 + localRuleFilePath: /home/tomcat/gate/flow-rule/ + defaultCount: 100 + +sm4: + secret: 54a09c37e9ef7f1a885a34ceb49be6da + salt: 1234567812345678 + diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/resources/application.yml b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/resources/application.yml new file mode 100644 index 00000000..fe3ef73b --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/resources/application.yml @@ -0,0 +1,80 @@ +server: + tomcat: + threads: + max: 200 + port: 18620 + compression: + enabled: true + min-response-size: 1024 + +spring: + application: + name: agile-research-gateway + config: + use-legacy-processing: true + cloud: + loadbalancer: + retry: + enabled: false + servlet: + multipart: + max-file-size: 100MB + max-request-size: 20MB + security: + user: + password: agile + name: agile2023!@# + +feign: + httpclient: + enabled: false + #替换默认的http连接 + okhttp: + enabled: true + hystrix: + enabled: false # 开启Feign的熔断功能 + client: + config: + default: + connectTimeout: 10000 + readTimeout: 20000 + loggerLevel: basic + compression: + request: + enabled: true # 开启请求压缩 + mime-types: text/html,application/xml,application/json #设置压缩的数据类型 + min-request-size: 2048 # 设置触发压缩的大小下 + response: + enabled: true # 开启请求压缩 + mime-types: text/html,application/xml,application/json #设置压缩的数据类型 + min-request-size: 2048 # 设置触发压缩的大小下 + + + +ribbon: + ConnectTimeout: 10000 # 连接超时时长 -tcp握手 + ReadTimeout: 20000 # 数据通信超时时长 + MaxAutoRetries: 0 # 当前服务器的重试次数 + MaxAutoRetriesNextServer: 0 # 重试多少次服务 + OkToRetryOnAllOperations: false # 是否对所有的请求方式都重试 123456 + +management: + security: + enabled: false + metrics: + export: + prometheus: + enabled: true + endpoint: + metrics: + enabled: true + prometheus: + enabled: true + pause: + enabled: true + restart: + enabled: true + endpoints: + web: + exposure: + include: pause,restart,refresh,prometheus,health,service-registry,metrics \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/resources/logback-boot.xml b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/resources/logback-boot.xml new file mode 100644 index 00000000..f665b9ef --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/main/resources/logback-boot.xml @@ -0,0 +1,96 @@ + + + + + + + + + + System.out + + %d{HH:mm:ss.SSS} %X{spanId:-} %X{traceId:-} [%thread] %-5level %logger{36} - %msg%n + UTF-8 + + + + + ${LOG_HOME}/${APP_NAME}.log + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log.zip + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %X{traceId:-} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + + ${LOG_HOME}/${APP_NAME}.log.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} %X{traceId:-} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + + 日志文件输出的文件名 + ${JSON_LOG_HOME}/${APP_NAME}.json.%d{yyyy-MM-dd}.%i.log + 7 + + + 100MB + + + + + + + { + "timestamp": "%d{yyyy-MM-dd HH:mm:ss.SSS}", + "severity": "%level", + "service": "${APP_NAME:-}", + "trace": "%X{traceId:-}", + "span": "%X{spanId:-}", + "parent": "%X{X-B3-ParentSpanId:-}", + "exportable": "%X{X-Span-Export:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + + System.err + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/BaseApplicationTest.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/BaseApplicationTest.java new file mode 100644 index 00000000..5f1bafdb --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/BaseApplicationTest.java @@ -0,0 +1,37 @@ +package com.jiuyv.sptcc.agile.research; + +import com.fasterxml.jackson.databind.ObjectMapper; +import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.MockitoAnnotations; +import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.ActiveProfiles; +import org.springframework.test.context.junit.jupiter.SpringExtension; +import org.springframework.test.web.servlet.MockMvc; + +import javax.annotation.Resource; + +/** + * Controller接口测试继承该接口(需要验证的) + * 通用登录的实现以及header处理 + * @author zhouliang + * + */ +@SpringBootTest(classes = ResearchServiceApplication.class) +@AutoConfigureMockMvc +@ActiveProfiles("test")//测试配置 +@ExtendWith(SpringExtension.class) +public abstract class BaseApplicationTest { + @Resource + protected MockMvc mockMvc; + + @Resource + protected ObjectMapper objectMapper; + + @BeforeEach + public void initMocks() throws Exception { + MockitoAnnotations.openMocks(this); + } + +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/RealFlow/RealLineFlow.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/RealFlow/RealLineFlow.java new file mode 100644 index 00000000..caedcc01 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/RealFlow/RealLineFlow.java @@ -0,0 +1,60 @@ +package com.jiuyv.sptcc.agile.research.RealFlow; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.jiuyv.sptcc.agile.research.BaseApplicationTest; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.dto.RespVo; +import com.jiuyv.sptcc.agile.research.sm4.ApiJsonTest; +import com.jiuyv.sptcc.agile.research.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.research.utils.Sm4Util; +import com.jiuyv.sptcc.agile.research.utils.UUIDUtil; +import org.junit.jupiter.api.Test; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.http.MediaType; +import org.springframework.test.web.servlet.MvcResult; +import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; +import org.springframework.test.web.servlet.result.MockMvcResultMatchers; + +import java.util.Date; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +public class RealLineFlow extends BaseApplicationTest { + + public static final Logger log = LoggerFactory.getLogger(RealLineFlow.class); + + + @Test + void testApi() throws Exception { + + ReqVo reqVo = new ReqVo(); + reqVo.setBody("g7iDQSPyTSrVIBKzf1fipnG0q3glwOFkwSY1IuRNZe7xebGLZFVC7ZteyRw2UZRAPs6t09tXKkf/x/kPLRQCgcnkbVuJK3uUAn/w9ZYQyCnXko7skSUe2wmlLns/PshT"); + reqVo.setSign("d14ed993002c043cdd3b958b0709e79bd92290cabb0706136a162a7bd2c2e36e"); + reqVo.setKeyVersion("01"); + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setOrgCode("12hjdjff"); + reqVo.setSubOrgCode(""); + reqVo.setTimestamp(new Date()); + + String url = "/agile-research/public/realLineFlow"; + + MvcResult mvcResult=mockMvc.perform(MockMvcRequestBuilders + .post(url) + .contentType(MediaType.APPLICATION_JSON) + .accept(MediaType.APPLICATION_JSON_UTF8) + .content(objectMapper.writeValueAsBytes(reqVo))) + .andExpect(MockMvcResultMatchers.status().isOk()) + .andReturn(); + + String contentAsString = mvcResult.getResponse().getContentAsString(); + log.info("返回对象string{}",contentAsString); + //如果不是JSON的自行修改 + RespVo res= JacksonUtil.string2Obj(mvcResult.getResponse().getContentAsString(), new TypeReference() {}); + assert res != null; + assertEquals("success",res.getRespCode()); + + + log.info("解密{}", Sm4Util.decryptEcb(ApiJsonTest.SM4_KEY, res.getBody())); + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/sm4/ApiJsonTest.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/sm4/ApiJsonTest.java new file mode 100644 index 00000000..2e00d198 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/sm4/ApiJsonTest.java @@ -0,0 +1,289 @@ +package com.jiuyv.sptcc.agile.research.sm4; + +import com.jiuyv.sptcc.agile.dataservice.dto.enums.FileTypeEnum; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.DownLoadRequest; +import com.jiuyv.sptcc.agile.dataservice.dto.request.product.gateway.*; +import com.jiuyv.sptcc.agile.research.dto.ReqVo; +import com.jiuyv.sptcc.agile.research.utils.JacksonUtil; +import com.jiuyv.sptcc.agile.research.utils.Sm3Util; +import com.jiuyv.sptcc.agile.research.utils.Sm4Util; +import com.jiuyv.sptcc.agile.research.utils.UUIDUtil; +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.text.SimpleDateFormat; +import java.util.Date; + +@ExtendWith(MockitoExtension.class) +public class ApiJsonTest { + + private static final Logger LOGGER = LoggerFactory.getLogger(ApiJsonTest.class); + + public static final String ORG_NO="JGH000000000010020"; + public static final String SM4_KEY="54a09c37e9ef7f1a885a34ceb49be6da"; + public static final String SM3_KEY="1234567812345678"; + + @Test + void testReq() throws Exception { + + String orgNo = ORG_NO; + + String sm4Key = SM4_KEY; + String sm3Key = SM3_KEY; + + + + DownLoadRequest request = new DownLoadRequest(); + String date = "2023-08-25"; + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); + Date parse = sdf.parse(date); + LOGGER.info("{}",parse); + + String requestBody = ""; + String body = ""; + String sign = ""; + + // 加密 4 ps:aes 2 + String newBody = ""; + String newSign = ""; + + + ReqVo reqVo = new ReqVo(); + reqVo.setKeyVersion("1.0"); + reqVo.setOrgCode(ORG_NO); + reqVo.setTimestamp(new Date()); + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + + LOGGER.info(">>>>>>>>>>>>>>>线路客流量-小时<<<<<<<<<<<<<<<<<<"); + + LineHourRequest lineHourRequest = new LineHourRequest(); + lineHourRequest.setMetricDate(parse); + requestBody = JacksonUtil.obj2String(lineHourRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + String requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>>线路客流量-每日<<<<<<<<<<<<<<<<<<"); + LineDayReqRequest lineDayReqRequest = new LineDayReqRequest(); + lineDayReqRequest.setMetricDate(parse); + requestBody = JacksonUtil.obj2String(lineDayReqRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + + + + LOGGER.info(">>>>>>>>>>>>>>>线路客流量-每月<<<<<<<<<<<<<<<<<<"); + LineMonthRequest lineMonthRequest = new LineMonthRequest(); + lineMonthRequest.setMetricMonth(parse); + requestBody = JacksonUtil.obj2String(lineMonthRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody :" + newBody); + LOGGER.info("newSign:" + newSign); + + LOGGER.info(">>>>>>>>>>>>>>>站点小时客流量<<<<<<<<<<<<<<<<<<"); + StationDayRequest stationDayRequest = new StationDayRequest(); + stationDayRequest.setMetricDate(parse); + requestBody = JacksonUtil.obj2String(stationDayRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>>站点日客流量<<<<<<<<<<<<<<<<<<"); + StationHourRequest stationHourRequest = new StationHourRequest(); + stationHourRequest.setMetricDate(parse); + requestBody = JacksonUtil.obj2String(stationHourRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>>站点月客流量<<<<<<<<<<<<<<<<<<"); + StationMonthRequest stationMonthRequest = new StationMonthRequest(); + stationMonthRequest.setMetricMonth(parse); + requestBody = JacksonUtil.obj2String(stationMonthRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>>站点小时换乘量<<<<<<<<<<<<<<<<<<"); + StationTransHourRequest stationTransHourRequest = new StationTransHourRequest(); + stationTransHourRequest.setMetricDate(parse); + requestBody = JacksonUtil.obj2String(stationTransHourRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>>站点日换乘量<<<<<<<<<<<<<<<<<<"); + StationTransDayRequest stationTransDayRequest = new StationTransDayRequest(); + stationTransDayRequest.setMetricDate(parse); + requestBody = JacksonUtil.obj2String(stationTransDayRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>> 站点月换乘量<<<<<<<<<<<<<<<<<<"); + StationTransMonthRequest stationTransMonthRequest = new StationTransMonthRequest(); + stationTransMonthRequest.setMetricMonth(parse); + requestBody = JacksonUtil.obj2String(stationTransMonthRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>>站点常乘客日刷卡量<<<<<<<<<<<<<<<<<<"); + StationFreqDayRequest stationFreqDayRequest = new StationFreqDayRequest(); + stationFreqDayRequest.setMetricDate(parse); + requestBody = JacksonUtil.obj2String(stationFreqDayRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>> 站点常乘客月刷卡量<<<<<<<<<<<<<<<<<<"); + StationFreqMonthRequest stationFreqMonthRequest = new StationFreqMonthRequest(); + stationFreqMonthRequest.setMetricMonth(parse); + requestBody = JacksonUtil.obj2String(stationFreqMonthRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>>站点常乘客日换乘刷卡量<<<<<<<<<<<<<<<<<<"); + StationFreqTransDayRequest stationFreqTransDayRequest = new StationFreqTransDayRequest(); + stationFreqTransDayRequest.setMetricDate(parse); + requestBody = JacksonUtil.obj2String(stationFreqTransDayRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>>站点常乘客月换乘刷卡量<<<<<<<<<<<<<<<<<<"); + StationFreqTransMonthRequest stationFreqTransMonthRequest = new StationFreqTransMonthRequest(); + stationFreqTransMonthRequest.setMetricMonth(parse); + requestBody = JacksonUtil.obj2String(stationFreqTransMonthRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + LOGGER.info(">>>>>>>>>>>>>>>班次日客流量<<<<<<<<<<<<<<<<<<"); + RouteDayRequest routeDayRequest = new RouteDayRequest(); + routeDayRequest.setMetricDate(parse); + requestBody = JacksonUtil.obj2String(routeDayRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + + LOGGER.info(">>>>>>>>>>>>>>>下载接口<<<<<<<<<<<<<<<<<<"); + + DownLoadRequest downLoadRequest = new DownLoadRequest(); + + String fileDate = "2024-01"; + sdf = new SimpleDateFormat("yyyy-MM"); + downLoadRequest.setFileType(FileTypeEnum.LINE_MONTH.getCode()); + downLoadRequest.setDate(sdf.parse(fileDate)); + downLoadRequest.setOrgNo(ORG_NO); + requestBody = JacksonUtil.obj2String(downLoadRequest); + newBody = Sm4Util.encryptEcb(sm4Key, requestBody); + newSign = Sm3Util.encrypt(newBody + sm3Key); + LOGGER.info("newBody:" + newBody); + LOGGER.info("newSign:" + newSign); + + reqVo.setSeriNo(UUIDUtil.getRandomBaseUUIDshort()); + reqVo.setBody(newBody); + reqVo.setSign(newSign); + requestJson = JacksonUtil.obj2String(reqVo); + LOGGER.info("requestJson:" + requestJson); + + + Assertions.assertNotNull(requestJson); + + } +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/sm4/Sm4UtilTest.java b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/sm4/Sm4UtilTest.java new file mode 100644 index 00000000..1da448de --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/java/com/jiuyv/sptcc/agile/research/sm4/Sm4UtilTest.java @@ -0,0 +1,99 @@ +package com.jiuyv.sptcc.agile.research.sm4; + +import com.jiuyv.sptcc.agile.research.utils.Sm4Util; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.junit.jupiter.MockitoExtension; +import org.slf4j.Logger; + +import java.nio.charset.StandardCharsets; + +import static org.junit.jupiter.api.Assertions.*; + +@ExtendWith(MockitoExtension.class) +public class Sm4UtilTest { + + public static final Logger LOGGER = org.slf4j.LoggerFactory.getLogger(Sm4UtilTest.class); + + @Test + void testGenerateKey() throws Exception { + byte[] key = Sm4Util.generateKey(); + assertEquals(16, key.length); + } + + @Test + void testEncrypt_ECB_Padding() throws Exception { + byte[] key = Sm4Util.generateKey(); + byte[] data = "Hello, World!".getBytes(StandardCharsets.UTF_8); + byte[] encrypted = Sm4Util.encrypt_ECB_Padding(key, data); + byte[] decrypted = Sm4Util.decrypt_ECB_Padding(key, encrypted); + assertArrayEquals(data, decrypted); + } + + // @Test + // void testEncrypt_ECB_NoPadding() throws Exception { + // byte[] key = Sm4Util.generateKey(); + // byte[] data = "Hello, World!".getBytes(StandardCharsets.UTF_8); + // byte[] encrypted = Sm4Util.encrypt_ECB_NoPadding(key, data); + // byte[] decrypted = Sm4Util.decrypt_ECB_NoPadding(key, encrypted); + // assertArrayEquals(data, decrypted); + // } + + @Test + void testEncrypt_CBC_Padding() throws Exception { + byte[] key = Sm4Util.generateKey(); + byte[] iv = new byte[16]; + byte[] data = "Hello, World!".getBytes(StandardCharsets.UTF_8); + byte[] encrypted = Sm4Util.encrypt_CBC_Padding(key, iv, data); + byte[] decrypted = Sm4Util.decrypt_CBC_Padding(key, iv, encrypted); + assertArrayEquals(data, decrypted); + } + + // @Test + // void testEncrypt_CBC_NoPadding() throws Exception { + // byte[] key = Sm4Util.generateKey(); + // byte[] iv = new byte[16]; + // byte[] data = "Hello, World!".getBytes(StandardCharsets.UTF_8); + // byte[] encrypted = Sm4Util.encrypt_CBC_NoPadding(key, iv, data); + // byte[] decrypted = Sm4Util.decrypt_CBC_NoPadding(key, iv, encrypted); + // assertArrayEquals(data, decrypted); + // } + + @Test + void testDoCMac() throws Exception { + byte[] key = Sm4Util.generateKey(); + byte[] data = "Hello, World!".getBytes(StandardCharsets.UTF_8); + byte[] mac = Sm4Util.doCMac(key, data); + assertEquals(16, mac.length); + } + + // @Test + // void testDoGMac() throws Exception { + // byte[] key = Sm4Util.generateKey(); + // byte[] iv = new byte[16]; + // byte[] data = "Hello, World!".getBytes(StandardCharsets.UTF_8); + // byte[] mac = Sm4Util.doGMac(key, iv, 128, data); + // assertEquals(16, mac.length); + // } + + @Test + void testDoCBCMac() throws Exception { + byte[] key = Sm4Util.generateKey(); + byte[] iv = new byte[16]; + byte[] data = "Hello, World!".getBytes(StandardCharsets.UTF_8); + byte[] mac = Sm4Util.doCBCMac(key, iv, data); + assertEquals(16, mac.length); + } + + @Test + void testEncryptEcb() throws Exception { + String key = "01234567"; + String data = "Hello, World!"; + + String s = Sm4Util.generateKeyHex(); + + LOGGER.info("key: {}", s); + assertNotNull(s); + } + +} diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/resources/application-test.yml b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/resources/application-test.yml new file mode 100644 index 00000000..d4ad1291 --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/agile-research-service/src/test/resources/application-test.yml @@ -0,0 +1,24 @@ +request: + feign: + remote: + coreUrl: 172.16.12.106:18090 + +sentinel-integration: +#集群动态 + cluster: + enable: true + # eureka 拉取流控规则文件地址 + httpUrl: http://112.64.187.14:8081/svn/sptccmarketing/marketing/flow-rule/test/${spring.application.name}-cluster.yml + #流控规则 SVN地址 + svnBaseUrl: svn://112.64.187.14:8081/svn/sptccmarketing/marketing/flow-rule/test/ + username: zhangshengdi + password: zsd1990513 + refreshFileMs: 10000000 + #服务部署 本地流控规则文件副本保存地址 + localRuleFilePath: /home/tomcat/gate/flow-rule/ + defaultCount: 100 + +sm4: + secret: 54a09c37e9ef7f1a885a34ceb49be6da + salt: 1234567812345678 + diff --git a/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/pom.xml b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/pom.xml new file mode 100644 index 00000000..65ec026e --- /dev/null +++ b/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway/pom.xml @@ -0,0 +1,221 @@ + + + 4.0.0 + com.jiuyv.sptcc.agile + agile-research-gateway + 0.0.1-SNAPSHOT + agile-research-gateway + agile-research-gateway + pom + + + agile-research-service + agile-research-api + + + + 1.8 + UTF-8 + UTF-8 + 2.6.13 + 2021.0.5 + 3.12.0 + 3.1.2 + + 1.9.17 + 3.2.0 + 6.3 + 0.2.12 + 2.13.5 + 11.10 + 1.1.1 + + + + + + org.springframework.cloud + spring-cloud-dependencies + ${spring-cloud.version} + pom + import + + + org.springframework.boot + spring-boot-dependencies + ${spring-boot.version} + pom + import + + + + + com.jiuyv.sptcc.agile + agile-data-api + ${data.api.version} + + + + com.jiuyv.sptcc.agile + agile-research-api + 0.0.1-SNAPSHOT + + + + org.apache.commons + commons-lang3 + ${commons.lang3.version} + + + + com.fasterxml.jackson.core + jackson-core + ${jackson.version} + + + com.fasterxml.jackson.core + jackson-annotations + ${jackson.version} + + + com.fasterxml.jackson.core + jackson-databind + ${jackson.version} + + + + io.github.openfeign + feign-okhttp + ${okhttp.version} + + + + com.jiuyv.agile + agile-common + 0.1.3 + + + + com.jiuyv.spring + monitor-starter-v2 + 1.9.17 + + + + com.jiuyv + smtools + ${smtools-version} + + + + com.fasterxml.uuid + java-uuid-generator + ${uuid.generator.version} + + + log4j + log4j + + + + + + net.logstash.logback + logstash-logback-encoder + ${logstash.logback.version} + + + + + + + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway + scm:svn:http://172.16.12.10/svn/sptcc_agile_etl/src/agile-research-gateway/trunk/agile-research-gateway + + + + + nexus-releases + Internal Releases + http://172.16.12.11:8082/repository/maven-releases/ + + + + nexus-snapshots + Internal Snapshots + http://172.16.12.11:8082/repository/maven-snapshots/ + + + + + + jiuyv + jiuyv + http://172.16.12.11:8082/repository/maven-public/ + + true + always + + + + jboss + jboss + http://repository.jboss.org/maven2/ + + false + + + + geotools + geotools + http://maven.geotools.fr/repository/ + + false + + + + jahia + jahia + http://maven.jahia.org/maven2/ + + false + + + + vars + vars + http://vars.sourceforge.net/maven2/ + + false + + + + + + + jiuyv + jiuyv Plugin Repository + http://172.16.12.11:8082/repository/maven-public/ + + + central + Maven Plugin Repository + http://repo1.maven.org/maven2/ + + + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + none + + + + + diff --git a/sptcc_agile_etl/src/agile.batch/src/trunk/agile-bacth/agile-batch-service/src/main/java/com/jiuyv/sptcc/agile/batch/syncJiushiData/common/SqlHandlerUtilx.java b/sptcc_agile_etl/src/agile.batch/src/trunk/agile-bacth/agile-batch-service/src/main/java/com/jiuyv/sptcc/agile/batch/syncJiushiData/common/SqlHandlerUtilx.java index 150ca9c9..007bb407 100644 --- a/sptcc_agile_etl/src/agile.batch/src/trunk/agile-bacth/agile-batch-service/src/main/java/com/jiuyv/sptcc/agile/batch/syncJiushiData/common/SqlHandlerUtilx.java +++ b/sptcc_agile_etl/src/agile.batch/src/trunk/agile-bacth/agile-batch-service/src/main/java/com/jiuyv/sptcc/agile/batch/syncJiushiData/common/SqlHandlerUtilx.java @@ -11,6 +11,7 @@ import java.util.Map.Entry; import org.apache.commons.lang3.StringUtils; import org.apache.ibatis.type.BigDecimalTypeHandler; +import org.apache.ibatis.type.IntegerTypeHandler; import org.apache.ibatis.type.LongTypeHandler; import org.apache.ibatis.type.SqlDateTypeHandler; import org.apache.ibatis.type.SqlTimestampTypeHandler; @@ -38,6 +39,9 @@ public class SqlHandlerUtilx { } //把SQL关系配置转换为实际的sql语句 public static SqlHandlerResultVO convertJsonToSql(String fromQuerySql, String toTableName, String cfgJson) throws Exception { + if(StringUtils.isBlank(cfgJson)) { + cfgJson = "*"; + } SqlHandlerResultVO vo=new SqlHandlerResultVO(); fromQuerySql=fromQuerySql.replace("\n", " "); @@ -74,7 +78,7 @@ public class SqlHandlerUtilx { if(vals.length>1) { convertVO.setConvertType(vals[1]); } - fieldMapping.put(key, convertVO); + fieldMapping.put(key.toLowerCase(), convertVO); values.add("?"); } } @@ -174,7 +178,7 @@ public class SqlHandlerUtilx { value = new SqlTimestampTypeHandler().getResult(resultSet,colname); } else if(!stringFlag && SyncDataConstants.CONVERT_TYPE_TO_INTEGER.equalsIgnoreCase(type)) { - value = new SqlTimestampTypeHandler().getResult(resultSet,colname); + value = new IntegerTypeHandler().getResult(resultSet,colname); } else if(!stringFlag && SyncDataConstants.CONVERT_TYPE_TO_BIGDECIMAL.equalsIgnoreCase(type)) { value = new BigDecimalTypeHandler().getResult(resultSet,colname); diff --git a/sptcc_agile_etl/src/agile.batch/src/trunk/agile-bacth/agile-batch-service/src/main/java/com/jiuyv/sptcc/agile/batch/syncJiushiData/common/reader/ReaderWriterHelper.java b/sptcc_agile_etl/src/agile.batch/src/trunk/agile-bacth/agile-batch-service/src/main/java/com/jiuyv/sptcc/agile/batch/syncJiushiData/common/reader/ReaderWriterHelper.java index 449b57c1..b5607384 100644 --- a/sptcc_agile_etl/src/agile.batch/src/trunk/agile-bacth/agile-batch-service/src/main/java/com/jiuyv/sptcc/agile/batch/syncJiushiData/common/reader/ReaderWriterHelper.java +++ b/sptcc_agile_etl/src/agile.batch/src/trunk/agile-bacth/agile-batch-service/src/main/java/com/jiuyv/sptcc/agile/batch/syncJiushiData/common/reader/ReaderWriterHelper.java @@ -237,7 +237,7 @@ public class ReaderWriterHelper { if(nomappingFlag) { currcols.add(ex.getKey()); }else { - SqlHandlerTypeVO mappingval=map.get(ex.getKey()); + SqlHandlerTypeVO mappingval=map.get(ex.getKey().toLowerCase()); if(mappingval!=null) { currcols.add(mappingval.getColumnCode()); } @@ -267,7 +267,7 @@ public class ReaderWriterHelper { List row= new ArrayList<>(); for(Entry ex: colMap.entrySet()) { - SqlHandlerTypeVO mappingval=map.get(ex.getKey()); + SqlHandlerTypeVO mappingval=map.get(ex.getKey().toLowerCase()); if(nomappingFlag || mappingval!=null) { //转换类型 Object colValue = SqlHandlerUtilx.convertType(resultSet, ex.getValue() diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/pom.xml b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/pom.xml new file mode 100644 index 00000000..bf90f40d --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/pom.xml @@ -0,0 +1,56 @@ + + 4.0.0 + agile-common + 1.2.10 + jar + + + + com.jiuyv.sptcc.agile + agile-system + 1.2.10 + + + + + com.fasterxml.jackson.core + jackson-annotations + + + + org.apache.commons + commons-lang3 + + + + org.hibernate.validator + hibernate-validator + compile + + + + org.springframework.boot + spring-boot-starter-logging + + + + + + + + org.apache.maven.plugins + maven-javadoc-plugin + + none + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/constant/BaseResultCode.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/constant/BaseResultCode.java new file mode 100644 index 00000000..7519edc7 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/constant/BaseResultCode.java @@ -0,0 +1,43 @@ +package com.jiuyv.sptccc.agile.common.constant; + +import com.jiuyv.sptccc.agile.common.core.IErrorCode; + +/** + * + * 返回码,与返回对象 + * @ClassName : BaseResultCode + * @Description : + * @Author : sky + * @Date: 2023-09-21 19:10 + */ +public enum BaseResultCode implements IErrorCode { + + SUCCESS("success", "操作成功"), + PROCESS("process", "订单处理中,请稍后查询"), + FAILED("failed", "操作失败"), + ; + + private String code; + private String message; + + private BaseResultCode(String code, String message) { + this.code = code; + this.message = message; + } + + /** + * 返回码 + */ + @Override + public String getCode() { + return code; + } + + /** + * 返回信息 + */ + @Override + public String getMessage() { + return message; + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/constant/DateTimeFormatConstant.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/constant/DateTimeFormatConstant.java new file mode 100644 index 00000000..17984794 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/constant/DateTimeFormatConstant.java @@ -0,0 +1,28 @@ +package com.jiuyv.sptccc.agile.common.constant; + +/** + * @ClassName : DateFormart + * @Description : + * @Author : sky + * @Date: 2023-09-19 16:31 + */ +public final class DateTimeFormatConstant { + + private DateTimeFormatConstant() { + throw new IllegalStateException("Utility class"); + } + + public static final String YYYY = "yyyy"; + + public static final String YYYY_MM = "yyyy-MM"; + + public static final String YYYY_MM_DD = "yyyy-MM-dd"; + + public static final String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; + + public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; + + private static final String[] parsePatterns = {"yyyy-MM-dd", "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd HH:mm", "yyyy-MM", + "yyyy/MM/dd", "yyyy/MM/dd HH:mm:ss", "yyyy/MM/dd HH:mm", "yyyy/MM", "yyyy.MM.dd", "yyyy.MM.dd HH:mm:ss", + "yyyy.MM.dd HH:mm", "yyyy.MM"}; +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/constant/HttpStatus.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/constant/HttpStatus.java new file mode 100644 index 00000000..02c39d2e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/constant/HttpStatus.java @@ -0,0 +1,88 @@ +package com.jiuyv.sptccc.agile.common.constant; + +/** + * 返回状态码 + * + * @author admin + */ +public class HttpStatus { + /** + * 操作成功 + */ + public static final String SUCCESS = "success"; + + /** + * 对象创建成功 + */ + public static final String CREATED = String.valueOf(201); + + /** + * 请求已经被接受 + */ + public static final String ACCEPTED = String.valueOf(202); + + /** + * 操作已经执行成功,但是没有返回数据 + */ + public static final String NO_CONTENT = String.valueOf(204); + + /** + * 资源已被移除 + */ + public static final String MOVED_PERM = String.valueOf(301); + + /** + * 重定向 + */ + public static final String SEE_OTHER = "303"; + + /** + * 资源没有被修改 + */ + public static final String NOT_MODIFIED = "304"; + + /** + * 参数列表错误(缺少,格式不匹配) + */ + public static final String BAD_REQUEST = "400"; + + /** + * 未授权 + */ + public static final String UNAUTHORIZED = "401"; + + /** + * 访问受限,授权过期 + */ + public static final String FORBIDDEN = "403"; + + /** + * 资源,服务未找到 + */ + public static final String NOT_FOUND = "404"; + + /** + * 不允许的http方法 + */ + public static final String BAD_METHOD = "405"; + + /** + * 资源冲突,或者资源被锁 + */ + public static final String CONFLICT = "409"; + + /** + * 不支持的数据,媒体类型 + */ + public static final String UNSUPPORTED_TYPE = "415"; + + /** + * 系统内部错误 + */ + public static final String ERROR = "500"; + + /** + * 接口未实现 + */ + public static final String NOT_IMPLEMENTED = "501"; +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/IDictEnum.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/IDictEnum.java new file mode 100644 index 00000000..8da128ce --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/IDictEnum.java @@ -0,0 +1,14 @@ +package com.jiuyv.sptccc.agile.common.core; + +/** + * 字段代码通用枚举接口 + * 便于统一方式处理 + * + * @author zhouliang + */ +public interface IDictEnum { + + String getCode(); + + String getMsg(); +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/IErrorCode.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/IErrorCode.java new file mode 100644 index 00000000..70f39d11 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/IErrorCode.java @@ -0,0 +1,20 @@ +package com.jiuyv.sptccc.agile.common.core; + +/** + * @ClassName : IErrorCode + * @Description : 常用API返回对接接口 + * @Author : sky + * @Date: 2023-06-06 16:33 + */ +public interface IErrorCode { + + /** + * 返回码 + */ + String getCode(); + + /** + * 返回信息 + */ + String getMessage(); +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/base/PageSize.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/base/PageSize.java new file mode 100644 index 00000000..75122c24 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/base/PageSize.java @@ -0,0 +1,59 @@ +package com.jiuyv.sptccc.agile.common.core.base; + +import javax.validation.constraints.Max; + +/** + * 分页参数 + * @ClassName : PageSize + * @Author : sky + * @Date: 2023-07-13 20:10 + */ +public class PageSize { + + @Max(1000) + private Integer pageSize = 20; + + private Integer pageNum = 1; + + /** + * 排序字段 + */ + private String orderBy ; + + /** + * 是否倒序 + */ + private boolean desc; + + public Integer getPageSize() { + return pageSize; + } + + public void setPageSize(Integer pageSize) { + this.pageSize = pageSize; + } + + public Integer getPageNum() { + return pageNum; + } + + public void setPageNum(Integer pageNum) { + this.pageNum = pageNum; + } + + public String getOrderBy() { + return orderBy; + } + + public void setOrderBy(String orderBy) { + this.orderBy = orderBy; + } + + public boolean isDesc() { + return desc; + } + + public void setDesc(boolean desc) { + this.desc = desc; + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/base/Range.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/base/Range.java new file mode 100644 index 00000000..487a5741 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/base/Range.java @@ -0,0 +1,38 @@ +package com.jiuyv.sptccc.agile.common.core.base; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.jiuyv.sptccc.agile.common.constant.DateTimeFormatConstant; + +import java.util.Date; + +/** + * 范围查询 + * @ClassName : Range + * @Description : + * @Author : sky + * @Date: 2023-09-19 16:29 + */ +public class Range extends PageSize { + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD) + private Date beginDate; + + @JsonFormat(pattern = DateTimeFormatConstant.YYYY_MM_DD) + private Date endDate; + + public Date getBeginDate() { + return beginDate; + } + + public void setBeginDate(Date beginDate) { + this.beginDate = beginDate; + } + + public Date getEndDate() { + return endDate; + } + + public void setEndDate(Date endDate) { + this.endDate = endDate; + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/base/UserInfo.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/base/UserInfo.java new file mode 100644 index 00000000..f2513c25 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/base/UserInfo.java @@ -0,0 +1,56 @@ +package com.jiuyv.sptccc.agile.common.core.base; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @ClassName : User + * @Description : + * @Author : sky + * @Date: 2023-09-04 18:27 + */ +public class UserInfo implements Serializable { + + @NotBlank(message = "用户名不能为空") + private String userName; + + @NotNull(message = "用户Id不能为空") + private Long userId; + + private String deptId; + + private String nickName; + + public String getUserName() { + return userName; + } + + public void setUserName(String userName) { + this.userName = userName; + } + + public Long getUserId() { + return userId; + } + + public void setUserId(Long userId) { + this.userId = userId; + } + + public String getDeptId() { + return deptId; + } + + public void setDeptId(String deptId) { + this.deptId = deptId; + } + + public String getNickName() { + return nickName; + } + + public void setNickName(String nickName) { + this.nickName = nickName; + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/domain/R.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/domain/R.java new file mode 100644 index 00000000..81183d1a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/domain/R.java @@ -0,0 +1,122 @@ +package com.jiuyv.sptccc.agile.common.core.domain; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.jiuyv.sptccc.agile.common.constant.BaseResultCode; +import com.jiuyv.sptccc.agile.common.core.IErrorCode; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.Serializable; + +/** + * 响应信息主体 + * + * @author admin + */ +public class R implements Serializable { + + + protected static final Logger log = LoggerFactory.getLogger(R.class); + private static final long serialVersionUID = 1L; + private String code; + + private String msg; + + private T data; + + public R() { + } + + public R(String code, String msg, T data) { + this.code = code; + this.msg = msg; + this.data = data; + } + + public static R restResult(IErrorCode errorCode) { + return fail(errorCode.getCode(),errorCode.getMessage()); + } + + private static R restResult(T data, String code, String msg) { + //异常要输出 + log.info("Return message >> code={}, msg={}", code, msg); + R apiResult = new R<>(); + apiResult.setCode(code); + apiResult.setData(data); + apiResult.setMsg(msg); + return apiResult; + } + + public static R success() { + return ok(); + } + + public static R success(T data) { + return ok(data); + } + + public static R ok() { + return restResult(BaseResultCode.SUCCESS); + } + + public static R ok(T data) { + return restResult(data, BaseResultCode.SUCCESS.getCode(), BaseResultCode.SUCCESS.getMessage()); + } + + public static R ok(T data, String msg) { + return restResult(data, BaseResultCode.SUCCESS.getCode(), msg); + } + + public static R fail() { + return restResult(null, BaseResultCode.FAILED.getCode(), "操作失败"); + } + + public static R fail(String msg) { + return restResult(null, BaseResultCode.FAILED.getCode(), msg); + } + + public static R fail(T data) { + return restResult(data, BaseResultCode.FAILED.getCode(), "操作失败"); + } + + public static R fail(T data, String msg) { + return restResult(data, BaseResultCode.FAILED.getCode(), msg); + } + + public static R fail(IErrorCode errorCode) { + return restResult(errorCode); + } + + public static R fail(String code, String msg) { + return restResult(null, code, msg); + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public T getData() { + return data; + } + + public void setData(T data) { + this.data = data; + } + + @JsonIgnore + public boolean isSuccess() { + return BaseResultCode.SUCCESS.getCode().equals(code); + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/page/PageResult.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/page/PageResult.java new file mode 100644 index 00000000..c0753661 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/page/PageResult.java @@ -0,0 +1,73 @@ +package com.jiuyv.sptccc.agile.common.core.page; + +import java.io.Serializable; +import java.util.List; + +/** + * 分页对象 + * @param + */ +public class PageResult implements Serializable { + + private static final long serialVersionUID = 1L; + + private Integer pageNum; + private Integer pageSize; + private Long total; + private List rows; + + public PageResult() { + } + + public PageResult(Long total, List list) { + this.total = total; + this.rows = list; + } + + public PageResult(Integer pageNum, Integer pageSize, Long total, List list) { + this.pageNum = pageNum; + this.pageSize = pageSize; + this.total = total; + this.rows = list; + } + + public static PageResult instance(Long total, List data){ + return instance(null,null,total,data); + } + + public static PageResult instance(Integer pageNum,Integer pageSize,Long total, List data){ + return new PageResult(pageNum,pageSize,total,data); + } + + public Integer getPageNum() { + return pageNum; + } + + public void setPageNum(Integer pageNum) { + this.pageNum = pageNum; + } + + public Integer getPageSize() { + return pageSize; + } + + public void setPageSize(Integer pageSize) { + this.pageSize = pageSize; + } + + public Long getTotal() { + return total; + } + + public void setTotal(Long total) { + this.total = total; + } + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/page/TableDataInfo.java b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/page/TableDataInfo.java new file mode 100644 index 00000000..c1ca026e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-common/src/main/java/com/jiuyv/sptccc/agile/common/core/page/TableDataInfo.java @@ -0,0 +1,82 @@ +package com.jiuyv.sptccc.agile.common.core.page; + +import java.io.Serializable; +import java.util.List; + +/** + * 表格分页数据对象 + * + * @author admin + */ +public class TableDataInfo implements Serializable { + private static final long serialVersionUID = 1L; + + /** + * 总记录数 + */ + private int total; + + /** + * 列表数据 + */ + private List rows; + + /** + * 消息状态码 + */ + private String code; + + /** + * 消息内容 + */ + private String msg; + + /** + * 表格数据对象 + */ + public TableDataInfo() { + } + + /** + * 分页 + * + * @param list 列表数据 + * @param total 总记录数 + */ + public TableDataInfo(List list, int total) { + this.rows = list; + this.total = total; + } + + public int getTotal() { + return total; + } + + public void setTotal(int total) { + this.total = total; + } + + public List getRows() { + return rows; + } + + public void setRows(List rows) { + this.rows = rows; + } + + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.editorconfig b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.editorconfig new file mode 100644 index 00000000..7034f9bf --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.editorconfig @@ -0,0 +1,22 @@ +# 告诉EditorConfig插件,这是根文件,不用继续往上查找 +root = true + +# 匹配全部文件 +[*] +# 设置字符集 +charset = utf-8 +# 缩进风格,可选space、tab +indent_style = space +# 缩进的空格数 +indent_size = 2 +# 结尾换行符,可选lf、cr、crlf +end_of_line = lf +# 在文件结尾插入新行 +insert_final_newline = true +# 删除一行中的前后空格 +trim_trailing_whitespace = true + +# 匹配md结尾的文件 +[*.md] +insert_final_newline = false +trim_trailing_whitespace = false diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.env.development b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.env.development new file mode 100644 index 00000000..ac663143 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.env.development @@ -0,0 +1,11 @@ +# 页面标题 +VUE_APP_TITLE = 大数据开放平台(管理系统) + +# 开发环境配置 +ENV = 'development' + +# 大数据开放平台(管理系统)/开发环境 +VUE_APP_BASE_API = '/dev-api' + +# 路由懒加载 +VUE_CLI_BABEL_TRANSPILE_MODULES = true diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.env.production b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.env.production new file mode 100644 index 00000000..e939589c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.env.production @@ -0,0 +1,8 @@ +# 页面标题 +VUE_APP_TITLE = 大数据开放平台(管理系统) + +# 生产环境配置 +ENV = 'production' + +# 大数据开放平台(管理系统)/生产环境 +VUE_APP_BASE_API = '' diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.env.staging b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.env.staging new file mode 100644 index 00000000..0f5223c6 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.env.staging @@ -0,0 +1,10 @@ +# 页面标题 +VUE_APP_TITLE = 大数据开放平台(管理系统) + +NODE_ENV = production + +# 测试环境配置 +ENV = 'staging' + +# 大数据开放平台(管理系统)/测试环境 +VUE_APP_BASE_API = '/stage-api' diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.eslintignore b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.eslintignore new file mode 100644 index 00000000..21cfec76 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.eslintignore @@ -0,0 +1,10 @@ +# 忽略build目录下类型为js的文件的语法检查 +build/*.js +# 忽略src/assets目录下文件的语法检查 +src/assets +# 忽略public目录下文件的语法检查 +public +# 忽略当前目录下为js的文件的语法检查 +*.js +# 忽略当前目录下为vue的文件的语法检查 +*.vue diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.eslintrc.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.eslintrc.js new file mode 100644 index 00000000..82bbdeea --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.eslintrc.js @@ -0,0 +1,199 @@ +// ESlint 检查配置 +module.exports = { + root: true, + parserOptions: { + parser: 'babel-eslint', + sourceType: 'module' + }, + env: { + browser: true, + node: true, + es6: true, + }, + extends: ['plugin:vue/recommended', 'eslint:recommended'], + + // add your custom rules here + //it is base on https://github.com/vuejs/eslint-config-vue + rules: { + "vue/max-attributes-per-line": [2, { + "singleline": 10, + "multiline": { + "max": 1, + "allowFirstLine": false + } + }], + "vue/singleline-html-element-content-newline": "off", + "vue/multiline-html-element-content-newline":"off", + "vue/name-property-casing": ["error", "PascalCase"], + "vue/no-v-html": "off", + 'accessor-pairs': 2, + 'arrow-spacing': [2, { + 'before': true, + 'after': true + }], + 'block-spacing': [2, 'always'], + 'brace-style': [2, '1tbs', { + 'allowSingleLine': true + }], + 'camelcase': [0, { + 'properties': 'always' + }], + 'comma-dangle': [2, 'never'], + 'comma-spacing': [2, { + 'before': false, + 'after': true + }], + 'comma-style': [2, 'last'], + 'constructor-super': 2, + 'curly': [2, 'multi-line'], + 'dot-location': [2, 'property'], + 'eol-last': 2, + 'eqeqeq': ["error", "always", {"null": "ignore"}], + 'generator-star-spacing': [2, { + 'before': true, + 'after': true + }], + 'handle-callback-err': [2, '^(err|error)$'], + 'indent': [2, 2, { + 'SwitchCase': 1 + }], + 'jsx-quotes': [2, 'prefer-single'], + 'key-spacing': [2, { + 'beforeColon': false, + 'afterColon': true + }], + 'keyword-spacing': [2, { + 'before': true, + 'after': true + }], + 'new-cap': [2, { + 'newIsCap': true, + 'capIsNew': false + }], + 'new-parens': 2, + 'no-array-constructor': 2, + 'no-caller': 2, + 'no-console': 'off', + 'no-class-assign': 2, + 'no-cond-assign': 2, + 'no-const-assign': 2, + 'no-control-regex': 0, + 'no-delete-var': 2, + 'no-dupe-args': 2, + 'no-dupe-class-members': 2, + 'no-dupe-keys': 2, + 'no-duplicate-case': 2, + 'no-empty-character-class': 2, + 'no-empty-pattern': 2, + 'no-eval': 2, + 'no-ex-assign': 2, + 'no-extend-native': 2, + 'no-extra-bind': 2, + 'no-extra-boolean-cast': 2, + 'no-extra-parens': [2, 'functions'], + 'no-fallthrough': 2, + 'no-floating-decimal': 2, + 'no-func-assign': 2, + 'no-implied-eval': 2, + 'no-inner-declarations': [2, 'functions'], + 'no-invalid-regexp': 2, + 'no-irregular-whitespace': 2, + 'no-iterator': 2, + 'no-label-var': 2, + 'no-labels': [2, { + 'allowLoop': false, + 'allowSwitch': false + }], + 'no-lone-blocks': 2, + 'no-mixed-spaces-and-tabs': 2, + 'no-multi-spaces': 2, + 'no-multi-str': 2, + 'no-multiple-empty-lines': [2, { + 'max': 1 + }], + 'no-native-reassign': 2, + 'no-negated-in-lhs': 2, + 'no-new-object': 2, + 'no-new-require': 2, + 'no-new-symbol': 2, + 'no-new-wrappers': 2, + 'no-obj-calls': 2, + 'no-octal': 2, + 'no-octal-escape': 2, + 'no-path-concat': 2, + 'no-proto': 2, + 'no-redeclare': 2, + 'no-regex-spaces': 2, + 'no-return-assign': [2, 'except-parens'], + 'no-self-assign': 2, + 'no-self-compare': 2, + 'no-sequences': 2, + 'no-shadow-restricted-names': 2, + 'no-spaced-func': 2, + 'no-sparse-arrays': 2, + 'no-this-before-super': 2, + 'no-throw-literal': 2, + 'no-trailing-spaces': 2, + 'no-undef': 2, + 'no-undef-init': 2, + 'no-unexpected-multiline': 2, + 'no-unmodified-loop-condition': 2, + 'no-unneeded-ternary': [2, { + 'defaultAssignment': false + }], + 'no-unreachable': 2, + 'no-unsafe-finally': 2, + 'no-unused-vars': [2, { + 'vars': 'all', + 'args': 'none' + }], + 'no-useless-call': 2, + 'no-useless-computed-key': 2, + 'no-useless-constructor': 2, + 'no-useless-escape': 0, + 'no-whitespace-before-property': 2, + 'no-with': 2, + 'one-var': [2, { + 'initialized': 'never' + }], + 'operator-linebreak': [2, 'after', { + 'overrides': { + '?': 'before', + ':': 'before' + } + }], + 'padded-blocks': [2, 'never'], + 'quotes': [2, 'single', { + 'avoidEscape': true, + 'allowTemplateLiterals': true + }], + 'semi': [2, 'never'], + 'semi-spacing': [2, { + 'before': false, + 'after': true + }], + 'space-before-blocks': [2, 'always'], + 'space-before-function-paren': [2, 'never'], + 'space-in-parens': [2, 'never'], + 'space-infix-ops': 2, + 'space-unary-ops': [2, { + 'words': true, + 'nonwords': false + }], + 'spaced-comment': [2, 'always', { + 'markers': ['global', 'globals', 'eslint', 'eslint-disable', '*package', '!', ','] + }], + 'template-curly-spacing': [2, 'never'], + 'use-isnan': 2, + 'valid-typeof': 2, + 'wrap-iife': [2, 'any'], + 'yield-star-spacing': [2, 'both'], + 'yoda': [2, 'never'], + 'prefer-const': 2, + 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0, + 'object-curly-spacing': [2, 'always', { + objectsInObjects: false + }], + 'array-bracket-spacing': [2, 'never'] + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.gitignore b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.gitignore new file mode 100644 index 00000000..78a752d8 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/.gitignore @@ -0,0 +1,23 @@ +.DS_Store +node_modules/ +dist/ +npm-debug.log* +yarn-debug.log* +yarn-error.log* +**/*.log + +tests/**/coverage/ +tests/e2e/reports +selenium-debug.log + +# Editor directories and files +.idea +.vscode +*.suo +*.ntvs* +*.njsproj +*.sln +*.local + +package-lock.json +yarn.lock diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/babel.config.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/babel.config.js new file mode 100644 index 00000000..c8267b2d --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/babel.config.js @@ -0,0 +1,13 @@ +module.exports = { + presets: [ + // https://github.com/vuejs/vue-cli/tree/master/packages/@vue/babel-preset-app + '@vue/cli-plugin-babel/preset' + ], + 'env': { + 'development': { + // babel-plugin-dynamic-import-node plugin only does one thing by converting all import() to require(). + // This plugin can significantly increase the speed of hot updates, when you have a large number of pages. + 'plugins': ['dynamic-import-node'] + } + } +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/bin/build.bat b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/bin/build.bat new file mode 100644 index 00000000..dda590d2 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/bin/build.bat @@ -0,0 +1,12 @@ +@echo off +echo. +echo [Ϣ] Weḅdistļ +echo. + +%~d0 +cd %~dp0 + +cd .. +npm run build:prod + +pause \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/bin/package.bat b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/bin/package.bat new file mode 100644 index 00000000..0e5bc0fb --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/bin/package.bat @@ -0,0 +1,12 @@ +@echo off +echo. +echo [Ϣ] װWeḅnode_modulesļ +echo. + +%~d0 +cd %~dp0 + +cd .. +npm install --registry=https://registry.npmmirror.com + +pause \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/bin/run-web.bat b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/bin/run-web.bat new file mode 100644 index 00000000..d30deae7 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/bin/run-web.bat @@ -0,0 +1,12 @@ +@echo off +echo. +echo [Ϣ] ʹ Vue CLI Web ̡ +echo. + +%~d0 +cd %~dp0 + +cd .. +npm run dev + +pause \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/build/index.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/build/index.js new file mode 100644 index 00000000..0c57de2a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/build/index.js @@ -0,0 +1,35 @@ +const { run } = require('runjs') +const chalk = require('chalk') +const config = require('../vue.config.js') +const rawArgv = process.argv.slice(2) +const args = rawArgv.join(' ') + +if (process.env.npm_config_preview || rawArgv.includes('--preview')) { + const report = rawArgv.includes('--report') + + run(`vue-cli-service build ${args}`) + + const port = 9526 + const publicPath = config.publicPath + + var connect = require('connect') + var serveStatic = require('serve-static') + const app = connect() + + app.use( + publicPath, + serveStatic('./dist', { + index: ['index.html', '/'] + }) + ) + + app.listen(port, function () { + console.log(chalk.green(`> Preview at http://localhost:${port}${publicPath}`)) + if (report) { + console.log(chalk.green(`> Report at http://localhost:${port}${publicPath}report.html`)) + } + + }) +} else { + run(`vue-cli-service build ${args}`) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/package.json b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/package.json new file mode 100644 index 00000000..840a3f06 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/package.json @@ -0,0 +1,97 @@ +{ + "name": "jiuyv", + "version": "3.8.3", + "description": "大数据开放平台(管理系统)", + "author": "jiuyv", + "license": "MIT", + "scripts": { + "dev": "vue-cli-service serve", + "build:prod": "vue-cli-service build", + "build:stage": "vue-cli-service build --mode staging", + "preview": "node build/index.js --preview", + "lint": "eslint --ext .js,.vue src" + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, + "lint-staged": { + "src/**/*.{js,vue}": [ + "eslint --fix", + "git add" + ] + }, + "keywords": [ + "vue", + "admin", + "dashboard", + "element-ui", + "boilerplate", + "admin-template", + "management-system" + ], + "repository": { + "type": "git", + "url": "https://gitee.com/y_project/RuoYi-Vue.git" + }, + "dependencies": { + "@riophae/vue-treeselect": "0.4.0", + "axios": "0.24.0", + "clipboard": "2.0.8", + "core-js": "3.19.1", + "crypto-js": "^4.1.1", + "echarts": "4.9.0", + "echarts-liquidfill": "^2.0.6", + "echarts-wordcloud": "^1.1.3", + "element-ui": "2.15.8", + "file-saver": "2.0.5", + "fuse.js": "6.4.3", + "gm-crypto": "^0.1.8", + "highlight.js": "9.18.5", + "js-beautify": "1.13.0", + "js-cookie": "3.0.1", + "jsencrypt": "3.0.0-rc.1", + "nprogress": "0.2.0", + "quill": "1.3.7", + "screenfull": "5.0.2", + "sortablejs": "1.10.2", + "sql-formatter": "^2.3.3", + "vue": "2.6.12", + "vue-codemirror": "^4.0.6", + "vue-count-to": "1.0.13", + "vue-cropper": "0.5.5", + "vue-meta": "2.4.0", + "vue-router": "3.4.9", + "vuedraggable": "2.24.3", + "vuex": "3.6.0" + }, + "devDependencies": { + "@vue/cli-plugin-babel": "4.4.6", + "@vue/cli-plugin-eslint": "4.4.6", + "@vue/cli-service": "4.4.6", + "babel-eslint": "10.1.0", + "babel-plugin-dynamic-import-node": "2.3.3", + "chalk": "4.1.0", + "compression-webpack-plugin": "5.0.2", + "connect": "3.6.6", + "eslint": "7.15.0", + "eslint-plugin-vue": "7.2.0", + "html-webpack-plugin": "^4.5.1", + "lint-staged": "10.5.3", + "runjs": "4.4.2", + "sass": "1.32.13", + "sass-loader": "10.1.1", + "script-ext-html-webpack-plugin": "2.1.5", + "svg-sprite-loader": "5.1.1", + "vue-template-compiler": "2.6.12" + }, + "engines": { + "node": ">=8.9", + "npm": ">= 3.0.0" + }, + "browserslist": [ + "> 1%", + "last 2 versions" + ] +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/pom.xml b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/pom.xml new file mode 100644 index 00000000..8c51aeac --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/pom.xml @@ -0,0 +1,89 @@ + + + 4.0.0 + + + com.jiuyv.sptcc.agile + agile-system + 1.2.10 + + + com.jiuyv.sptcc.agile + agile-system-console-ui + 1.2.10 + + UTF-8 + 1.12.1 + v16.17.0 + 8.15.0 + + + + + + org.apache.maven.plugins + maven-clean-plugin + ${maven.clean.version} + + + + dist + + + + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + com.github.eirslett + frontend-maven-plugin + ${frontend-maven-plugin.version} + + https://npm.taobao.org/mirrors/node/ + http://172.16.12.11:8082/repository/npm_public/npm/-/ + http://172.16.12.11:8082/repository/npm_public/ + /opt/nodenpm/ + ${node.version} + ${npm.version} + + + + + install node and npm + + install-node-and-npm + + generate-resources + + + + npm install + + npm + + generate-resources + + install --legacy-peer-deps + + + + + npm run build + + npm + + + run build:prod + + + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/favicon.ico b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/favicon.ico new file mode 100644 index 00000000..16e6fcd8 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/favicon.ico differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/favicon.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/favicon.png new file mode 100644 index 00000000..47fdeda8 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/favicon.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/favicon1.ico b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/favicon1.ico new file mode 100644 index 00000000..37b5fff5 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/favicon1.ico differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/html/ie.html b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/html/ie.html new file mode 100644 index 00000000..052ffcd6 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/html/ie.html @@ -0,0 +1,46 @@ + + + + + + 请升级您的浏览器 + + + + + + +

请升级您的浏览器,以便我们更好的为您提供服务!

+

您正在使用 Internet Explorer 的早期版本(IE11以下版本或使用该内核的浏览器)。这意味着在升级浏览器前,您将无法访问此网站。

+
+

请注意:微软公司对Windows XP 及 Internet Explorer 早期版本的支持已经结束

+

自 2016 年 1 月 12 日起,Microsoft 不再为 IE 11 以下版本提供相应支持和更新。没有关键的浏览器安全更新,您的电脑可能易受有害病毒、间谍软件和其他恶意软件的攻击,它们可以窃取或损害您的业务数据和信息。请参阅 微软对 Internet Explorer 早期版本的支持将于 2016 年 1 月 12 日结束的说明

+
+

您可以选择更先进的浏览器

+

推荐使用以下浏览器的最新版本。如果您的电脑已有以下浏览器的最新版本则直接使用该浏览器访问即可。

+ +
+ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/index.html b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/index.html new file mode 100644 index 00000000..72fd3e95 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/index.html @@ -0,0 +1,210 @@ + + + + + + + + + <%= webpackConfig.name %> + + + + +
+
+
+
+
+
正在加载系统资源,请耐心等待
+
+
+ + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/robots.txt b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/robots.txt new file mode 100644 index 00000000..77470cb3 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/public/robots.txt @@ -0,0 +1,2 @@ +User-agent: * +Disallow: / \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/App.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/App.vue new file mode 100644 index 00000000..033f862b --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/App.vue @@ -0,0 +1,42 @@ + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/apilog.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/apilog.js new file mode 100644 index 00000000..5940b0da --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/apilog.js @@ -0,0 +1,16 @@ +import request from '@/utils/request' + +export function pageApiLog(data) { + return request({ + url: '/api/apiLogs/page', + method: 'get', + params: data + }) +} + +export function getApiLog(id) { + return request({ + url: '/api/apiLogs/detail?id=' + id, + method: 'get' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/dataapi.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/dataapi.js new file mode 100644 index 00000000..e6224076 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/dataapi.js @@ -0,0 +1,129 @@ +import request from '@/utils/request' + +export function listDataApi(data) { + return request({ + url: '/api/apis/list', + method: 'get', + params: data + }) +} + +export function pageDataApi(data) { + return request({ + url: '/api/apis/page', + method: 'get', + params: data + }) +} + +export function getDataApi(data) { + return request({ + url: '/api/apis/detail', + method: 'get', + params: data + }) +} + +export function delDataApi(data) { + return request({ + url: '/api/apis/delete', + method: 'post', + data: data + }) +} + +export function addDataApi(data) { + return request({ + url: '/api/apis/add', + method: 'post', + data: data + }) +} + +export function updateDataApi(data) { + return request({ + url: '/api/apis/edit', + method: 'post', + data: data + }) +} + +export function sqlParse(data) { + return request({ + url: '/api/apis/sql/parse', + method: 'post', + data: data + }) +} + +export function copyDataApi(data) { + return request({ + url: '/api/apis/copy', + method: 'post', + data: data + }) +} + +export function registerDataApi(data) { + return request({ + url: '/api/apis/register', + method: 'post', + data: data + }) +} + +export function releaseDataApi(data) { + return request({ + url: '/api/apis/release', + method: 'post', + data: data + }) +} + +export function cancelDataApi(data) { + return request({ + url: '/api/apis/cancel', + method: 'post', + data: data + }) +} + +export function downDataApi(data) { + return request({ + url: '/api/apis/down', + method: 'post', + data: data + }) +} + +export function checkDataApi(data) { + return request({ + url: '/api/apis/check', + method: 'post', + data: data + }) +} + +export function word(id) { + return request({ + url: '/api/apis/word/' + id, + method: 'post', + responseType: 'blob', + timeout: 0, + }) +} +// 获取授权信息接口 +export function getauthInfo(data) { + return request({ + url: 'org/info/auth/info/', + method: 'get', + params: data + }) +} + +export function getApiPrefix() { + return request({ + url: '/api/apis/prefix', + method: 'get', + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orgconfig.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orgconfig.js new file mode 100644 index 00000000..99b9ffd9 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orgconfig.js @@ -0,0 +1,53 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-07-04 10:33:56 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-07-14 09:31:26 + * @FilePath: \agile-system-console-ui\src\api\apimanage\orginfo.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +// 查询列表 +export function orgConfigList(query) { + return request({ + url: '/org/config/list', + method: 'get', + params: query + }) +} + +// 查询详细 +export function getOrgConfig(data) { + return request({ + url: '/org/config/detail', + method: 'get', + params: data + }) +} +// 新增 +export function addOrgConfig(data) { + return request({ + url: '/org/config/add', + method: 'post', + data: data + }) +} + +// 修改 +export function updateOrgConfig(data) { + return request({ + url: '/org/config/edit', + method: 'post', + data: data + }) +} + +// 删除 +export function delOrgConfig(data) { + return request({ + url: '/org/config/delete', + method: 'get', + params: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orginfo.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orginfo.js new file mode 100644 index 00000000..326d3588 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orginfo.js @@ -0,0 +1,100 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-07-04 10:33:56 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-07-14 09:31:26 + * @FilePath: \agile-system-console-ui\src\api\apimanage\orginfo.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +// 查询【机构管理信息】列表 +export function listInfo(query) { + return request({ + url: '/org/info/list', + method: 'get', + params: query + }) +} + +// 查询【机构管理信息】详细 +export function getInfo(data) { + return request({ + url: '/org/info/detail', + method: 'get', + params: data + }) +} +// 获取授权信息接口 +export function getauthInfo(orgNo) { + return request({ + url: 'org/info/auth/info/', + method: 'get', + params: orgNo + }) +} +// 新增授权信息 +export function addInfoauth(data) { + return request({ + url: 'org/info/auth', + method: 'post', + data: data + }) +} +// 新增【机构管理信息】 +export function addInfo(data) { + return request({ + url: '/org/info/add', + method: 'post', + data: data + }) +} + +// 修改【机构管理信息】 +export function updateInfo(data) { + return request({ + url: '/org/info/edit', + method: 'post', + data: data + }) +} + +// 删除【机构管理信息】 +export function delInfo(data) { + return request({ + url: '/org/info/delete', + method: 'post', + data: data + }) +} + +export function getKay() { + return request({ + url: '/org/info/key', + method: 'get' + }) +} +//用户模糊搜索 +export function userGetList(data) { + return request({ + url: '/portal/user/list', + method: 'get', + params: data + }) +} + +export function runInfo(data) { + return request({ + url: '/org/info/run', + method: 'post', + data: data + }) +} + +export function stopInfo(data) { + return request({ + url: '/org/info/stop', + method: 'post', + data: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orglog.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orglog.js new file mode 100644 index 00000000..34e2b32c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orglog.js @@ -0,0 +1,18 @@ +import request from '@/utils/request' + +// 查询网关访问日志列表 +export function listLog(query) { + return request({ + url: '/org/log/list', + method: 'get', + params: query + }) +} + +// 查询网关访问日志详细 +export function getLog(logId) { + return request({ + url: '/org/log/' + logId, + method: 'get' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orgstatistics.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orgstatistics.js new file mode 100644 index 00000000..5457a478 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/apimanage/orgstatistics.js @@ -0,0 +1,10 @@ +import request from '@/utils/request' + +// 查询接口调用次数统计列表 +export function listStatistics(query) { + return request({ + url: '/org/statistics/list', + method: 'get', + params: query + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/absolve.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/absolve.js new file mode 100644 index 00000000..389226f2 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/absolve.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询危险货物品数据可免除量列表 +export function listAbsolve(query) { + return request({ + url: '/business/absolve/list', + method: 'get', + params: query + }) +} + +// 查询危险货物品数据可免除量详细 +export function getAbsolve(absolveCode) { + return request({ + url: '/business/absolve/' + absolveCode, + method: 'get' + }) +} + +// 新增危险货物品数据可免除量 +export function addAbsolve(data) { + return request({ + url: '/business/absolve', + method: 'post', + data: data + }) +} + +// 修改危险货物品数据可免除量 +export function updateAbsolve(data) { + return request({ + url: '/business/absolve', + method: 'put', + data: data + }) +} + +// 删除危险货物品数据可免除量 +export function delAbsolve(absolveCode) { + return request({ + url: '/business/absolve/' + absolveCode, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/catalogue.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/catalogue.js new file mode 100644 index 00000000..aad8f53d --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/catalogue.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询危化品目录管理列表 +export function listCatalogue(query) { + return request({ + url: '/business/catalogue/list', + method: 'get', + params: query + }) +} + +// 查询危化品目录管理详细 +export function getCatalogue(id) { + return request({ + url: '/business/catalogue/' + id, + method: 'get' + }) +} + +// 新增危化品目录管理 +export function addCatalogue(data) { + return request({ + url: '/business/catalogue', + method: 'post', + data: data + }) +} + +// 修改危化品目录管理 +export function updateCatalogue(data) { + return request({ + url: '/business/catalogue', + method: 'put', + data: data + }) +} + +// 删除危化品目录管理 +export function delCatalogue(id) { + return request({ + url: '/business/catalogue/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkEaInfo.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkEaInfo.js new file mode 100644 index 00000000..35f30420 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkEaInfo.js @@ -0,0 +1,50 @@ +import request from '@/utils/request' + +// 查询电子底账列表 +export function listCheckEaInfo(query) { + return request({ + url: '/business/checkEaInfo/list', + method: 'get', + params: query + }) +} + +// 查询电子底账详细 +export function getCheckEaInfo(id) { + return request({ + url: '/business/checkEaInfo/' + id, + method: 'get' + }) +} + +// 新增电子底账 +export function addCheckEaInfo(data) { + return request({ + url: '/business/checkEaInfo', + method: 'post', + data: data + }) +} + +// 修改电子底账 +export function updateCheckEaInfo(data) { + return request({ + url: '/business/checkEaInfo', + method: 'put', + data: data + }) +} + +// 删除电子底账 +export function delCheckEaInfo(id) { + return request({ + url: '/business/checkEaInfo/' + id, + method: 'delete' + }) +} +export function getResultInfo(id) { + return request({ + url: '/business/checkEaInfo/checkAndReviewEaInfo/' + id, + method: 'get' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkInInfo.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkInInfo.js new file mode 100644 index 00000000..f19f1ea9 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkInInfo.js @@ -0,0 +1,66 @@ +import request from '@/utils/request' + +// 查询进口报关列表 +export function listCheckInInfo(query) { + return request({ + url: '/business/checkInInfo/list', + method: 'get', + params: query + }) +} + +// 查询进口报关详细 +export function getCheckInInfo(id) { + return request({ + url: '/business/checkInInfo/' + id, + method: 'get' + }) +} + +// 新增进口报关 +export function addCheckInInfo(data) { + return request({ + url: '/business/checkInInfo', + method: 'post', + data: data + }) +} + +// 修改进口报关 +export function updateCheckInInfo(data) { + return request({ + url: '/business/checkInInfo', + method: 'put', + data: data + }) +} + +// 删除进口报关 +export function delCheckInInfo(id) { + return request({ + url: '/business/checkInInfo/' + id, + method: 'delete' + }) +} +export function getResultInfo(id) { + return request({ + url: '/business/checkInInfo/checkAndReviewInInfo/' + id, + method: 'get' + }) +} +//审单结果查询 +export function reviewCheckInInfo(query) { + return request({ + url: '/business/checkInInfo/reviewInInfo', + method: 'get', + params: query + }) +} +//审单结果查询 +export function flushCheckInInfo(query) { + return request({ + url: '/business/checkInInfo/flushInInfo', + method: 'get', + params: query + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkPaInfo.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkPaInfo.js new file mode 100644 index 00000000..d372c9b4 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkPaInfo.js @@ -0,0 +1,50 @@ +import request from '@/utils/request' + +// 查询包装类型列表 +export function listCheckPaInfo(query) { + return request({ + url: '/business/checkPaInfo/list', + method: 'get', + params: query + }) +} + +// 查询包装类型详细 +export function getCheckPaInfo(id) { + return request({ + url: '/business/checkPaInfo/' + id, + method: 'get' + }) +} + +// 新增包装类型 +export function addCheckPaInfo(data) { + return request({ + url: '/business/checkPaInfo', + method: 'post', + data: data + }) +} + +// 修改包装类型 +export function updateCheckPaInfo(data) { + return request({ + url: '/business/checkPaInfo', + method: 'put', + data: data + }) +} + +// 删除包装类型 +export function delCheckPaInfo(id) { + return request({ + url: '/business/checkPaInfo/' + id, + method: 'delete' + }) +} +export function getResultInfo(id) { + return request({ + url: '/business/checkPaInfo/checkAndReviewPaInfo/' + id, + method: 'get' + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkRule.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkRule.js new file mode 100644 index 00000000..f25a0401 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/checkRule.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询校验规则列表 +export function listCheckRule(query) { + return request({ + url: '/business/checkRule/list', + method: 'get', + params: query + }) +} + +// 查询校验规则详细 +export function getCheckRule(id) { + return request({ + url: '/business/checkRule/' + id, + method: 'get' + }) +} + +// 新增校验规则 +export function addCheckRule(data) { + return request({ + url: '/business/checkRule', + method: 'post', + data: data + }) +} + +// 修改校验规则 +export function updateCheckRule(data) { + return request({ + url: '/business/checkRule', + method: 'put', + data: data + }) +} + +// 删除校验规则 +export function delCheckRule(id) { + return request({ + url: '/business/checkRule/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/dangerGoods.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/dangerGoods.js new file mode 100644 index 00000000..a8052cc6 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/dangerGoods.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询CIQ危险化学品列表 +export function listDangerGoods(query) { + return request({ + url: '/business/dangerGoods/list', + method: 'get', + params: query + }) +} + +// 查询CIQ危险化学品详细 +export function getDangerGoods(id) { + return request({ + url: '/business/dangerGoods/' + id, + method: 'get' + }) +} + +// 新增CIQ危险化学品 +export function addDangerGoods(data) { + return request({ + url: '/business/dangerGoods', + method: 'post', + data: data + }) +} + +// 修改CIQ危险化学品 +export function updateDangerGoods(data) { + return request({ + url: '/business/dangerGoods', + method: 'put', + data: data + }) +} + +// 删除CIQ危险化学品 +export function delDangerGoods(id) { + return request({ + url: '/business/dangerGoods/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/gasBase.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/gasBase.js new file mode 100644 index 00000000..5d0d8af8 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/gasBase.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询压缩气体基础数据列表 +export function listGasBase(query) { + return request({ + url: '/business/gasBase/list', + method: 'get', + params: query + }) +} + +// 查询压缩气体基础数据详细 +export function getGasBase(id) { + return request({ + url: '/business/gasBase/' + id, + method: 'get' + }) +} + +// 新增压缩气体基础数据 +export function addGasBase(data) { + return request({ + url: '/business/gasBase', + method: 'post', + data: data + }) +} + +// 修改压缩气体基础数据 +export function updateGasBase(data) { + return request({ + url: '/business/gasBase', + method: 'put', + data: data + }) +} + +// 删除压缩气体基础数据 +export function delGasBase(id) { + return request({ + url: '/business/gasBase/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/goods.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/goods.js new file mode 100644 index 00000000..1e91318c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/goods.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询危险品货物管理列表 +export function listGoods(query) { + return request({ + url: '/business/goods/list', + method: 'get', + params: query + }) +} + +// 查询危险品货物管理详细 +export function getGoods(id) { + return request({ + url: '/business/goods/' + id, + method: 'get' + }) +} + +// 新增危险品货物管理 +export function addGoods(data) { + return request({ + url: '/business/goods', + method: 'post', + data: data + }) +} + +// 修改危险品货物管理 +export function updateGoods(data) { + return request({ + url: '/business/goods', + method: 'put', + data: data + }) +} + +// 删除危险品货物管理 +export function delGoods(id) { + return request({ + url: '/business/goods/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/identify.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/identify.js new file mode 100644 index 00000000..340b8938 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/identify.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询危险品分类鉴定数据列表 +export function listIdentify(query) { + return request({ + url: '/business/identify/list', + method: 'get', + params: query + }) +} + +// 查询危险品分类鉴定数据详细 +export function getIdentify(id) { + return request({ + url: '/business/identify/' + id, + method: 'get' + }) +} + +// 新增危险品分类鉴定数据 +export function addIdentify(data) { + return request({ + url: '/business/identify', + method: 'post', + data: data + }) +} + +// 修改危险品分类鉴定数据 +export function updateIdentify(data) { + return request({ + url: '/business/identify', + method: 'put', + data: data + }) +} + +// 删除危险品分类鉴定数据 +export function delIdentify(id) { + return request({ + url: '/business/identify/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/info.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/info.js new file mode 100644 index 00000000..3e336728 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/info.js @@ -0,0 +1,61 @@ +import request from '@/utils/request' + +// 查询校验数据列表 +export function listInfo(query) { + return request({ + url: '/business/info/list', + method: 'get', + params: query + }) +} + +// 查询校验数据详细 +export function getInfo(id) { + return request({ + url: '/business/info/' + id, + method: 'get' + }) +} + +// 新增校验数据 +export function addInfo(data) { + return request({ + url: '/business/info', + method: 'post', + data: data + }) +} + +// 修改校验数据 +export function updateInfo(data) { + return request({ + url: '/business/info', + method: 'put', + data: data + }) +} + +// 删除校验数据 +export function delInfo(id) { + return request({ + url: '/business/info/' + id, + method: 'delete' + }) + + +} + +// 校验数据 +export function check(id) { + return request({ + url: '/business/info/check/' + id, + method: 'get' + }) +} + +export function getResultInfo(id) { + return request({ + url: '/business/info/getResultInfo/' + id, + method: 'get' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/isolation.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/isolation.js new file mode 100644 index 00000000..f4cbdd25 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/isolation.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询危险货物品数据隔离列表 +export function listIsolation(query) { + return request({ + url: '/business/isolation/list', + method: 'get', + params: query + }) +} + +// 查询危险货物品数据隔离详细 +export function getIsolation(operationCode) { + return request({ + url: '/business/isolation/' + operationCode, + method: 'get' + }) +} + +// 新增危险货物品数据隔离 +export function addIsolation(data) { + return request({ + url: '/business/isolation', + method: 'post', + data: data + }) +} + +// 修改危险货物品数据隔离 +export function updateIsolation(data) { + return request({ + url: '/business/isolation', + method: 'put', + data: data + }) +} + +// 删除危险货物品数据隔离 +export function delIsolation(operationCode) { + return request({ + url: '/business/isolation/' + operationCode, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/operation.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/operation.js new file mode 100644 index 00000000..43a99e89 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/operation.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询危险货物品数据积载与操作列表 +export function listOperation(query) { + return request({ + url: '/business/operation/list', + method: 'get', + params: query + }) +} + +// 查询危险货物品数据积载与操作详细 +export function getOperation(operationCode) { + return request({ + url: '/business/operation/' + operationCode, + method: 'get' + }) +} + +// 新增危险货物品数据积载与操作 +export function addOperation(data) { + return request({ + url: '/business/operation', + method: 'post', + data: data + }) +} + +// 修改危险货物品数据积载与操作 +export function updateOperation(data) { + return request({ + url: '/business/operation', + method: 'put', + data: data + }) +} + +// 删除危险货物品数据积载与操作 +export function delOperation(operationCode) { + return request({ + url: '/business/operation/' + operationCode, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/organicPeroxide.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/organicPeroxide.js new file mode 100644 index 00000000..981222e7 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/organicPeroxide.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询有机过氧化物列表 +export function listOrganicPeroxide(query) { + return request({ + url: '/business/organicPeroxide/list', + method: 'get', + params: query + }) +} + +// 查询有机过氧化物详细 +export function getOrganicPeroxide(id) { + return request({ + url: '/business/organicPeroxide/' + id, + method: 'get' + }) +} + +// 新增有机过氧化物 +export function addOrganicPeroxide(data) { + return request({ + url: '/business/organicPeroxide', + method: 'post', + data: data + }) +} + +// 修改有机过氧化物 +export function updateOrganicPeroxide(data) { + return request({ + url: '/business/organicPeroxide', + method: 'put', + data: data + }) +} + +// 删除有机过氧化物 +export function delOrganicPeroxide(id) { + return request({ + url: '/business/organicPeroxide/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/packageBase.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/packageBase.js new file mode 100644 index 00000000..43c3cb42 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/packageBase.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询固体液体数据管理列表 +export function listPackageBase(query) { + return request({ + url: '/business/packageBase/list', + method: 'get', + params: query + }) +} + +// 查询固体液体数据管理详细 +export function getPackageBase(id) { + return request({ + url: '/business/packageBase/' + id, + method: 'get' + }) +} + +// 新增固体液体数据管理 +export function addPackageBase(data) { + return request({ + url: '/business/packageBase', + method: 'post', + data: data + }) +} + +// 修改固体液体数据管理 +export function updatePackageBase(data) { + return request({ + url: '/business/packageBase', + method: 'put', + data: data + }) +} + +// 删除固体液体数据管理 +export function delPackageBase(id) { + return request({ + url: '/business/packageBase/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/packageRule.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/packageRule.js new file mode 100644 index 00000000..b656fc27 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/packageRule.js @@ -0,0 +1,52 @@ +import request from '@/utils/request' + +// 查询包装导则管理列表 +export function listPackageRule(query) { + return request({ + url: '/business/packageRule/list', + method: 'get', + params: query + }) +} + +// 查询包装导则管理详细 +export function getPackageRule(id) { + return request({ + url: '/business/packageRule/' + id, + method: 'get' + }) +} + +// 查询包装导则管理详细 +export function getPackageRuleInfo(id) { + return request({ + url: '/business/packageRule/edit/' + id, + method: 'get' + }) +} + +// 新增包装导则管理 +export function addPackageRule(data) { + return request({ + url: '/business/packageRule', + method: 'post', + data: data + }) +} + +// 修改包装导则管理 +export function updatePackageRule(data) { + return request({ + url: '/business/packageRule', + method: 'put', + data: data + }) +} + +// 删除包装导则管理 +export function delPackageRule(id) { + return request({ + url: '/business/packageRule/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/peroxideType52Base.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/peroxideType52Base.js new file mode 100644 index 00000000..38041bf1 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/peroxideType52Base.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询5.2类有机过氧化物数据列表 +export function listPeroxideType52Base(query) { + return request({ + url: '/business/peroxideType52Base/list', + method: 'get', + params: query + }) +} + +// 查询5.2类有机过氧化物数据详细 +export function getPeroxideType52Base(id) { + return request({ + url: '/business/peroxideType52Base/' + id, + method: 'get' + }) +} + +// 新增5.2类有机过氧化物数据 +export function addPeroxideType52Base(data) { + return request({ + url: '/business/peroxideType52Base', + method: 'post', + data: data + }) +} + +// 修改5.2类有机过氧化物数据 +export function updatePeroxideType52Base(data) { + return request({ + url: '/business/peroxideType52Base', + method: 'put', + data: data + }) +} + +// 删除5.2类有机过氧化物数据 +export function delPeroxideType52Base(id) { + return request({ + url: '/business/peroxideType52Base/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/peroxideTypefBase.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/peroxideTypefBase.js new file mode 100644 index 00000000..29d4bf1a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/peroxideTypefBase.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询 F型有机过氧化物数据列表 +export function listPeroxideTypefBase(query) { + return request({ + url: '/business/peroxideTypefBase/list', + method: 'get', + params: query + }) +} + +// 查询 F型有机过氧化物数据详细 +export function getPeroxideTypefBase(id) { + return request({ + url: '/business/peroxideTypefBase/' + id, + method: 'get' + }) +} + +// 新增 F型有机过氧化物数据 +export function addPeroxideTypefBase(data) { + return request({ + url: '/business/peroxideTypefBase', + method: 'post', + data: data + }) +} + +// 修改 F型有机过氧化物数据 +export function updatePeroxideTypefBase(data) { + return request({ + url: '/business/peroxideTypefBase', + method: 'put', + data: data + }) +} + +// 删除 F型有机过氧化物数据 +export function delPeroxideTypefBase(id) { + return request({ + url: '/business/peroxideTypefBase/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/ruleGroup.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/ruleGroup.js new file mode 100644 index 00000000..923539e1 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/ruleGroup.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询校验规则组列表 +export function listRuleGroup(query) { + return request({ + url: '/business/ruleGroup/list', + method: 'get', + params: query + }) +} + +// 查询校验规则组详细 +export function getRuleGroup(id) { + return request({ + url: '/business/ruleGroup/' + id, + method: 'get' + }) +} + +// 新增校验规则组 +export function addRuleGroup(data) { + return request({ + url: '/business/ruleGroup', + method: 'post', + data: data + }) +} + +// 修改校验规则组 +export function updateRuleGroup(data) { + return request({ + url: '/business/ruleGroup', + method: 'put', + data: data + }) +} + +// 删除校验规则组 +export function delRuleGroup(id) { + return request({ + url: '/business/ruleGroup/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/specialRule.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/specialRule.js new file mode 100644 index 00000000..e060b670 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/business/specialRule.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询特殊规定管理列表 +export function listSpecialRule(query) { + return request({ + url: '/business/specialRule/list', + method: 'get', + params: query + }) +} + +// 查询特殊规定管理详细 +export function getSpecialRule(id) { + return request({ + url: '/business/specialRule/' + id, + method: 'get' + }) +} + +// 新增特殊规定管理 +export function addSpecialRule(data) { + return request({ + url: '/business/specialRule', + method: 'post', + data: data + }) +} + +// 修改特殊规定管理 +export function updateSpecialRule(data) { + return request({ + url: '/business/specialRule', + method: 'put', + data: data + }) +} + +// 删除特殊规定管理 +export function delSpecialRule(id) { + return request({ + url: '/business/specialRule/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/delegate.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/delegate.js new file mode 100644 index 00000000..69567ad4 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/delegate.js @@ -0,0 +1,18 @@ +import request from '@/utils/request' + +// 查询列表 +export function listdelegate(query) { + return request({ + url: '/business/delegate/page/list', + method: 'get', + params: query + }) +} + +// 查询详细 +export function getdelegate(Id) { + return request({ + url: '/business/delegate/' + Id, + method: 'get' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/goodsDeclare.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/goodsDeclare.js new file mode 100644 index 00000000..eaf3af70 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/goodsDeclare.js @@ -0,0 +1,53 @@ +import request from '@/utils/request' + +// 查询列表 +export function listdelegate(query) { + return request({ + url: '/business/goodsDeclare/page/list', + method: 'get', + params: query + }) +} + +// 查询详细 +export function getdelegate(Id) { + return request({ + url: '/business/goodsDeclare/' + Id, + method: 'get' + }) +} + +// 随附文件 +export function getFileList(data) { + return request({ + url: '/system/dict/data/fileType/', + method: 'post', + data: data + }) +} + +// 随附文件 +export function attachFileList(Id) { + return request({ + url: '/business/attachFile/list?declareId=' + Id, + method: 'get' + }) +} +// 随附文件 +export function downloadFile(query) { + return request({ + url: '/business/attachFile/download', + method: 'get', + params: query, + responseType: 'blob', + timeout: 0, + }) +} + +// 查询详细 +export function getdelegateList(Id) { + return request({ + url: '/business/delegate/list/' + Id, + method: 'get' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/his.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/his.js new file mode 100644 index 00000000..e38f5102 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/his.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询随附文件信息列表 +export function listHis(query) { + return request({ + url: '/business/his/list', + method: 'get', + params: query + }) +} + +// 查询随附文件信息详细 +export function getHis(hisId) { + return request({ + url: '/business/his/' + hisId, + method: 'get' + }) +} + +// 新增随附文件信息 +export function addHis(data) { + return request({ + url: '/business/his', + method: 'post', + data: data + }) +} + +// 修改随附文件信息 +export function updateHis(data) { + return request({ + url: '/business/his', + method: 'put', + data: data + }) +} + +// 删除随附文件信息 +export function delHis(hisId) { + return request({ + url: '/business/his/' + hisId, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/info.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/info.js new file mode 100644 index 00000000..89fca62b --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/info.js @@ -0,0 +1,66 @@ +import request from '@/utils/request' + +// 查询货代公司列表 +export function listInfo(query) { + return request({ + url: '/agent/info/page/list', + method: 'get', + params: query + }) +} +export function listagent(query) { + return request({ + url: '/agent/info/list', + method: 'get', + params: query + }) +} +// 查询货代公司详细 +export function getInfo(id) { + return request({ + url: '/agent/info/' + id, + method: 'get' + }) +} +// 查询货代公司列表(排除节点) +export function listDeptExcludeChild(deptId) { + return request({ + url: '/agent/info/list/exclude/' + deptId, + method: 'get' + }) +} +// 新增货代公司 +export function addInfo(data) { + return request({ + url: '/agent/info/add', + method: 'post', + data: data + }) +} + +// 修改货代公司 +export function updateInfo(data) { + return request({ + url: '/agent/info/edit', + method: 'post', + data: data + }) +} + +// 删除货代公司 +export function delInfo(data) { + return request({ + url: '/agent/info/delete', + method: 'post', + data: data + }) +} + +// 启停货代公司 +export function changeStatus(data) { + return request({ + url: '/agent/info/edit/status', + method: 'post', + data: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/logininfor.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/logininfor.js new file mode 100644 index 00000000..1f9bb880 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/logininfor.js @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 查询登录日志列表 +export function list(query) { + return request({ + url: '/business/loginLog/list', + method: 'get', + params: query + }) +} + +// 删除登录日志 +export function delLogininfor(infoId) { + return request({ + url: '/business/loginLog/' + infoId, + method: 'delete' + }) +} + +// 清空登录日志 +export function cleanLogininfor() { + return request({ + url: '/business/loginLog/removeAll', + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/operlog.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/operlog.js new file mode 100644 index 00000000..55c50b9c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/operlog.js @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 查询操作日志列表 +export function list(query) { + return request({ + url: '/business/oprLog/list', + method: 'get', + params: query + }) +} + +// 删除操作日志 +export function delOperlog(operId) { + return request({ + url: '/business/oprLog/' + operId, + method: 'delete' + }) +} + +// 清空操作日志 +export function cleanOperlog() { + return request({ + url: '/business/oprLog/removeAll', + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/user.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/user.js new file mode 100644 index 00000000..ac433953 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/ccicsh/user.js @@ -0,0 +1,61 @@ +import request from '@/utils/request' + +// 查询预审平台用户信息列表 +export function listUser(query) { + return request({ + url: '/pq/user/page/list', + method: 'get', + params: query + }) +} + +// 查询预审平台用户信息详细 +export function getUser(id) { + return request({ + url: '/pq/user/' + id, + method: 'get' + }) +} + +// 新增预审平台用户信息 +export function addUser(data) { + return request({ + url: '/pq/user/add', + method: 'post', + data: data + }) +} + +// 修改预审平台用户信息 +export function updateUser(data) { + return request({ + url: '/pq/user/edit', + method: 'post', + data: data + }) +} + +// 删除预审平台用户信息 +export function delUser(data) { + return request({ + url: '/pq/user/delete', + method: 'post', + data: data + }) +} +// 重置密码 +export function resetPwd(data) { + return request({ + url: '/pq/user/resetPwd', + method: 'post', + data: data + }) +} +// 启停 +export function changeStatus(data) { + return request({ + url: '/pq/user/editStatus', + method: 'post', + data: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/export.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/export.js new file mode 100644 index 00000000..43a63403 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/export.js @@ -0,0 +1,40 @@ +import request from '@/utils/request' + +// 查询SQL查询导出记录列表 +export function listExport(query) { + return request({ + url: '/console/export/page', + method: 'post', + data: query, + closeLoading : true + }) +} + +// 查询SQL查询导出记录详细 +export function getExportDetail(data) { + return request({ + url: '/console/export/detail', + method: 'get', + params: data + }) +} + +// 下载 +export function exportDownload(exportId) { + return request({ + url: '/console/export/download/?exportId=' + exportId, + method: 'get', + responseType: 'blob', + timeout: 0, + }) +} + + +// 删除SQL查询导出记录 +export function delExport(data) { + return request({ + url: '/console/export/delete', + method: 'post', + data: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/sqlapply.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/sqlapply.js new file mode 100644 index 00000000..a4f01f11 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/sqlapply.js @@ -0,0 +1,60 @@ +import request from '@/utils/request' + +// 查询【SQL元数据权限申请】列表 +export function listApply(query) { + return request({ + url: '/sql/apply/list', + method: 'get', + params: query + }) +} + +// 查询【SQL元数据权限申请】详细 +export function getApply(applyId) { + return request({ + url: '/sql/apply/' + applyId, + method: 'get' + }) +} + +// 新增【SQL元数据权限申请】 +export function addApply(data) { + return request({ + url: '/sql/apply', + method: 'post', + data: data + }) +} + +// 修改【SQL元数据权限申请】 +export function updateApply(data) { + return request({ + url: '/sql/apply', + method: 'put', + data: data + }) +} + +export function passApply(data) { + return request({ + url: '/sql/apply/pass', + method: 'post', + data: data + }) +} + +export function refuseApply(data) { + return request({ + url: '/sql/apply/refuse', + method: 'post', + data: data + }) +} +//申请列表 +export function authApply(data) { + return request({ + url: '/sql/apply/auth/list', + method: 'post', + data: data + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/sqlconsole.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/sqlconsole.js new file mode 100644 index 00000000..95a97389 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/sqlconsole.js @@ -0,0 +1,83 @@ +import request from '@/utils/request' + +export function runSql (data) { + return request({ + url: '/console/sql/run', + method: 'post', + timeout: 20 * 60 * 1000, + data: data + }) +} + +export function explainSql (data) { + return request({ + url: '/console/sql/explain', + method: 'post', + timeout: 20 * 60 * 1000, + data: data + }) +} + +export function stopSql (data) { + return request({ + url: '/console/sql/stop', + method: 'post', + data: data + }) +} + +export function exportSql (data) { + return request({ + url: '/console/sql/export', + method: 'post', + data: data, + }) +} + +export function consoleFileList (data) { + return request({ + url: '/console/file/list', + method: 'get', + params: data + }) +} + +export function consoleTask () { + return request({ + url: '/console/sql/sqlRunTask', + method: 'get', + timeout: 0, + }) +} + +export function addConsoleFile (data) { + return request({ + url: '/console/file', + method: 'post', + data: data + }) +} + +export function updateConsoleFile (data) { + return request({ + url: '/console/file', + method: 'put', + data: data + }) +} + +export function delConsoleFile (data) { + return request({ + url: '/console/file/delete', + method: 'post', + data: data + }) +} + +export function getConnectNum () { + return request({ + url: '/console/sql/connectNum', + method: 'get', + timeout: 20 * 60 * 1000 + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/sqlmyapply.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/sqlmyapply.js new file mode 100644 index 00000000..1370885f --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/dataconsole/sqlmyapply.js @@ -0,0 +1,19 @@ +import request from '@/utils/request' + +// 查询【SQL元数据权限申请】列表 +export function listApply(query) { + return request({ + url: '/sql/apply/my/list', + method: 'get', + params: query + }) +} + +// 查询【SQL元数据权限申请】详细 +export function getApply(applyId) { + return request({ + url: '/sql/apply/my/' + applyId, + method: 'get' + }) +} + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerApplyInfo.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerApplyInfo.js new file mode 100644 index 00000000..31f13196 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerApplyInfo.js @@ -0,0 +1,166 @@ +import request, { downloadStream } from '@/utils/request' + +//容器申请-查询 +export function pageDockerApplyInfo(data) { + return request({ + url: '/docker/dockerApplyInfo/page', + method: 'get', + params: data + }) +} + +//容器申请-详情 +export function detailDockerApplyInfo(data) { + return request({ + url: '/docker/dockerApplyInfo/detail', + method: 'get', + params: data + }) +} + +//容器申请-新增 +export function addDockerApplyInfo(data) { + return request({ + url: '/docker/dockerApplyInfo/add', + method: 'post', + data: data + }) +} + +//容器申请-编辑 +export function editDockerApplyInfo(data) { + return request({ + url: '/docker/dockerApplyInfo/edit', + method: 'put', + data: data + }) +} + +//容器申请-删除 +export function delDockerApplyInfo(data) { + return request({ + url: '/docker/dockerApplyInfo/del', + method: 'delete', + data: data + }) +} + +//容器申请-发布 +export function releasePageDockerApplyInfo(data) { + return request({ + url: '/docker/dockerApplyInfo/release', + method: 'put', + data: data + }) +} + +//容器数据注入申请-审核 +export function reviewDockerApplyReview(data) { + return request({ + url: '/docker/dockerApplyReview/review', + method: 'put', + data: data + }) +} + +//容器数据注入申请-待审核 +export function pageDockerApplyReview(data) { + return request({ + url: '/docker/dockerApplyReview/reviewPage', + method: 'get', + params: data + }) +} + +//容器数据注入申请-详情 +export function detailDockerApplyReview(data) { + return request({ + url: '/docker/dockerApplyReview/detail', + method: 'get', + params: data + }) +} + +//用户模糊搜索 +export function userGetList(data) { + return request({ + url: '/portal/user/getList', + method: 'get', + params: data + }) +} +//实验室硬件配置信息表 +export function dockerConfigHardwareGetList(data) { + return request({ + url: '/docker/dockerConfigHardware/getList', + method: 'get', + params: data + }) +} +//容器可用镜像 镜像名称dockerImageName serviceType 服务类型 +export function dockerImagesGetList(data) { + return request({ + url: '/docker/dockerImages/getList', + method: 'get', + params: data + }) +} +//服务器清单dockerServerId dockerServerName +export function dockerClientInfoGetList(data) { + return request({ + url: '/docker/dockerClientInfo/getList', + method: 'get', + params: data + }) +} + +//服务器清单dockerServerId dockerServerName +export function fileDownload(uuId) { + // return request({ + // url: '/files/' + uuId, + // method: 'get', + // responseType: 'blob', + // timeout: 0, + // }) + downloadStream('/files/' + uuId); +} +// 分块上传首次获取文件ID;所有分块传完后再次调用进行合并 +export function getUploadSize(data,source) { + var opts={ + url: 'files/upload/console/getUploadSize', + method: 'post', + data: data, + headers: { + 'Content-Type': 'multipart/form-data; charset=utf-8; boundary="another cool boundary";', + }, + timeout: 0, + }; + if(source){//取消token + opts.cancelToken = source.token; + } + return request(opts) +} + +// 文件上传 +export function getUpload(data,uploadProgressFunc,idx,source) { + var opts={ + url: 'files/upload/console', + method: 'post', + data: data, + headers: { + 'Content-Type': 'multipart/form-data' + }, + timeout: 0, + }; + if(uploadProgressFunc && idx!==undefined){ + //追加进度处理 + opts.onUploadProgress=(progressEvent) => { + const { loaded, total } = progressEvent; + uploadProgressFunc(loaded,total,idx); + } + } + if(source){//取消token + opts.cancelToken = source.token; + } + return request(opts); +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerClientInfo.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerClientInfo.js new file mode 100644 index 00000000..1c4b9d62 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerClientInfo.js @@ -0,0 +1,31 @@ +import request from '@/utils/request' + +//服务器清单-查询 +export function pageDockerClientInfo(data) { + return request({ + url: '/docker/dockerClientInfo/page', + method: 'get', + params: data + }) +} + +//服务器清单-详情 +export function detailDockerClientInfo(data) { + return request({ + url: '/docker/dockerClientInfo/detail', + method: 'get', + params: data + }) +} + +//服务器清单-编辑 +export function editDockerClientInfo(data) { + return request({ + url: '/docker/dockerClientInfo/edit', + method: 'put', + data: data + }) +} + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerConfigHardware.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerConfigHardware.js new file mode 100644 index 00000000..a2e6a013 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerConfigHardware.js @@ -0,0 +1,55 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-06-29 19:49:12 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-07-12 16:24:12 + * @FilePath: \agile-system-console-ui\src\api\docker\dockerConfigHardware.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +//实验室硬件配置信息表-查询 +export function pageDockerConfigHardware(data) { + return request({ + url: '/docker/dockerConfigHardware/page', + method: 'get', + params: data + }) +} + +//实验室硬件配置信息表-详情 +export function detailDockerConfigHardware(data) { + return request({ + url: '/docker/dockerConfigHardware/detail', + method: 'get', + params: data + }) +} +//实验室硬件配置信息表-新增 +export function editDockerConfigHardware(data) { + return request({ + url: '/docker/dockerConfigHardware/edit', + method: 'put', + data: data + }) +} +//实验室硬件配置信息表-编辑 +export function addDockerConfigHardware(data) { + return request({ + url: '/docker/dockerConfigHardware/add', + method: 'post', + data: data + }) +} + +//实验室硬件配置信息表-查询集合 +export function getListDockerConfigHardware(data) { + return request({ + url: '/docker/dockerConfigHardware/getList', + method: 'get', + params: data + }) +} + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerDownloadApply.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerDownloadApply.js new file mode 100644 index 00000000..ea64f80f --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerDownloadApply.js @@ -0,0 +1,54 @@ +import request, { downloadStream } from '@/utils/request' + +//下载文件申请-查询 +export function pageDockerDownloadApply(data) { + return request({ + url: '/docker/dockerDownloadApply/page', + method: 'get', + params: data + }) +} + +//下载文件申请-详情 +export function detailDockerDownloadApply(data) { + return request({ + url: '/docker/dockerDownloadApply/detail', + method: 'get', + params: data + }) +} + +//下载文件申请-审核 +export function reviewDockerDownloadApply(data) { + return request({ + url: '/docker/dockerDownloadApply/review', + method: 'put', + data: data + }) +} + +//下载文件申请-审核查询 +export function reviewPageDockerDownloadApply(data) { + return request({ + url: '/docker/dockerDownloadApply/reviewPage', + method: 'get', + params: data + }) +} + + +//下载文件 +export function fileDownloadDockerDownloadApply(downloadApplyId,data) { + return request({ + url: '/docker/dockerDownloadApply/downloadFile/' + downloadApplyId, + method: 'get', + responseType: 'blob', + timeout: 0, + headers: data.headers, + }) + // downloadStream( + // '/docker/dockerDownloadApply/downloadFile/' + downloadApplyId, + // data //请求参数 + // ); +} + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerImages.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerImages.js new file mode 100644 index 00000000..cf0bfe13 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerImages.js @@ -0,0 +1,31 @@ +import request from '@/utils/request' + +//容器可用镜像-查询 +export function pageDockerImages(data) { + return request({ + url: '/docker/dockerImages/page', + method: 'get', + params: data + }) +} + +//容器可用镜像-详情 +export function detailDockerImages(data) { + return request({ + url: '/docker/dockerImages/detail', + method: 'get', + params: data + }) +} + +//容器可用镜像-编辑 +export function editDockerImages(data) { + return request({ + url: '/docker/dockerImages/edit', + method: 'put', + data: data + }) +} + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerPortList.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerPortList.js new file mode 100644 index 00000000..92c515bf --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerPortList.js @@ -0,0 +1,31 @@ +import request from '@/utils/request' + +//服务器端口-查询 +export function pageDockerPortList(data) { + return request({ + url: '/docker/dockerPortList/page', + method: 'get', + params: data + }) +} + +//服务器端口-详情 +export function detailDockerPortList(data) { + return request({ + url: '/docker/dockerPortList/detail', + method: 'get', + params: data + }) +} + +//服务器端口-编辑 +export function editDockerPortList(data) { + return request({ + url: '/docker/dockerPortList/edit', + method: 'put', + data: data + }) +} + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerPortainerUser.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerPortainerUser.js new file mode 100644 index 00000000..7495686d --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerPortainerUser.js @@ -0,0 +1,31 @@ +import request from '@/utils/request' + +//管理portainer账户信息-查询 +export function pageDockerPortainerUser(data) { + return request({ + url: '/docker/dockerPortainerUser/page', + method: 'get', + params: data + }) +} + +//管理portainer账户信息-详情 +export function detailDockerPortainerUser(data) { + return request({ + url: '/docker/dockerPortainerUser/detail', + method: 'get', + params: data + }) +} + +//管理portainer账户信息-编辑 +export function editDockerPortainerUser(data) { + return request({ + url: '/docker/dockerPortainerUser/edit', + method: 'put', + data: data + }) +} + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerVpn.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerVpn.js new file mode 100644 index 00000000..94e89a36 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerVpn.js @@ -0,0 +1,82 @@ +import request from '@/utils/request' + +//vpn用户表-查询 +export function pageDockerVpn(data) { + return request({ + url: '/docker/dockerVpn/page', + method: 'get', + params: data + }) +} +export function dockerApplyInfo(data) { + return request({ + url: '/docker/dockerApplyInfo/getList', + method: 'get', + params: data + }) +} +//vpn用户表-详情 +export function detailDockerVpn(data) { + return request({ + url: '/docker/dockerVpn/detail', + method: 'get', + params: data + }) +} + +//vpn用户表-新增 +export function addDockerVpn(data) { + return request({ + url: '/docker/dockerVpn/add', + method: 'post', + data: data + }) +} + +//vpn用户表-编辑 +export function editDockerVpn(data) { + return request({ + url: '/docker/dockerVpn/edit', + method: 'put', + data: data + }) +} + +//vpn用户表-删除 +export function delDockerVpn(data) { + return request({ + url: '/docker/dockerVpn/del', + method: 'delete', + data: data + }) +} + +//vpn用户表-发送账户 +export function sendDockerVpn(data) { + return request({ + url: '/docker/dockerVpn/send', + method: 'put', + data: data + }) +} + +//vpn用户表-停用 +export function disableDockerVpn(data) { + return request({ + url: '/docker/dockerVpn/disable', + method: 'put', + data: data + }) +} + +//vpn用户表-启用 +export function enableDockerVpn(data) { + return request({ + url: '/docker/dockerVpn/enable', + method: 'put', + data: data + }) +} + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerWithUser.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerWithUser.js new file mode 100644 index 00000000..54e63755 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/docker/dockerWithUser.js @@ -0,0 +1,127 @@ +import request, { downloadStream } from '@/utils/request' + +//用户与容器信息-查询 +export function pageDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/page', + method: 'get', + params: data + }) +} + +//用户与容器信息-详情 +export function detailDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/detail', + method: 'get', + params: data + }) +} + +//用户与容器信息-重启 +export function restartDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/restart', + method: 'put', + data: data + }) +} + +//用户与容器信息-禁用 +export function disableDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/disable', + method: 'put', + data: data + }) +} + +//用户与容器信息-启用 +export function enableDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/enable', + method: 'put', + data: data + }) +} + +//用户与容器信息-销毁 +export function removeDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/remove', + method: 'put', + data: data + }) +} +//用户与容器信息-收回 +export function withdrawDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/withdraw', + method: 'put', + data: data + }) +} +//用户与容器信息-重置密码 +export function resetPwdDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/resetPwd', + method: 'put', + data: data + }) +} + +//用户与容器信息-重新初始化 +export function initializeDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/initialize', + method: 'put', + data: data + }) +} +//用户与容器信息-失败组件重载 +export function loadlibDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/loadlib', + method: 'put', + data: data + }) +} + +//用户与容器信息-上传组件 +export function addlibDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/addlib', + method: 'put', + data: data + }) +} + +//用户与容器信息-获取日志文件清单 +export function getLogsDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/getLogs', + method: 'get', + params: data + }) +} + +//用户与容器信息-下载日志文件 +export function downloadLogDockerWithUser(data) { + // return request({ + // url: '/docker/dockerWithUser/downloadLog', + // method: 'get', + // responseType: 'blob', + // params: data, + // timeout: 0, + // }) + downloadStream('/docker/dockerWithUser/downloadLog', data); +} + +//用户与容器信息-删除组件 +export function dellibDockerWithUser(data) { + return request({ + url: '/docker/dockerWithUser/dellib', + method: 'delete', + data: data + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/index.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/index.js new file mode 100644 index 00000000..e9713468 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/index.js @@ -0,0 +1,47 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-07-11 18:01:28 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-07-11 18:02:46 + * @FilePath: \agile-system-console-ui\src\api\index.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +// 重点关注数据 +export function getfocus() { + return request({ + url: '/home/focus', + method: 'get', + closeLoading : true + }) +} +// 首页待审批申请数据接口 +export function getapply() { + return request({ + url: 'home/wait/apply', + method: 'get', + closeLoading : true + }) +} +// 退出方法 +export function logout() { + return request({ + url: '/logout', + method: 'post', + closeLoading : true + }) +} + +// 获取验证码 +export function getCodeImg() { + return request({ + url: '/captchaImage', + headers: { + isToken: false + }, + method: 'get', + timeout: 20000, + closeLoading : true + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/login.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/login.js new file mode 100644 index 00000000..7748a301 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/login.js @@ -0,0 +1,80 @@ +import request from '@/utils/request' +import {Decrypt, Encrypt} from '@/utils/secret' + +// 登录方法 +export function login(username, password, code, uuid) { + const data = { + username, + password, + code, + uuid + } + // data.password = Encrypt(password) + return request({ + url: '/login', + headers: { + isToken: false + }, + method: 'post', + data: data, + closeLoading : true + }) +} + +// 注册方法 +export function register(data) { + return request({ + url: '/register', + headers: { + isToken: false + }, + method: 'post', + data: data, + closeLoading : true + }) +} + +// 获取用户详细信息 +export function getInfo() { + return request({ + url: '/getInfo', + method: 'get', + closeLoading : true + }) +} + +// 退出方法 +export function logout() { + return request({ + url: '/logout', + method: 'post', + closeLoading : true + }) +} + +// 获取验证码 +export function getCodeImg() { + return request({ + url: '/captchaImage', + headers: { + isToken: false + }, + method: 'get', + timeout: 20000, + closeLoading : true + }) +} + + +// 登录前重置密码 +export function loginResetPwd(data) { + return request({ + url: '/loginResetPwd', + headers: { + isToken: false + }, + method: 'post', + data: data, + closeLoading : true + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/menu.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/menu.js new file mode 100644 index 00000000..faef101c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/menu.js @@ -0,0 +1,9 @@ +import request from '@/utils/request' + +// 获取路由 +export const getRouters = () => { + return request({ + url: '/getRouters', + method: 'get' + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/assetdata.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/assetdata.js new file mode 100644 index 00000000..f8a49fd3 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/assetdata.js @@ -0,0 +1,32 @@ +import request from '@/utils/request' + +export function baseDataList(data) { + return request({ + url: '/asset/data/list', + method: 'get', + params: data + }) +} + +export function baseTableList(columnName) { + return request({ + url: '/asset/data/table/' + columnName, + method: 'get', + }) +} + +export function baseTableDetail(tableId) { + return request({ + url: '/asset/data/detail/' + tableId, + method: 'get', + }) +} + +export function baseTableExport(ids) { + return request({ + url: '/asset/data/export/' + ids, + method: 'get', + responseType: 'blob', + timeout: 0, + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/datacolumn.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/datacolumn.js new file mode 100644 index 00000000..b6ea8c74 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/datacolumn.js @@ -0,0 +1,59 @@ +import request from '@/utils/request' + +export function listDataColumn(data) { + return request({ + url: '/metadata/columns/list', + method: 'get', + params: data + }) +} + +export function pageDataColumn(data) { + return request({ + url: '/metadata/columns/page', + method: 'get', + params: data + }) +} + +export function getDataColumn(id) { + return request({ + url: '/metadata/columns/' + id, + method: 'get' + }) +} + +export function getDataMetadataTree(level, data) { + return request({ + url: '/metadata/columns/tree/' + level, + method: 'get', + params: data + }) +} + +export function getDataMetadataTreeByPerm(level, data) { + return request({ + url: '/metadata/columns/tree/perm/' + level, + method: 'get', + timeout: 10 * 60 * 1000, + params: data + }) +} + +export function getDataMetadataTreeNew(data) { + return request({ + url: '/metadata/columns/treeList', + method: 'post', + data: data, + closeLoading : true + }) +} + +export function getDataMetadataTreePermNew(data) { + return request({ + url: '/metadata/columns/treeList/perm', + method: 'post', + data: data, + closeLoading : true + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/datasource.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/datasource.js new file mode 100644 index 00000000..b6625a89 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/datasource.js @@ -0,0 +1,163 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-07-04 10:29:59 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-09-21 10:24:07 + * @FilePath: \agile-system-console-ui\src\api\metadata\datasource.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' +//连接数列表 +export function pageDataSource(data) { + return request({ + url: '/metadata/source/conn/page', + method: 'get', + params: data + }) +} + +export function getDataSource(id) { + return request({ + url: '/metadata/source/conn/detail?connId=' + id, + timeout: 2 * 60 * 1000, + method: 'get' + }) +} + +export function delDataSource(data) { + return request({ + url: '/metadata/source/conn/delete', + method: 'post', + data: data + }) +} + +export function addDataSource(data) { + return request({ + url: '/metadata/source/conn/add', + method: 'post', + data: data + }) +} + +export function updateDataSource(data) { + return request({ + url: '/metadata/source/conn/edit', + method: 'post', + data: data + }) +} +//数据源 + + +// 刷新参数缓存 +export function refreshMetadata() { + return request({ + url: '/metadata/sources/refresh', + method: 'get' + }) +} + +export function listDataSource(data) { + return request({ + url: '/metadata/sources/list', + method: 'get', + params: data + }) +} +export function listDataUnauthSource(data) { + return request({ + url: '/metadata/sources/unauth/tree', + method: 'get', + params: data + }) +} + +export function pageDataList(data) { + return request({ + url: '/metadata/sources/page', + method: 'get', + params: data + }) +} + +export function getData(id) { + return request({ + url: '/metadata/sources/' + id, + method: 'get' + }) +} + +export function delData(data) { + return request({ + url: '/metadata/sources/delete', + method: 'post', + data: data + }) +} + +export function addData(data) { + return request({ + url: '/metadata/sources', + method: 'post', + data: data + }) +} + +export function updateData(data) { + return request({ + url: '/metadata/sources', + method: 'put', + data: data + }) +} + +export function checkConnection(data) { + return request({ + url: '/metadata/sources/checkConnection', + method: 'post', + timeout: 5 * 60 * 1000, + data: data + }) +} + +export function sync(data) { + return request({ + url: '/metadata/sources/sync', + method: 'post', + data: data + }) +} + +export function syncTable(data) { + return request({ + url: '/metadata/sources/sync/table', + method: 'post', + data: data + }) +} + +export function word(id) { + return request({ + url: '/metadata/sources/word/' + id, + method: 'post', + responseType: 'blob', + timeout: 0, + }) +} + +export function schemas(data) { + return request({ + url: '/metadata/sources/schemas', + method: 'get', + params: data + }) +} + +export function queryMetadataTree(data) { + return request({ + url: '/metadata/sources/treeList', + method: 'get', + params: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/datatable.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/datatable.js new file mode 100644 index 00000000..17e7d689 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/datatable.js @@ -0,0 +1,49 @@ +import request,{syncRequest} from '@/utils/request' + +export function listDataTable(data) { + return request({ + url: '/metadata/tables/list', + method: 'get', + params: data + }) +} + +export function pageDataTable(data) { + return request({ + url: '/metadata/tables/page', + method: 'get', + params: data + }) +} + +export function queryTableMap(data) { + return request({ + url: '/metadata/tables/tableMap', + method: 'post', + data: data + }) +} + +export function queryTreeMap(data) { + return request({ + url: '/metadata/columns/treeMap', + method: 'post', + data: data, + headers: { repeatSubmit:false }, + closeLoading : true + }) +} + +export function queryTableList(data) { + return request({ + url: '/metadata/tables/conn/list', + method: 'get', + params: data + }) +} + +var tmpobj={ + timeoutid:0, +}; + +export {tmpobj}; diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/quality.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/quality.js new file mode 100644 index 00000000..8d124bd3 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/metadata/quality.js @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +export function qualityList(data) { + return request({ + url: '/data/quality/list', + method: 'get', + params: data + }) +} +export function qualitypage(data) { + return request({ + url: '/data/quality/page', + method: 'get', + params: data + }) +} + +export function qualityExport(ids) { + return request({ + url: '/data/quality/export/' + ids, + method: 'get', + responseType: 'blob', + timeout: 0, + }) +} + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/cache.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/cache.js new file mode 100644 index 00000000..72c5f6a3 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/cache.js @@ -0,0 +1,57 @@ +import request from '@/utils/request' + +// 查询缓存详细 +export function getCache() { + return request({ + url: '/monitor/cache', + method: 'get' + }) +} + +// 查询缓存名称列表 +export function listCacheName() { + return request({ + url: '/monitor/cache/getNames', + method: 'get' + }) +} + +// 查询缓存键名列表 +export function listCacheKey(cacheName) { + return request({ + url: '/monitor/cache/getKeys/' + cacheName, + method: 'get' + }) +} + +// 查询缓存内容 +export function getCacheValue(cacheName, cacheKey) { + return request({ + url: '/monitor/cache/getValue/' + cacheName + '/' + cacheKey, + method: 'get' + }) +} + +// 清理指定名称缓存 +export function clearCacheName(cacheName) { + return request({ + url: '/monitor/cache/clearCacheName/' + cacheName, + method: 'delete' + }) +} + +// 清理指定键名缓存 +export function clearCacheKey(cacheKey) { + return request({ + url: '/monitor/cache/clearCacheKey/' + cacheKey, + method: 'delete' + }) +} + +// 清理全部缓存 +export function clearCacheAll() { + return request({ + url: '/monitor/cache/clearCacheAll', + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/job.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/job.js new file mode 100644 index 00000000..38155693 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/job.js @@ -0,0 +1,71 @@ +import request from '@/utils/request' + +// 查询定时任务调度列表 +export function listJob(query) { + return request({ + url: '/monitor/job/list', + method: 'get', + params: query + }) +} + +// 查询定时任务调度详细 +export function getJob(jobId) { + return request({ + url: '/monitor/job/' + jobId, + method: 'get' + }) +} + +// 新增定时任务调度 +export function addJob(data) { + return request({ + url: '/monitor/job', + method: 'post', + data: data + }) +} + +// 修改定时任务调度 +export function updateJob(data) { + return request({ + url: '/monitor/job', + method: 'put', + data: data + }) +} + +// 删除定时任务调度 +export function delJob(jobId) { + return request({ + url: '/monitor/job/' + jobId, + method: 'delete' + }) +} + +// 任务状态修改 +export function changeJobStatus(jobId, status) { + const data = { + jobId, + status + } + return request({ + url: '/monitor/job/changeStatus', + method: 'put', + data: data + }) +} + + +// 定时任务立即执行一次 +export function runJob(jobId, jobGroup) { + const data = { + jobId, + jobGroup + } + return request({ + url: '/monitor/job/run', + method: 'put', + data: data + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/jobLog.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/jobLog.js new file mode 100644 index 00000000..6e0be616 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/jobLog.js @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 查询调度日志列表 +export function listJobLog(query) { + return request({ + url: '/monitor/jobLog/list', + method: 'get', + params: query + }) +} + +// 删除调度日志 +export function delJobLog(jobLogId) { + return request({ + url: '/monitor/jobLog/' + jobLogId, + method: 'delete' + }) +} + +// 清空调度日志 +export function cleanJobLog() { + return request({ + url: '/monitor/jobLog/clean', + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/logininfor.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/logininfor.js new file mode 100644 index 00000000..26a46eb5 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/logininfor.js @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 查询登录日志列表 +export function list(query) { + return request({ + url: '/monitor/logininfor/list', + method: 'get', + params: query + }) +} + +// 删除登录日志 +export function delLogininfor(infoId) { + return request({ + url: '/monitor/logininfor/' + infoId, + method: 'delete' + }) +} + +// 清空登录日志 +export function cleanLogininfor() { + return request({ + url: '/monitor/logininfor/clean', + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/online.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/online.js new file mode 100644 index 00000000..bd221378 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/online.js @@ -0,0 +1,18 @@ +import request from '@/utils/request' + +// 查询在线用户列表 +export function list(query) { + return request({ + url: '/monitor/online/list', + method: 'get', + params: query + }) +} + +// 强退用户 +export function forceLogout(tokenId) { + return request({ + url: '/monitor/online/' + tokenId, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/operlog.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/operlog.js new file mode 100644 index 00000000..a04bca84 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/operlog.js @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 查询操作日志列表 +export function list(query) { + return request({ + url: '/monitor/operlog/list', + method: 'get', + params: query + }) +} + +// 删除操作日志 +export function delOperlog(operId) { + return request({ + url: '/monitor/operlog/' + operId, + method: 'delete' + }) +} + +// 清空操作日志 +export function cleanOperlog() { + return request({ + url: '/monitor/operlog/clean', + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/server.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/server.js new file mode 100644 index 00000000..e1f9ca21 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/monitor/server.js @@ -0,0 +1,9 @@ +import request from '@/utils/request' + +// 获取服务信息 +export function getServer() { + return request({ + url: '/monitor/server', + method: 'get' + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/content.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/content.js new file mode 100644 index 00000000..383dfc51 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/content.js @@ -0,0 +1,63 @@ +import request from '@/utils/request' + +// 查询门户内容列表 +export function listContent(query) { + return request({ + url: '/portal/content/list', + method: 'get', + params: query + }) +} + +// 查询门户内容详细 +export function getContent(contentId) { + return request({ + url: '/portal/content/' + contentId, + method: 'get' + }) +} + +// 新增门户内容 +export function addContent(data) { + return request({ + url: '/portal/content', + method: 'post', + data: data + }) +} + +// 修改门户内容 +export function updateContent(data) { + return request({ + url: '/portal/content', + method: 'put', + data: data + }) +} + +// 删除门户内容 +export function delContent(data) { + return request({ + url: '/portal/content/delete', + method: 'post', + data: data + }) +} + +// 发布门户内容 +export function releaseContent(data) { + return request({ + url: '/portal/content/release', + method: 'post', + data: data + }) +} + +// 下架门户内容 +export function downContent(data) { + return request({ + url: '/portal/content/down', + method: 'post', + data: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/information.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/information.js new file mode 100644 index 00000000..fcb60ed9 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/information.js @@ -0,0 +1,63 @@ +import request from '@/utils/request' + +// 查询门户内容列表 +export function listContent(query) { + return request({ + url: '/portal/content/info/list', + method: 'get', + params: query + }) +} + +// 查询门户内容详细 +export function getContent(contentId) { + return request({ + url: '/portal/content/info/' + contentId, + method: 'get' + }) +} + +// 新增门户内容 +export function addContent(data) { + return request({ + url: '/portal/content/info', + method: 'post', + data: data + }) +} + +// 修改门户内容 +export function updateContent(data) { + return request({ + url: '/portal/content/info', + method: 'put', + data: data + }) +} + +// 删除门户内容 +export function delContent(data) { + return request({ + url: '/portal/content/info/delete', + method: 'post', + data: data + }) +} + +// 发布门户内容 +export function releaseContent(data) { + return request({ + url: '/portal/content/info/release', + method: 'post', + data: data + }) +} + +// 下架门户内容 +export function downContent(data) { + return request({ + url: '/portal/content/info/down', + method: 'post', + data: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/logininfor.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/logininfor.js new file mode 100644 index 00000000..f836b5ee --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/logininfor.js @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 查询登录日志列表 +export function list(query) { + return request({ + url: '/portal/logininfor/list', + method: 'get', + params: query + }) +} + +// 删除登录日志 +export function delLogininfor(infoId) { + return request({ + url: '/portal/logininfor/' + infoId, + method: 'delete' + }) +} + +// 清空登录日志 +export function cleanLogininfor() { + return request({ + url: '/portal/logininfor/clean', + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/operlog.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/operlog.js new file mode 100644 index 00000000..3d4f58cb --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/operlog.js @@ -0,0 +1,26 @@ +import request from '@/utils/request' + +// 查询操作日志列表 +export function list(query) { + return request({ + url: '/portal/operlog/list', + method: 'get', + params: query + }) +} + +// 删除操作日志 +export function delOperlog(operId) { + return request({ + url: '/portal/operlog/' + operId, + method: 'delete' + }) +} + +// 清空操作日志 +export function cleanOperlog() { + return request({ + url: '/portal/operlog/clean', + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/portalUserMsg.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/portalUserMsg.js new file mode 100644 index 00000000..9c1f2049 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/portalUserMsg.js @@ -0,0 +1,22 @@ +import request from '@/utils/request' + +//门户用户消息-查询 +export function pagePortalUserMsg(data) { + return request({ + url: '/portal/portalUserMsg/page', + method: 'get', + params: data + }) +} + +//门户用户消息-详情 +export function detailPortalUserMsg(data) { + return request({ + url: '/portal/portalUserMsg/detail', + method: 'get', + params: data + }) +} + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/user.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/user.js new file mode 100644 index 00000000..d945674d --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/portal/user.js @@ -0,0 +1,111 @@ +import request from '@/utils/request' +import { parseStrEmpty } from "@/utils/ruoyi"; + +// 查询用户列表 +export function listUser(query) { + return request({ + url: '/portal/user/list', + method: 'get', + params: query + }) +} + +// 查询用户详细 +export function getUser(userId) { + return request({ + url: '/portal/user/' + parseStrEmpty(userId), + method: 'get' + }) +} + +// 新增用户 +export function addUser(data) { + return request({ + url: '/portal/user', + method: 'post', + data: data + }) +} + +// 修改用户 +export function updateUser(data) { + return request({ + url: '/portal/user', + method: 'put', + data: data + }) +} + +// 删除用户 +export function delUser(userId) { + return request({ + url: '/portal/user/' + userId, + method: 'delete' + }) +} + +// 用户密码重置 +export function resetUserPwd(userId, password) { + const data = { + userId, + password + } + return request({ + url: '/portal/user/resetPwd', + method: 'put', + data: data + }) +} + +// 用户状态修改 +export function changeUserStatus(userId, status) { + const data = { + userId, + status + } + return request({ + url: '/portal/user/changeStatus', + method: 'put', + data: data + }) +} + +// 查询用户个人信息 +export function getUserProfile() { + return request({ + url: '/portal/user/profile', + method: 'get' + }) +} + +// 修改用户个人信息 +export function updateUserProfile(data) { + return request({ + url: '/portal/user/profile', + method: 'put', + data: data + }) +} + +// 用户密码重置 +export function updateUserPwd(oldPassword, newPassword) { + const data = { + oldPassword, + newPassword + } + return request({ + url: '/portal/user/profile/updatePwd', + method: 'put', + params: data + }) +} + +// 用户头像上传 +export function uploadAvatar(data) { + return request({ + url: '/portal/user/profile/avatar', + method: 'post', + data: data + }) +} + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/lineInfo.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/lineInfo.js new file mode 100644 index 00000000..aa452db1 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/lineInfo.js @@ -0,0 +1,52 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-09-26 17:33:41 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-09-27 15:33:09 + * @FilePath: \agile-system-console-ui\src\api\product\lineInfo.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +// 查询线路基础信息列表 +export function listLine(data) { + return request({ + url: '/product/lineInfo/list', + method: 'post', + data: data + }) +} + +// 查询线路基础信息详细 +export function getLine(lineName) { + return request({ + url: '/product/lineInfo/detail?lineName=' + lineName, + method: 'get' + }) +} + +// 新增线路基础信息 +export function addLine(data) { + return request({ + url: '/base/line', + method: 'post', + data: data + }) +} + +// 修改线路基础信息 +export function updateLine(data) { + return request({ + url: '/base/line', + method: 'put', + data: data + }) +} + +// 删除线路基础信息 +export function delLine(lineName) { + return request({ + url: '/base/line/' + lineName, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/lineMetric.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/lineMetric.js new file mode 100644 index 00000000..7f9f7409 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/lineMetric.js @@ -0,0 +1,45 @@ +import request from '@/utils/request' + +// 查询统计时间段内的线路客流量列表 +export function listDay(data) { + return request({ + url: '/product/lineMetric/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +// 查询统计时间段内的线路客流量详细 +export function getDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'get' + }) +} + +// 新增统计时间段内的线路客流量 +export function addDay(data) { + return request({ + url: '/prd/day', + method: 'post', + data: data + }) +} + +// 修改统计时间段内的线路客流量 +export function updateDay(data) { + return request({ + url: '/prd/day', + method: 'put', + data: data + }) +} + +// 删除统计时间段内的线路客流量 +export function delDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/lineStation.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/lineStation.js new file mode 100644 index 00000000..b3b6f8b4 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/lineStation.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询站点基础信息列表 +export function listLinestation(data) { + return request({ + url: '/product/lineInfo/stationList', + method: 'post', + data: data + }) +} + +// 查询站点基础信息详细 +export function getLinestation(lineCode) { + return request({ + url: '/product/lineInfo/stationDetail?lineName=' + lineCode, + method: 'get' + }) +} + +// 新增站点基础信息 +export function addLinestation(data) { + return request({ + url: '/base/Linestation', + method: 'post', + data: data + }) +} + +// 修改站点基础信息 +export function updateLinestation(data) { + return request({ + url: '/base/Linestation', + method: 'put', + data: data + }) +} + +// 删除站点基础信息 +export function delLinestation(lineCode) { + return request({ + url: '/base/Linestation/' + lineCode, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/routeMetric.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/routeMetric.js new file mode 100644 index 00000000..60f5997f --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/routeMetric.js @@ -0,0 +1,53 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-09-26 17:33:41 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-09-27 15:19:04 + * @FilePath: \agile-system-console-ui\src\api\product\routeMetric.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +// 查询班次日客流量统计列表 +export function listDay(data) { + return request({ + url: '/product/routeMetric/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +// 查询班次日客流量统计详细 +export function getDay(id) { + return request({ + url: '/product/routeMetric/detail?id=' + id, + method: 'get' + }) +} + +// 新增班次日客流量统计 +export function addDay(data) { + return request({ + url: '/prd/day', + method: 'post', + data: data + }) +} + +// 修改班次日客流量统计 +export function updateDay(data) { + return request({ + url: '/prd/day', + method: 'put', + data: data + }) +} + +// 删除班次日客流量统计 +export function delDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationFreqMetric.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationFreqMetric.js new file mode 100644 index 00000000..f8a7c475 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationFreqMetric.js @@ -0,0 +1,53 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-09-26 17:33:41 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-09-27 15:20:33 + * @FilePath: \agile-system-console-ui\src\api\product\stationFreqMetric.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +// 查询站点日常乘客客流量统计列表 +export function listDay(data) { + return request({ + url: '/produce/stationFreqMetric/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +// 查询站点日常乘客客流量统计详细 +export function getDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'get' + }) +} + +// 新增站点日常乘客客流量统计 +export function addDay(data) { + return request({ + url: '/prd/day', + method: 'post', + data: data + }) +} + +// 修改站点日常乘客客流量统计 +export function updateDay(data) { + return request({ + url: '/prd/day', + method: 'put', + data: data + }) +} + +// 删除站点日常乘客客流量统计 +export function delDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationFreqTrans.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationFreqTrans.js new file mode 100644 index 00000000..5101b49b --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationFreqTrans.js @@ -0,0 +1,45 @@ +import request from '@/utils/request' + +// 查询站点日常乘客换乘客流量统计列表 +export function listDay(data) { + return request({ + url: '/product/stationFreqTrans/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +// 查询站点日常乘客换乘客流量统计详细 +export function getDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'get' + }) +} + +// 新增站点日常乘客换乘客流量统计 +export function addDay(data) { + return request({ + url: '/prd/day', + method: 'post', + data: data + }) +} + +// 修改站点日常乘客换乘客流量统计 +export function updateDay(data) { + return request({ + url: '/prd/day', + method: 'put', + data: data + }) +} + +// 删除站点日常乘客换乘客流量统计 +export function delDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationMetric.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationMetric.js new file mode 100644 index 00000000..ccea8182 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationMetric.js @@ -0,0 +1,45 @@ +import request from '@/utils/request' + +// 查询站点日客流量统计列表 +export function listDay(data) { + return request({ + url: '/product/stationMetric/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +// 查询站点日客流量统计详细 +export function getDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'get' + }) +} + +// 新增站点日客流量统计 +export function addDay(data) { + return request({ + url: '/prd/day', + method: 'post', + data: data + }) +} + +// 修改站点日客流量统计 +export function updateDay(data) { + return request({ + url: '/prd/day', + method: 'put', + data: data + }) +} + +// 删除站点日客流量统计 +export function delDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationTrans.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationTrans.js new file mode 100644 index 00000000..7557b0d9 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/product/stationTrans.js @@ -0,0 +1,45 @@ +import request from '@/utils/request' + +// 查询站点日换乘客流量统计列表 +export function listDay(data) { + return request({ + url: '/product/stationTrans/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +// 查询站点日换乘客流量统计详细 +export function getDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'get' + }) +} + +// 新增站点日换乘客流量统计 +export function addDay(data) { + return request({ + url: '/prd/day', + method: 'post', + data: data + }) +} + +// 修改站点日换乘客流量统计 +export function updateDay(data) { + return request({ + url: '/prd/day', + method: 'put', + data: data + }) +} + +// 删除站点日换乘客流量统计 +export function delDay(id) { + return request({ + url: '/prd/day/' + id, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/publicx/publicFiles.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/publicx/publicFiles.js new file mode 100644 index 00000000..2bcf8a59 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/publicx/publicFiles.js @@ -0,0 +1,22 @@ +import request from '@/utils/request' + +//系统文件表-查询 +export function pagePublicFiles(data) { + return request({ + url: '/publicx/publicFiles/page', + method: 'get', + params: data + }) +} + +//系统文件表-详情 +export function detailPublicFiles(data) { + return request({ + url: '/publicx/publicFiles/detail', + method: 'get', + params: data + }) +} + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/publicx/publicMsgTemplate.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/publicx/publicMsgTemplate.js new file mode 100644 index 00000000..bbdb7d69 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/publicx/publicMsgTemplate.js @@ -0,0 +1,31 @@ +import request from '@/utils/request' + +//消息模板-查询 +export function pagePublicMsgTemplate(data) { + return request({ + url: '/publicx/publicMsgTemplate/page', + method: 'get', + params: data + }) +} + +//消息模板-详情 +export function detailPublicMsgTemplate(data) { + return request({ + url: '/publicx/publicMsgTemplate/detail', + method: 'get', + params: data + }) +} + +//消息模板-编辑 +export function editPublicMsgTemplate(data) { + return request({ + url: '/publicx/publicMsgTemplate/edit', + method: 'get', + params: data + }) +} + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/publicx/publicPhoneMsgLog.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/publicx/publicPhoneMsgLog.js new file mode 100644 index 00000000..40bb203a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/publicx/publicPhoneMsgLog.js @@ -0,0 +1,30 @@ +import request from '@/utils/request' + +//短信记录表-查询 +export function pagePublicPhoneMsgLog(data) { + return request({ + url: '/publicx/publicPhoneMsgLog/page', + method: 'get', + params: data + }) +} + +//短信记录表-详情 +export function detailPublicPhoneMsgLog(data) { + return request({ + url: '/publicx/publicPhoneMsgLog/detail', + method: 'get', + params: data + }) +} + +//短信记录表-获取剩余短信 +export function remainingNumPublicPhoneMsgLog(data) { + return request({ + url: '/publicx/publicPhoneMsgLog/remainingNum', + method: 'get', + params: data + }) +} + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/centimeDelay.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/centimeDelay.js new file mode 100644 index 00000000..21cd1f95 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/centimeDelay.js @@ -0,0 +1,31 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-09-26 17:33:41 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-09-26 19:59:03 + * @FilePath: \agile-system-console-ui\src\api\quality\centimeDelay.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +// 查询延迟上送比率列表 +export function listPrd(data) { + return request({ + url: '/quality/centimeDelay/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +export function exportList(data) { + return request({ + url: '/quality/centimeDelay/export', + method: 'post', + data: data, + responseType: 'blob', + timeout: 0, + closeLoading : true + }) +} + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/posMatchRate.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/posMatchRate.js new file mode 100644 index 00000000..e085c5e5 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/posMatchRate.js @@ -0,0 +1,32 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-09-26 17:33:41 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-09-26 20:03:03 + * @FilePath: \agile-system-console-ui\src\api\quality\posMatchRate.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +// 查询Pos匹配率列表 +export function listPrd(data) { + return request({ + url: '/quality/posMatchRate/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +export function exportList(data) { + return request({ + url: '/quality/posMatchRate/export', + method: 'post', + data: data, + responseType: 'blob', + timeout: 0, + closeLoading : true + }) +} + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/routeDailyCount.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/routeDailyCount.js new file mode 100644 index 00000000..2dc66cd8 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/routeDailyCount.js @@ -0,0 +1,32 @@ +/* + * @Author: 1036896656@qq.com 1036896656@qq.com + * @Date: 2023-09-26 17:33:41 + * @LastEditors: 1036896656@qq.com 1036896656@qq.com + * @LastEditTime: 2023-09-26 20:06:15 + * @FilePath: \agile-system-console-ui\src\api\quality\routeDailyCount.js + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +import request from '@/utils/request' + +// 查询日营运线路条数列表 +export function listPrd(data) { + return request({ + url: '/quality/routeDailyCount/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +export function exportList(data) { + return request({ + url: '/quality/routeDailyCount/export', + method: 'post', + data: data, + responseType: 'blob', + timeout: 0, + closeLoading : true + }) +} + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/routeMiss.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/routeMiss.js new file mode 100644 index 00000000..87a01a9d --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/routeMiss.js @@ -0,0 +1,22 @@ +import request from '@/utils/request' + +// 查询班次缺失率列表 +export function listPrd(data) { + return request({ + url: '/quality/routeMiss/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +export function exportList(data) { + return request({ + url: '/quality/routeMiss/export', + method: 'post', + data: data, + responseType: 'blob', + timeout: 0, + closeLoading : true + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/routeTurnoverTime.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/routeTurnoverTime.js new file mode 100644 index 00000000..3f8a60d0 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/routeTurnoverTime.js @@ -0,0 +1,23 @@ +import request from '@/utils/request' + +// 查询班次周转时间列表 +export function listPrd(data) { + return request({ + url: '/quality/routeTurnover/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +export function exportList(data) { + return request({ + url: '/quality/routeTurnover/export', + method: 'post', + data: data, + responseType: 'blob', + timeout: 0, + closeLoading : true + }) +} + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/stationMiss.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/stationMiss.js new file mode 100644 index 00000000..9dcb6413 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/stationMiss.js @@ -0,0 +1,31 @@ +import request from '@/utils/request' + +// 查询站点缺失率列表 +export function listPrd(data) { + return request({ + url: '/quality/stationMiss/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +// 查询站点缺失率详细 +export function getPrd(id) { + return request({ + url: '/quality/stationMiss/detail?id=' + id, + method: 'get' + }) +} + +export function exportList(data) { + return request({ + url: '/quality/stationMiss/export', + method: 'post', + data: data, + responseType: 'blob', + timeout: 0, + closeLoading : true + }) +} + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/vehicleDailyCount.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/vehicleDailyCount.js new file mode 100644 index 00000000..330b3d88 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/quality/vehicleDailyCount.js @@ -0,0 +1,23 @@ +import request from '@/utils/request' + +// 查询日营运车辆数列表 +export function listPrd(data) { + return request({ + url: '/quality/vehicleDaily/page', + method: 'post', + data: data, + closeLoading : true + }) +} + +export function exportList(data) { + return request({ + url: '/quality/vehicleDaily/export', + method: 'post', + data: data, + responseType: 'blob', + timeout: 0, + closeLoading : true + }) +} + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/sftp/user.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/sftp/user.js new file mode 100644 index 00000000..08a8564e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/sftp/user.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询SFTP用户列表 +export function listUser(query) { + return request({ + url: '/sftp/user/list', + method: 'get', + params: query + }) +} + +// 查询SFTP用户详细 +export function getUser(sftpId) { + return request({ + url: '/sftp/user/' + sftpId, + method: 'get' + }) +} + +// 新增SFTP用户 +export function addUser(data) { + return request({ + url: '/sftp/user', + method: 'post', + data: data + }) +} + +// 修改SFTP用户 +export function updateUser(data) { + return request({ + url: '/sftp/user', + method: 'put', + data: data + }) +} + +// 删除SFTP用户 +export function delUser(sftpId) { + return request({ + url: '/sftp/user/' + sftpId, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/sftp/userFile.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/sftp/userFile.js new file mode 100644 index 00000000..60386a42 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/sftp/userFile.js @@ -0,0 +1,76 @@ +import request from '@/utils/request' + +// 查询SFTP用户文件列表 +export function listFile(query) { + return request({ + url: '/sftp/file/list', + method: 'get', + params: query + }) +} + +// 查询SFTP用户文件详细 +export function getFile(sftpFileId) { + return request({ + url: '/sftp/file/' + sftpFileId, + method: 'get' + }) +} + +// 新增SFTP用户文件(上传完成后合并和记录) +export function addFile(data,source) { + var opts={ + url: '/sftp/file', + method: 'post', + data: data, + headers: { + 'Content-Type': 'multipart/form-data; charset=utf-8; boundary="another cool boundary";', + }, + timeout: 0, + }; + if(source){//取消token + opts.cancelToken = source.token; + } + return request(opts); +} + +// 新增SFTP用户文件,上传文件 +export function addUploadFile(data,uploadProgressFunc,idx,source) { + var opts={ + url: '/sftp/file/addUpload', + method: 'post', + data: data, + headers: { + 'Content-Type': 'multipart/form-data' + }, + timeout: 0, + }; + if(uploadProgressFunc && idx!==undefined){ + //追加进度处理 + opts.onUploadProgress=(progressEvent) => { + const { loaded, total } = progressEvent; + uploadProgressFunc(loaded,total,idx); + } + } + if(source){//取消token + opts.cancelToken = source.token; + } + return request(opts); +} + +// 修改SFTP用户文件 +export function updateFile(data) { + return request({ + url: '/sftp/file', + method: 'put', + data: data + }) +} + +// 删除SFTP用户文件 +export function delFile(sftpFileId) { + return request({ + url: '/sftp/file/' + sftpFileId, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/config.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/config.js new file mode 100644 index 00000000..a404d825 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/config.js @@ -0,0 +1,60 @@ +import request from '@/utils/request' + +// 查询参数列表 +export function listConfig(query) { + return request({ + url: '/system/config/list', + method: 'get', + params: query + }) +} + +// 查询参数详细 +export function getConfig(configId) { + return request({ + url: '/system/config/' + configId, + method: 'get' + }) +} + +// 根据参数键名查询参数值 +export function getConfigKey(configKey) { + return request({ + url: '/system/config/configKey/' + configKey, + method: 'get' + }) +} + +// 新增参数配置 +export function addConfig(data) { + return request({ + url: '/system/config', + method: 'post', + data: data + }) +} + +// 修改参数配置 +export function updateConfig(data) { + return request({ + url: '/system/config', + method: 'put', + data: data + }) +} + +// 删除参数配置 +export function delConfig(configId) { + return request({ + url: '/system/config/' + configId, + method: 'delete' + }) +} + +// 刷新参数缓存 +export function refreshCache() { + return request({ + url: '/system/config/refreshCache', + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/dept.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/dept.js new file mode 100644 index 00000000..2804676f --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/dept.js @@ -0,0 +1,68 @@ +import request from '@/utils/request' + +// 查询部门列表 +export function listDept(query) { + return request({ + url: '/system/dept/list', + method: 'get', + params: query + }) +} + +// 查询部门列表(排除节点) +export function listDeptExcludeChild(deptId) { + return request({ + url: '/system/dept/list/exclude/' + deptId, + method: 'get' + }) +} + +// 查询部门详细 +export function getDept(deptId) { + return request({ + url: '/system/dept/' + deptId, + method: 'get' + }) +} + +// 查询部门下拉树结构 +export function treeselect() { + return request({ + url: '/system/dept/treeselect', + method: 'get' + }) +} + +// 根据角色ID查询部门树结构 +export function roleDeptTreeselect(roleId) { + return request({ + url: '/system/dept/roleDeptTreeselect/' + roleId, + method: 'get' + }) +} + +// 新增部门 +export function addDept(data) { + return request({ + url: '/system/dept', + method: 'post', + data: data + }) +} + +// 修改部门 +export function updateDept(data) { + return request({ + url: '/system/dept', + method: 'put', + data: data + }) +} + +// 删除部门 +export function delDept(deptId) { + return request({ + url: '/system/dept/' + deptId, + method: 'delete' + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/dict/data.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/dict/data.js new file mode 100644 index 00000000..6c9eb79b --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/dict/data.js @@ -0,0 +1,52 @@ +import request from '@/utils/request' + +// 查询字典数据列表 +export function listData(query) { + return request({ + url: '/system/dict/data/list', + method: 'get', + params: query + }) +} + +// 查询字典数据详细 +export function getData(dictCode) { + return request({ + url: '/system/dict/data/' + dictCode, + method: 'get' + }) +} + +// 根据字典类型查询字典数据信息 +export function getDicts(dictType) { + return request({ + url: '/system/dict/data/type/' + dictType, + method: 'get' + }) +} + +// 新增字典数据 +export function addData(data) { + return request({ + url: '/system/dict/data', + method: 'post', + data: data + }) +} + +// 修改字典数据 +export function updateData(data) { + return request({ + url: '/system/dict/data', + method: 'put', + data: data + }) +} + +// 删除字典数据 +export function delData(dictCode) { + return request({ + url: '/system/dict/data/' + dictCode, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/dict/type.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/dict/type.js new file mode 100644 index 00000000..a7a6e01f --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/dict/type.js @@ -0,0 +1,60 @@ +import request from '@/utils/request' + +// 查询字典类型列表 +export function listType(query) { + return request({ + url: '/system/dict/type/list', + method: 'get', + params: query + }) +} + +// 查询字典类型详细 +export function getType(dictId) { + return request({ + url: '/system/dict/type/' + dictId, + method: 'get' + }) +} + +// 新增字典类型 +export function addType(data) { + return request({ + url: '/system/dict/type', + method: 'post', + data: data + }) +} + +// 修改字典类型 +export function updateType(data) { + return request({ + url: '/system/dict/type', + method: 'put', + data: data + }) +} + +// 删除字典类型 +export function delType(dictId) { + return request({ + url: '/system/dict/type/' + dictId, + method: 'delete' + }) +} + +// 刷新字典缓存 +export function refreshCache() { + return request({ + url: '/system/dict/type/refreshCache', + method: 'delete' + }) +} + +// 获取字典选择框列表 +export function optionselect() { + return request({ + url: '/system/dict/type/optionselect', + method: 'get' + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/menu.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/menu.js new file mode 100644 index 00000000..f6415c65 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/menu.js @@ -0,0 +1,60 @@ +import request from '@/utils/request' + +// 查询菜单列表 +export function listMenu(query) { + return request({ + url: '/system/menu/list', + method: 'get', + params: query + }) +} + +// 查询菜单详细 +export function getMenu(menuId) { + return request({ + url: '/system/menu/' + menuId, + method: 'get' + }) +} + +// 查询菜单下拉树结构 +export function treeselect() { + return request({ + url: '/system/menu/treeselect', + method: 'get' + }) +} + +// 根据角色ID查询菜单下拉树结构 +export function roleMenuTreeselect(roleId) { + return request({ + url: '/system/menu/roleMenuTreeselect/' + roleId, + method: 'get' + }) +} + +// 新增菜单 +export function addMenu(data) { + return request({ + url: '/system/menu', + method: 'post', + data: data + }) +} + +// 修改菜单 +export function updateMenu(data) { + return request({ + url: '/system/menu', + method: 'put', + data: data + }) +} + +// 删除菜单 +export function delMenu(menuId) { + return request({ + url: '/system/menu/' + menuId, + method: 'delete' + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/notice.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/notice.js new file mode 100644 index 00000000..cc8c57d0 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/notice.js @@ -0,0 +1,53 @@ +import request from '@/utils/request' + +// 查询公告列表 +export function listNotice(query) { + return request({ + url: '/system/notice/list', + method: 'get', + params: query + }) +} + +// 查询公告列表 +export function noPermListNotice(query) { + return request({ + url: '/system/notice/noPermList', + method: 'get', + params: query + }) +} + +// 查询公告详细 +export function getNotice(noticeId) { + return request({ + url: '/system/notice/' + noticeId, + method: 'get' + }) +} + +// 新增公告 +export function addNotice(data) { + return request({ + url: '/system/notice', + method: 'post', + data: data + }) +} + +// 修改公告 +export function updateNotice(data) { + return request({ + url: '/system/notice', + method: 'put', + data: data + }) +} + +// 删除公告 +export function delNotice(noticeId) { + return request({ + url: '/system/notice/' + noticeId, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/post.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/post.js new file mode 100644 index 00000000..1a8e9ca0 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/post.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询岗位列表 +export function listPost(query) { + return request({ + url: '/system/post/list', + method: 'get', + params: query + }) +} + +// 查询岗位详细 +export function getPost(postId) { + return request({ + url: '/system/post/' + postId, + method: 'get' + }) +} + +// 新增岗位 +export function addPost(data) { + return request({ + url: '/system/post', + method: 'post', + data: data + }) +} + +// 修改岗位 +export function updatePost(data) { + return request({ + url: '/system/post', + method: 'put', + data: data + }) +} + +// 删除岗位 +export function delPost(postId) { + return request({ + url: '/system/post/' + postId, + method: 'delete' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/role.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/role.js new file mode 100644 index 00000000..4b455e13 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/role.js @@ -0,0 +1,111 @@ +import request from '@/utils/request' + +// 查询角色列表 +export function listRole(query) { + return request({ + url: '/system/role/list', + method: 'get', + params: query + }) +} + +// 查询角色详细 +export function getRole(roleId) { + return request({ + url: '/system/role/' + roleId, + method: 'get' + }) +} + +// 新增角色 +export function addRole(data) { + return request({ + url: '/system/role', + method: 'post', + data: data + }) +} + +// 修改角色 +export function updateRole(data) { + return request({ + url: '/system/role', + method: 'put', + data: data + }) +} + +// 角色数据权限 +export function dataScope(data) { + return request({ + url: '/system/role/dataScope', + method: 'put', + data: data + }) +} + +// 角色状态修改 +export function changeRoleStatus(roleId, status) { + const data = { + roleId, + status + } + return request({ + url: '/system/role/changeStatus', + method: 'put', + data: data + }) +} + +// 删除角色 +export function delRole(roleId) { + return request({ + url: '/system/role/' + roleId, + method: 'delete' + }) +} + +// 查询角色已授权用户列表 +export function allocatedUserList(query) { + return request({ + url: '/system/role/authUser/allocatedList', + method: 'get', + params: query + }) +} + +// 查询角色未授权用户列表 +export function unallocatedUserList(query) { + return request({ + url: '/system/role/authUser/unallocatedList', + method: 'get', + params: query + }) +} + +// 取消用户授权角色 +export function authUserCancel(data) { + return request({ + url: '/system/role/authUser/cancel', + method: 'put', + data: data + }) +} + +// 批量取消用户授权角色 +export function authUserCancelAll(data) { + return request({ + url: '/system/role/authUser/cancelAll', + method: 'put', + params: data + }) +} + +// 授权用户选择 +export function authUserSelectAll(data) { + return request({ + url: '/system/role/authUser/selectAll', + method: 'put', + params: data + }) +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/user.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/user.js new file mode 100644 index 00000000..4fd752b4 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/user.js @@ -0,0 +1,127 @@ +import request from '@/utils/request' +import { parseStrEmpty } from "@/utils/ruoyi"; + +// 查询用户列表 +export function listUser(query) { + return request({ + url: '/system/user/list', + method: 'get', + params: query + }) +} + +// 查询用户详细 +export function getUser(userId) { + return request({ + url: '/system/user/' + parseStrEmpty(userId), + method: 'get' + }) +} + +// 新增用户 +export function addUser(data) { + return request({ + url: '/system/user', + method: 'post', + data: data + }) +} + +// 修改用户 +export function updateUser(data) { + return request({ + url: '/system/user', + method: 'put', + data: data + }) +} + +// 删除用户 +export function delUser(userId) { + return request({ + url: '/system/user/' + userId, + method: 'delete' + }) +} + +// 用户密码重置 +export function resetUserPwd(userId, password) { + const data = { + userId, + password + } + return request({ + url: '/system/user/resetPwd', + method: 'put', + data: data + }) +} + +// 用户状态修改 +export function changeUserStatus(userId, status) { + const data = { + userId, + status + } + return request({ + url: '/system/user/changeStatus', + method: 'put', + data: data + }) +} + +// 查询用户个人信息 +export function getUserProfile() { + return request({ + url: '/system/user/profile', + method: 'get' + }) +} + +// 修改用户个人信息 +export function updateUserProfile(data) { + return request({ + url: '/system/user/profile', + method: 'put', + data: data + }) +} + +// 用户密码重置 +export function updateUserPwd(oldPassword, newPassword) { + const data = { + oldPassword, + newPassword + } + return request({ + url: '/system/user/profile/updatePwd', + method: 'put', + params: data + }) +} + +// 用户头像上传 +export function uploadAvatar(data) { + return request({ + url: '/system/user/profile/avatar', + method: 'post', + data: data + }) +} + +// 查询授权角色 +export function getAuthRole(userId) { + return request({ + url: '/system/user/authRole/' + userId, + method: 'get' + }) +} + +// 保存授权角色 +export function updateAuthRole(data) { + return request({ + url: '/system/user/authRole', + method: 'put', + params: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/warning.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/warning.js new file mode 100644 index 00000000..ca7ecebd --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/system/warning.js @@ -0,0 +1,45 @@ +import request from '@/utils/request' + +// 查询【告警联系方式】列表 +export function listWarning(query) { + return request({ + url: '/system/warning/list', + method: 'get', + params: query + }) +} + +// 查询【告警联系方式】详细 +export function getWarning(id) { + return request({ + url: '/system/warning/' + id, + method: 'get' + }) +} + +// 新增【告警联系方式】 +export function addWarning(data) { + return request({ + url: '/system/warning', + method: 'post', + data: data + }) +} + +// 修改【告警联系方式】 +export function updateWarning(data) { + return request({ + url: '/system/warning', + method: 'put', + data: data + }) +} + +// 删除【告警联系方式】 +export function delWarning(data) { + return request({ + url: '/system/warning/delete', + method: 'post', + data: data + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/tool/gen.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/tool/gen.js new file mode 100644 index 00000000..45069278 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/api/tool/gen.js @@ -0,0 +1,76 @@ +import request from '@/utils/request' + +// 查询生成表数据 +export function listTable(query) { + return request({ + url: '/tool/gen/list', + method: 'get', + params: query + }) +} +// 查询db数据库列表 +export function listDbTable(query) { + return request({ + url: '/tool/gen/db/list', + method: 'get', + params: query + }) +} + +// 查询表详细信息 +export function getGenTable(tableId) { + return request({ + url: '/tool/gen/' + tableId, + method: 'get' + }) +} + +// 修改代码生成信息 +export function updateGenTable(data) { + return request({ + url: '/tool/gen', + method: 'put', + data: data + }) +} + +// 导入表 +export function importTable(data) { + return request({ + url: '/tool/gen/importTable', + method: 'post', + params: data + }) +} + +// 预览生成代码 +export function previewTable(tableId) { + return request({ + url: '/tool/gen/preview/' + tableId, + method: 'get' + }) +} + +// 删除表数据 +export function delTable(tableId) { + return request({ + url: '/tool/gen/' + tableId, + method: 'delete' + }) +} + +// 生成代码(自定义路径) +export function genCode(tableName) { + return request({ + url: '/tool/gen/genCode/' + tableName, + method: 'get' + }) +} + +// 同步数据库 +export function synchDb(tableName) { + return request({ + url: '/tool/gen/synchDb/' + tableName, + method: 'get' + }) +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/401_images/401.gif b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/401_images/401.gif new file mode 100644 index 00000000..cd6e0d94 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/401_images/401.gif differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/404_images/404.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/404_images/404.png new file mode 100644 index 00000000..3d8e2305 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/404_images/404.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/404_images/404_cloud.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/404_images/404_cloud.png new file mode 100644 index 00000000..c6281d09 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/404_images/404_cloud.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/index.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/index.js new file mode 100644 index 00000000..2c6b309c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/index.js @@ -0,0 +1,9 @@ +import Vue from 'vue' +import SvgIcon from '@/components/SvgIcon'// svg component + +// register globally +Vue.component('svg-icon', SvgIcon) + +const req = require.context('./svg', false, /\.svg$/) +const requireAll = requireContext => requireContext.keys().map(requireContext) +requireAll(req) diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/404.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/404.svg new file mode 100644 index 00000000..6df50190 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/404.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/agiletable.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/agiletable.svg new file mode 100644 index 00000000..08ea569c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/agiletable.svg @@ -0,0 +1,6 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/alarm.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/alarm.svg new file mode 100644 index 00000000..76c79283 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/alarm.svg @@ -0,0 +1,6 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/api.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/api.svg new file mode 100644 index 00000000..273c03ce --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/api.svg @@ -0,0 +1,6 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/approve.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/approve.svg new file mode 100644 index 00000000..a9dc9d25 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/approve.svg @@ -0,0 +1,9 @@ + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/bug.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/bug.svg new file mode 100644 index 00000000..05a150dc --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/bug.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/build.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/build.svg new file mode 100644 index 00000000..97c46886 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/build.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/button.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/button.svg new file mode 100644 index 00000000..904fddc8 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/cascader.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/cascader.svg new file mode 100644 index 00000000..e256024f --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/cascader.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/chart.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/chart.svg new file mode 100644 index 00000000..27728fb0 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/chart.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/checkbox.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/checkbox.svg new file mode 100644 index 00000000..013fd3a2 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/checkbox.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/clipboard.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/clipboard.svg new file mode 100644 index 00000000..90923ff6 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/clipboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/code.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/code.svg new file mode 100644 index 00000000..ed4d23cf --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/code.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/color.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/color.svg new file mode 100644 index 00000000..44a81aab --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/color.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/component.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/component.svg new file mode 100644 index 00000000..29c34580 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/component.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/consolesql.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/consolesql.svg new file mode 100644 index 00000000..7129cc49 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/consolesql.svg @@ -0,0 +1,12 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/content.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/content.svg new file mode 100644 index 00000000..d1c4dc5b --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/content.svg @@ -0,0 +1,9 @@ + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dashboard.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dashboard.svg new file mode 100644 index 00000000..5317d370 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dashboard.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/data1.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/data1.svg new file mode 100644 index 00000000..1b5f3526 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/data1.svg @@ -0,0 +1,17 @@ + + + + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/data2.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/data2.svg new file mode 100644 index 00000000..c4cb030a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/data2.svg @@ -0,0 +1,6 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/data3.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/data3.svg new file mode 100644 index 00000000..948e806c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/data3.svg @@ -0,0 +1,12 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/datafull.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/datafull.svg new file mode 100644 index 00000000..f96a1fb0 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/datafull.svg @@ -0,0 +1,6 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/date-range.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/date-range.svg new file mode 100644 index 00000000..fda571e7 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/date-range.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/date.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/date.svg new file mode 100644 index 00000000..52dc73ee --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/date.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dict.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dict.svg new file mode 100644 index 00000000..48493773 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dict.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/docker.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/docker.svg new file mode 100644 index 00000000..c2ad89cb --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/docker.svg @@ -0,0 +1,16 @@ + + + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dockerc.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dockerc.svg new file mode 100644 index 00000000..82680ced --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dockerc.svg @@ -0,0 +1,6 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dockeru.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dockeru.svg new file mode 100644 index 00000000..01d85b91 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/dockeru.svg @@ -0,0 +1,14 @@ + + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/documentation.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/documentation.svg new file mode 100644 index 00000000..70431228 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/documentation.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/download.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/download.svg new file mode 100644 index 00000000..c8969513 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/download.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/drag.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/drag.svg new file mode 100644 index 00000000..4185d3ce --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/drag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/druid.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/druid.svg new file mode 100644 index 00000000..a2b4b4ed --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/druid.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/edit.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/edit.svg new file mode 100644 index 00000000..d26101f2 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/edit.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/education.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/education.svg new file mode 100644 index 00000000..7bfb01d1 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/education.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/email.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/email.svg new file mode 100644 index 00000000..74d25e21 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/email.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/examine.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/examine.svg new file mode 100644 index 00000000..178d59cd --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/examine.svg @@ -0,0 +1,6 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/example.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/example.svg new file mode 100644 index 00000000..46f42b53 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/example.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/excel.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/excel.svg new file mode 100644 index 00000000..74d97b80 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/excel.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/exit-fullscreen.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/exit-fullscreen.svg new file mode 100644 index 00000000..485c128b --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/exit-fullscreen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/eye-open.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/eye-open.svg new file mode 100644 index 00000000..88dcc98e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/eye-open.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/eye.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/eye.svg new file mode 100644 index 00000000..16ed2d87 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/eye.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/form.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/form.svg new file mode 100644 index 00000000..dcbaa185 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/form.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/ftp1.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/ftp1.svg new file mode 100644 index 00000000..0ab959c2 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/ftp1.svg @@ -0,0 +1,6 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/ftp2.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/ftp2.svg new file mode 100644 index 00000000..299c0f98 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/ftp2.svg @@ -0,0 +1,9 @@ + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/fullscreen.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/fullscreen.svg new file mode 100644 index 00000000..0e86b6fa --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/fullscreen.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/gateway.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/gateway.svg new file mode 100644 index 00000000..6ec3dc88 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/gateway.svg @@ -0,0 +1,12 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/github.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/github.svg new file mode 100644 index 00000000..db0a0d43 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/github.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/guide.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/guide.svg new file mode 100644 index 00000000..b2710017 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/guide.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/icon.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/icon.svg new file mode 100644 index 00000000..82be8eee --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/input.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/input.svg new file mode 100644 index 00000000..ab91381e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/input.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/international.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/international.svg new file mode 100644 index 00000000..e9b56eee --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/international.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/job.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/job.svg new file mode 100644 index 00000000..2a93a251 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/job.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/language.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/language.svg new file mode 100644 index 00000000..0082b577 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/language.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/link.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/link.svg new file mode 100644 index 00000000..48197ba4 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/link.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/list.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/list.svg new file mode 100644 index 00000000..20259edd --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/list.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/lock.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/lock.svg new file mode 100644 index 00000000..74fee543 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/lock.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/log.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/log.svg new file mode 100644 index 00000000..d879d33b --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/log.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/logininfor.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/logininfor.svg new file mode 100644 index 00000000..267f8447 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/logininfor.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/message.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/message.svg new file mode 100644 index 00000000..14ca8172 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/message.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/money.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/money.svg new file mode 100644 index 00000000..c1580de1 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/money.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/monitor.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/monitor.svg new file mode 100644 index 00000000..bc308cb0 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/monitor.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/natural.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/natural.svg new file mode 100644 index 00000000..b1955684 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/natural.svg @@ -0,0 +1,9 @@ + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/nested.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/nested.svg new file mode 100644 index 00000000..06713a86 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/nested.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/number.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/number.svg new file mode 100644 index 00000000..ad5ce9af --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/number.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/online.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/online.svg new file mode 100644 index 00000000..330a2029 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/online.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/password.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/password.svg new file mode 100644 index 00000000..6c64defe --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/password.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/pdf.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/pdf.svg new file mode 100644 index 00000000..957aa0cc --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/pdf.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/people.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/people.svg new file mode 100644 index 00000000..2bd54aeb --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/people.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/peoples.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/peoples.svg new file mode 100644 index 00000000..aab852e5 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/peoples.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/phone.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/phone.svg new file mode 100644 index 00000000..ab8e8c4e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/phone.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/portal.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/portal.svg new file mode 100644 index 00000000..0c4b240a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/portal.svg @@ -0,0 +1,8 @@ + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/post.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/post.svg new file mode 100644 index 00000000..2922c613 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/post.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/qq.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/qq.svg new file mode 100644 index 00000000..ee13d4ec --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/qq.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/question.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/question.svg new file mode 100644 index 00000000..cf75bd4b --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/question.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/radio.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/radio.svg new file mode 100644 index 00000000..0cde3452 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/radio.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/rate.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/rate.svg new file mode 100644 index 00000000..aa3b14d7 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/rate.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/redis-list.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/redis-list.svg new file mode 100644 index 00000000..98a15b2a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/redis-list.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/redis.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/redis.svg new file mode 100644 index 00000000..2f1d62df --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/redis.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/row.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/row.svg new file mode 100644 index 00000000..07809922 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/row.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/search.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/search.svg new file mode 100644 index 00000000..84233dda --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/search.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/select.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/select.svg new file mode 100644 index 00000000..d6283828 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/select.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/server.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/server.svg new file mode 100644 index 00000000..ca37b001 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/server.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/shopping.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/shopping.svg new file mode 100644 index 00000000..87513e7c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/shopping.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/size.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/size.svg new file mode 100644 index 00000000..ddb25b8d --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/size.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/skill.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/skill.svg new file mode 100644 index 00000000..a3b73121 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/skill.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/slider.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/slider.svg new file mode 100644 index 00000000..fbe4f39f --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/slider.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/star.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/star.svg new file mode 100644 index 00000000..6cf86e66 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/star.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/swagger.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/swagger.svg new file mode 100644 index 00000000..05d4e7bc --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/swagger.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/switch.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/switch.svg new file mode 100644 index 00000000..0ba61e38 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/switch.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/system.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/system.svg new file mode 100644 index 00000000..dba28cf6 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/system.svg @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tab.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tab.svg new file mode 100644 index 00000000..b4b48e48 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tab.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/table.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/table.svg new file mode 100644 index 00000000..0e3dc9de --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/table.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/textarea.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/textarea.svg new file mode 100644 index 00000000..2709f292 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/textarea.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/theme.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/theme.svg new file mode 100644 index 00000000..5982a2f7 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/theme.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/time-range.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/time-range.svg new file mode 100644 index 00000000..13c1202b --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/time-range.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/time.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/time.svg new file mode 100644 index 00000000..b376e32a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/time.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tool.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tool.svg new file mode 100644 index 00000000..c813067e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tool.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tree-table.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tree-table.svg new file mode 100644 index 00000000..8aafdb82 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tree-table.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tree.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tree.svg new file mode 100644 index 00000000..dd4b7dd2 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/tree.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/upload.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/upload.svg new file mode 100644 index 00000000..bae49c0a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/upload.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/user.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/user.svg new file mode 100644 index 00000000..0ba0716a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/user.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/userv.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/userv.svg new file mode 100644 index 00000000..c6fd8ce4 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/userv.svg @@ -0,0 +1,6 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/validCode.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/validCode.svg new file mode 100644 index 00000000..cfb10214 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/validCode.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/wechat.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/wechat.svg new file mode 100644 index 00000000..c586e551 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/wechat.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/zip.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/zip.svg new file mode 100644 index 00000000..f806fc48 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svg/zip.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svgo.yml b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svgo.yml new file mode 100644 index 00000000..d11906ae --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/icons/svgo.yml @@ -0,0 +1,22 @@ +# replace default config + +# multipass: true +# full: true + +plugins: + + # - name + # + # or: + # - name: false + # - name: true + # + # or: + # - name: + # param1: 1 + # param2: 2 + +- removeAttrs: + attrs: + - 'fill' + - 'fill-rule' diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/1bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/1bg.png new file mode 100644 index 00000000..e42b52b5 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/1bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/2bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/2bg.png new file mode 100644 index 00000000..e754720f Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/2bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/3bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/3bg.png new file mode 100644 index 00000000..216c824f Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/3bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/4bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/4bg.png new file mode 100644 index 00000000..76129c92 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/4bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/5bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/5bg.png new file mode 100644 index 00000000..01c4fff1 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/5bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/6bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/6bg.png new file mode 100644 index 00000000..6c3b8126 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/6bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/7bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/7bg.png new file mode 100644 index 00000000..ae1484be Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/7bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/8bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/8bg.png new file mode 100644 index 00000000..12294431 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/8bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/dark.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/dark.svg new file mode 100644 index 00000000..f646bd7e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/dark.svg @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/dbbg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/dbbg.png new file mode 100644 index 00000000..3d3e003f Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/dbbg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f1.jpg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f1.jpg new file mode 100644 index 00000000..aca13fa9 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f1.jpg differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f2.jpg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f2.jpg new file mode 100644 index 00000000..21e63e72 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f2.jpg differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f3.jpg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f3.jpg new file mode 100644 index 00000000..c26678f5 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f3.jpg differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f4.jpg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f4.jpg new file mode 100644 index 00000000..93e635f0 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f4.jpg differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f5.jpg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f5.jpg new file mode 100644 index 00000000..6b190d8a Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/f5.jpg differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon1.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon1.png new file mode 100644 index 00000000..38462863 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon1.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon2.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon2.png new file mode 100644 index 00000000..16572912 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon2.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon3.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon3.png new file mode 100644 index 00000000..c31aca2f Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon3.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon3_1.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon3_1.png new file mode 100644 index 00000000..e5e8bc15 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon3_1.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon3_2.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon3_2.png new file mode 100644 index 00000000..d59d7860 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon3_2.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon4.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon4.png new file mode 100644 index 00000000..ef8f0fb1 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon4.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon5.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon5.png new file mode 100644 index 00000000..03f51f4e Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon5.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon6.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon6.png new file mode 100644 index 00000000..2f5d6ff5 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/icon6.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn1.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn1.png new file mode 100644 index 00000000..7c5facd5 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn1.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn2.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn2.png new file mode 100644 index 00000000..ca148533 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn2.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn3.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn3.png new file mode 100644 index 00000000..23bf5e23 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn3.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn4.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn4.png new file mode 100644 index 00000000..8acd3bea Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn4.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn5.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn5.png new file mode 100644 index 00000000..672a455c Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn5.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn6.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn6.png new file mode 100644 index 00000000..8c8ad7d9 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn6.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn7.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn7.png new file mode 100644 index 00000000..571f7bc9 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn7.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn8.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn8.png new file mode 100644 index 00000000..a8deabec Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/iconn8.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/indexbg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/indexbg.png new file mode 100644 index 00000000..5396d441 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/indexbg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/libg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/libg.png new file mode 100644 index 00000000..50be09a5 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/libg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/light.svg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/light.svg new file mode 100644 index 00000000..ab7cc088 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/light.svg @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/login-background.jpg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/login-background.jpg new file mode 100644 index 00000000..8a89eb82 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/login-background.jpg differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/login-background.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/login-background.png new file mode 100644 index 00000000..91d62d1a Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/login-background.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/logo.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/logo.png new file mode 100644 index 00000000..fd537fb8 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/logo.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n1bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n1bg.png new file mode 100644 index 00000000..57b9a8d7 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n1bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n2bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n2bg.png new file mode 100644 index 00000000..28496f12 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n2bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n3bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n3bg.png new file mode 100644 index 00000000..28496f12 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n3bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n4bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n4bg.png new file mode 100644 index 00000000..084aeacf Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n4bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n5bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n5bg.png new file mode 100644 index 00000000..084aeacf Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n5bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n6bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n6bg.png new file mode 100644 index 00000000..02812af7 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n6bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n7bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n7bg.png new file mode 100644 index 00000000..104a1eac Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n7bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n8bg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n8bg.png new file mode 100644 index 00000000..3febe863 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/n8bg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/out.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/out.png new file mode 100644 index 00000000..00a68948 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/out.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/password.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/password.png new file mode 100644 index 00000000..182643a3 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/password.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/profile.jpg b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/profile.jpg new file mode 100644 index 00000000..aad25d24 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/profile.jpg differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/profile.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/profile.png new file mode 100644 index 00000000..aad25d24 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/profile.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/top.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/top.png new file mode 100644 index 00000000..461f708b Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/top.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/ts.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/ts.png new file mode 100644 index 00000000..6d807cb8 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/ts.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/tz.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/tz.png new file mode 100644 index 00000000..9f69c5f7 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/tz.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/user.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/user.png new file mode 100644 index 00000000..32a23784 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/user.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/usimg.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/usimg.png new file mode 100644 index 00000000..edfd2939 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/usimg.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/validCode.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/validCode.png new file mode 100644 index 00000000..4f0d8ed6 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/validCode.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/xl.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/xl.png new file mode 100644 index 00000000..a44c100c Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/images/xl.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/logo/logo.png b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/logo/logo.png new file mode 100644 index 00000000..cb300867 Binary files /dev/null and b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/logo/logo.png differ diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/base.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/base.scss new file mode 100644 index 00000000..07b6c431 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/base.scss @@ -0,0 +1,372 @@ + /** + * 通用css样式布局处理 + */ + + /** 基础通用 **/ + ul, + dl, + dt, + dd { + margin: 0; + padding: 0; + list-style-type: none; + + } + + .h1, + .h2, + .h3, + .h4, + .h5, + .h6, + h1, + h2, + h3, + h4, + h5, + h6 { + margin: 0; + padding: 0; + font-family: inherit; + font-weight: 500; + line-height: 1.1; + color: inherit; + } + + .el-message-box__status+.el-message-box__message { + word-break: break-word; + } + + .el-dialog:not(.is-fullscreen) { + margin-top: 6vh !important; + } + + .el-dialog__wrapper.scrollbar .el-dialog .el-dialog__body { + overflow: auto; + overflow-x: hidden; + max-height: 70vh; + padding: 10px 20px 0; + } + + .el-form--inline { + border-bottom: 1px solid #ccc; + // margin-bottom: 20px; + // -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.12), 0 0 5px 0 rgba(0, 0, 0, 0.04); + // box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.12), 0 0 5px 0 rgba(0, 0, 0, 0.04); + padding: 10px 10px 0; + } + + .el-table { + border: 1px solid #EEEEEE; + border-bottom: 0; + + .el-table__header-wrapper, + .el-table__fixed-header-wrapper { + th { + word-break: break-word; + background-color: #f8f8f9; + color: #515a6e; + height: 40px; + font-size: 13px; + } + } + + .el-table__body-wrapper { + .el-button [class*="el-icon-"]+span { + margin-left: 1px; + } + } + } + + /** 表单布局 **/ + .form-header { + font-size: 15px; + color: #6379bb; + border-bottom: 1px solid #ddd; + margin: 8px 10px 25px 10px; + padding-bottom: 5px + } + + /** 表格布局 **/ + .pagination-container { + position: relative; + height: 25px; + margin-bottom: 10px; + margin-top: 15px; + padding: 10px 20px !important; + } + + /* tree border */ + .tree-border { + margin-top: 5px; + border: 1px solid #e5e6e7; + background: #FFFFFF none; + border-radius: 4px; + } + + .pagination-container .el-pagination { + right: 0; + position: absolute; + } + + @media (max-width : 768px) { + .pagination-container .el-pagination>.el-pagination__jump { + display: none !important; + } + + .pagination-container .el-pagination>.el-pagination__sizes { + display: none !important; + } + } + + .el-table .fixed-width .el-button--mini { + padding-left: 0; + padding-right: 0; + width: inherit; + } + + /** 表格更多操作下拉样式 */ + .el-table .el-dropdown-link, + .el-table .el-dropdown-selfdefine { + cursor: pointer; + margin-left: 5px; + } + + .el-table .el-dropdown, + .el-icon-arrow-down { + font-size: 12px; + } + + .el-tree-node__content>.el-checkbox { + margin-right: 8px; + } + + .list-group-striped>.list-group-item { + border-left: 0; + border-right: 0; + border-radius: 0; + padding-left: 0; + padding-right: 0; + } + + .list-group { + padding-left: 0px; + list-style: none; + } + + .list-group-item { + border-bottom: 1px solid #e7eaec; + border-top: 1px solid #e7eaec; + margin-bottom: -1px; + padding: 11px 0px; + font-size: 13px; + } + + .pull-right { + float: right !important; + } + + .el-card__header { + padding: 14px 15px 7px; + min-height: 40px; + } + + .el-card__body { + padding: 15px 20px 20px 20px; + } + + .card-box { + padding-right: 15px; + padding-left: 15px; + margin-bottom: 10px; + } + + /* button color */ + .el-button--cyan.is-active, + .el-button--cyan:active { + background: #20B2AA; + border-color: #20B2AA; + color: #FFFFFF; + } + + .el-button--cyan:focus, + .el-button--cyan:hover { + background: #48D1CC; + border-color: #48D1CC; + color: #FFFFFF; + } + + .el-button--cyan { + background-color: #20B2AA; + border-color: #20B2AA; + color: #FFFFFF; + } + + /* text color */ + .text-navy { + color: #1ab394; + } + + .text-primary { + color: inherit; + } + + .text-success { + color: #1c84c6; + } + + .text-info { + color: #23c6c8; + } + + .text-warning { + color: #f8ac59; + } + + .text-danger { + color: #ed5565; + } + + .text-muted { + color: #888888; + } + + /* image */ + .img-circle { + border-radius: 50%; + } + + .img-lg { + width: 80px; + height: 80px; + } + + .avatar-upload-preview { + position: relative; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 200px; + height: 200px; + border-radius: 50%; + box-shadow: 0 0 4px #ccc; + overflow: hidden; + } + + /* 拖拽列样式 */ + .sortable-ghost { + opacity: .8; + color: #fff !important; + background: #42b983 !important; + } + + .top-right-btn { + position: relative; + float: right; + } + + .header-title { + font-size: 18px; + font-weight: 600; + color: #001330; + } + + .el-form-item__label { + color: #001330; + font-weight: normal; + } + + .el-table th.el-table__cell.is-leaf, + .el-table td.el-table__cell { + border-bottom: 1px solid #F0F0F0; + } + + .el-table .el-table__header-wrapper th, + .el-table .el-table__fixed-header-wrapper th { + background-color: #f8f8f9 !important; + color: #2A2A2B; + font-weight: 500; + font-size: 14px; + } + + .el-table--medium .el-table__cell { + padding: 10px 0 !important; + } + + .header-filter { + padding: 10px 0 0 0; + } + + .list-wrapper { + padding-bottom: 20px; + + .table-index { + .el-button--small { + padding: 0 0; + } + } + + } + + + .card-wrapper { + padding-bottom: 40px; + + .btn-list { + padding-bottom: 20px; + } + } + + .el-switch__label { + font-weight: normal; + } + + .el-button--medium { + border-radius: 4px; + } + + .el-input__inner { + border-radius: 4px; + } + + .el-button--mini { + border-radius: 4px; + } + + .el-button--small { + font-size: 14px; + padding: 8px 15px; + } + + // .el-breadcrumb__inner a, + // .el-breadcrumb__inner.is-link { + // color: #fff !important; + // } + .el-input, + .el-select { + position: relative; + font-size: 14px; + display: inline-block; + width: 100%; + } + + .list-dia { + + .el-input--mini, + .el-button--mini { + font-size: 12px; + font-weight: normal; + } + + .el-form-item--mini { + .el-form-item__label { + font-size: 12px; + } + } + + .el-table--mini { + .cell { + font-size: 12px; + } + } + } \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/btn.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/btn.scss new file mode 100644 index 00000000..e6ba1a8e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/btn.scss @@ -0,0 +1,99 @@ +@import './variables.scss'; + +@mixin colorBtn($color) { + background: $color; + + &:hover { + color: $color; + + &:before, + &:after { + background: $color; + } + } +} + +.blue-btn { + @include colorBtn($blue) +} + +.light-blue-btn { + @include colorBtn($light-blue) +} + +.red-btn { + @include colorBtn($red) +} + +.pink-btn { + @include colorBtn($pink) +} + +.green-btn { + @include colorBtn($green) +} + +.tiffany-btn { + @include colorBtn($tiffany) +} + +.yellow-btn { + @include colorBtn($yellow) +} + +.pan-btn { + font-size: 14px; + color: #fff; + padding: 14px 36px; + border-radius: 8px; + border: none; + outline: none; + transition: 600ms ease all; + position: relative; + display: inline-block; + + &:hover { + background: #fff; + + &:before, + &:after { + width: 100%; + transition: 600ms ease all; + } + } + + &:before, + &:after { + content: ''; + position: absolute; + top: 0; + right: 0; + height: 2px; + width: 0; + transition: 400ms ease all; + } + + &::after { + right: inherit; + top: inherit; + left: 0; + bottom: 0; + } +} + +.custom-button { + display: inline-block; + line-height: 1; + white-space: nowrap; + cursor: pointer; + background: #fff; + color: #fff; + -webkit-appearance: none; + text-align: center; + box-sizing: border-box; + outline: 0; + margin: 0; + padding: 10px 15px; + font-size: 14px; + border-radius: 4px; +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/data.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/data.scss new file mode 100644 index 00000000..5612ab8a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/data.scss @@ -0,0 +1,1174 @@ +/*! + * Quill Editor v1.3.7 + * https://quilljs.com/ + * Copyright (c) 2014, Jason Chen + * Copyright (c) 2013, salesforce.com + */ +.ql-container { + box-sizing: border-box; + font-family: Helvetica, Arial, sans-serif; + font-size: 13px; + height: 100%; + margin: 0px; + position: relative; +} + +.ql-container.ql-disabled .ql-tooltip { + visibility: hidden; +} + +.ql-container.ql-disabled .ql-editor ul[data-checked]>li::before { + pointer-events: none; +} + +.ql-clipboard { + left: -100000px; + height: 1px; + overflow-y: hidden; + position: absolute; + top: 50%; +} + +.ql-clipboard p { + margin: 0; + padding: 0; +} + +.ql-editor { + box-sizing: border-box; + line-height: 1.42; + height: 100%; + outline: none; + overflow-y: auto; + padding: 12px 15px; + tab-size: 4; + -moz-tab-size: 4; + text-align: left; + white-space: pre-wrap; + word-wrap: break-word; +} + +.ql-editor>* { + cursor: text; +} + +.ql-editor p, +.ql-editor ol, +.ql-editor ul, +.ql-editor pre, +.ql-editor blockquote, +.ql-editor h1, +.ql-editor h2, +.ql-editor h3, +.ql-editor h4, +.ql-editor h5, +.ql-editor h6 { + margin: 0; + padding: 0; + counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9; +} + +.ql-editor ol, +.ql-editor ul { + padding-left: 1.5em; +} + +.ql-editor ol>li, +.ql-editor ul>li { + list-style-type: none; +} + +.ql-editor ul>li::before { + content: '\2022'; +} + +.ql-editor ul[data-checked=true], +.ql-editor ul[data-checked=false] { + pointer-events: none; +} + +.ql-editor ul[data-checked=true]>li *, +.ql-editor ul[data-checked=false]>li * { + pointer-events: all; +} + +.ql-editor ul[data-checked=true]>li::before, +.ql-editor ul[data-checked=false]>li::before { + color: #777; + cursor: pointer; + pointer-events: all; +} + +.ql-editor ul[data-checked=true]>li::before { + content: '\2611'; +} + +.ql-editor ul[data-checked=false]>li::before { + content: '\2610'; +} + +.ql-editor li::before { + display: inline-block; + white-space: nowrap; + width: 1.2em; +} + +.ql-editor li:not(.ql-direction-rtl)::before { + margin-left: -1.5em; + margin-right: 0.3em; + text-align: right; +} + +.ql-editor li.ql-direction-rtl::before { + margin-left: 0.3em; + margin-right: -1.5em; +} + +.ql-editor ol li:not(.ql-direction-rtl), +.ql-editor ul li:not(.ql-direction-rtl) { + padding-left: 1.5em; +} + +.ql-editor ol li.ql-direction-rtl, +.ql-editor ul li.ql-direction-rtl { + padding-right: 1.5em; +} + +.ql-editor ol li { + counter-reset: list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9; + counter-increment: list-0; +} + +.ql-editor ol li:before { + content: counter(list-0, decimal) '. '; +} + +.ql-editor ol li.ql-indent-1 { + counter-increment: list-1; +} + +.ql-editor ol li.ql-indent-1:before { + content: counter(list-1, lower-alpha) '. '; +} + +.ql-editor ol li.ql-indent-1 { + counter-reset: list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9; +} + +.ql-editor ol li.ql-indent-2 { + counter-increment: list-2; +} + +.ql-editor ol li.ql-indent-2:before { + content: counter(list-2, lower-roman) '. '; +} + +.ql-editor ol li.ql-indent-2 { + counter-reset: list-3 list-4 list-5 list-6 list-7 list-8 list-9; +} + +.ql-editor ol li.ql-indent-3 { + counter-increment: list-3; +} + +.ql-editor ol li.ql-indent-3:before { + content: counter(list-3, decimal) '. '; +} + +.ql-editor ol li.ql-indent-3 { + counter-reset: list-4 list-5 list-6 list-7 list-8 list-9; +} + +.ql-editor ol li.ql-indent-4 { + counter-increment: list-4; +} + +.ql-editor ol li.ql-indent-4:before { + content: counter(list-4, lower-alpha) '. '; +} + +.ql-editor ol li.ql-indent-4 { + counter-reset: list-5 list-6 list-7 list-8 list-9; +} + +.ql-editor ol li.ql-indent-5 { + counter-increment: list-5; +} + +.ql-editor ol li.ql-indent-5:before { + content: counter(list-5, lower-roman) '. '; +} + +.ql-editor ol li.ql-indent-5 { + counter-reset: list-6 list-7 list-8 list-9; +} + +.ql-editor ol li.ql-indent-6 { + counter-increment: list-6; +} + +.ql-editor ol li.ql-indent-6:before { + content: counter(list-6, decimal) '. '; +} + +.ql-editor ol li.ql-indent-6 { + counter-reset: list-7 list-8 list-9; +} + +.ql-editor ol li.ql-indent-7 { + counter-increment: list-7; +} + +.ql-editor ol li.ql-indent-7:before { + content: counter(list-7, lower-alpha) '. '; +} + +.ql-editor ol li.ql-indent-7 { + counter-reset: list-8 list-9; +} + +.ql-editor ol li.ql-indent-8 { + counter-increment: list-8; +} + +.ql-editor ol li.ql-indent-8:before { + content: counter(list-8, lower-roman) '. '; +} + +.ql-editor ol li.ql-indent-8 { + counter-reset: list-9; +} + +.ql-editor ol li.ql-indent-9 { + counter-increment: list-9; +} + +.ql-editor ol li.ql-indent-9:before { + content: counter(list-9, decimal) '. '; +} + +.ql-editor .ql-indent-1:not(.ql-direction-rtl) { + padding-left: 3em; +} + +.ql-editor li.ql-indent-1:not(.ql-direction-rtl) { + padding-left: 4.5em; +} + +.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right { + padding-right: 3em; +} + +.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right { + padding-right: 4.5em; +} + +.ql-editor .ql-indent-2:not(.ql-direction-rtl) { + padding-left: 6em; +} + +.ql-editor li.ql-indent-2:not(.ql-direction-rtl) { + padding-left: 7.5em; +} + +.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right { + padding-right: 6em; +} + +.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right { + padding-right: 7.5em; +} + +.ql-editor .ql-indent-3:not(.ql-direction-rtl) { + padding-left: 9em; +} + +.ql-editor li.ql-indent-3:not(.ql-direction-rtl) { + padding-left: 10.5em; +} + +.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right { + padding-right: 9em; +} + +.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right { + padding-right: 10.5em; +} + +.ql-editor .ql-indent-4:not(.ql-direction-rtl) { + padding-left: 12em; +} + +.ql-editor li.ql-indent-4:not(.ql-direction-rtl) { + padding-left: 13.5em; +} + +.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right { + padding-right: 12em; +} + +.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right { + padding-right: 13.5em; +} + +.ql-editor .ql-indent-5:not(.ql-direction-rtl) { + padding-left: 15em; +} + +.ql-editor li.ql-indent-5:not(.ql-direction-rtl) { + padding-left: 16.5em; +} + +.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right { + padding-right: 15em; +} + +.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right { + padding-right: 16.5em; +} + +.ql-editor .ql-indent-6:not(.ql-direction-rtl) { + padding-left: 18em; +} + +.ql-editor li.ql-indent-6:not(.ql-direction-rtl) { + padding-left: 19.5em; +} + +.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right { + padding-right: 18em; +} + +.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right { + padding-right: 19.5em; +} + +.ql-editor .ql-indent-7:not(.ql-direction-rtl) { + padding-left: 21em; +} + +.ql-editor li.ql-indent-7:not(.ql-direction-rtl) { + padding-left: 22.5em; +} + +.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right { + padding-right: 21em; +} + +.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right { + padding-right: 22.5em; +} + +.ql-editor .ql-indent-8:not(.ql-direction-rtl) { + padding-left: 24em; +} + +.ql-editor li.ql-indent-8:not(.ql-direction-rtl) { + padding-left: 25.5em; +} + +.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right { + padding-right: 24em; +} + +.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right { + padding-right: 25.5em; +} + +.ql-editor .ql-indent-9:not(.ql-direction-rtl) { + padding-left: 27em; +} + +.ql-editor li.ql-indent-9:not(.ql-direction-rtl) { + padding-left: 28.5em; +} + +.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right { + padding-right: 27em; +} + +.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right { + padding-right: 28.5em; +} + +.ql-editor .ql-video { + display: block; + max-width: 100%; +} + +.ql-editor .ql-video.ql-align-center { + margin: 0 auto; +} + +.ql-editor .ql-video.ql-align-right { + margin: 0 0 0 auto; +} + +.ql-editor .ql-bg-black { + background-color: #000; +} + +.ql-editor .ql-bg-red { + background-color: #e60000; +} + +.ql-editor .ql-bg-orange { + background-color: #f90; +} + +.ql-editor .ql-bg-yellow { + background-color: #ff0; +} + +.ql-editor .ql-bg-green { + background-color: #008a00; +} + +.ql-editor .ql-bg-blue { + background-color: #06c; +} + +.ql-editor .ql-bg-purple { + background-color: #93f; +} + +.ql-editor .ql-color-white { + color: #fff; +} + +.ql-editor .ql-color-red { + color: #e60000; +} + +.ql-editor .ql-color-orange { + color: #f90; +} + +.ql-editor .ql-color-yellow { + color: #ff0; +} + +.ql-editor .ql-color-green { + color: #008a00; +} + +.ql-editor .ql-color-blue { + color: #06c; +} + +.ql-editor .ql-color-purple { + color: #93f; +} + +.ql-editor .ql-font-serif { + font-family: Georgia, Times New Roman, serif; +} + +.ql-editor .ql-font-monospace { + font-family: Monaco, Courier New, monospace; +} + +.ql-editor .ql-size-small { + font-size: 0.75em; +} + +.ql-editor .ql-size-large { + font-size: 1.5em; +} + +.ql-editor .ql-size-huge { + font-size: 2.5em; +} + +.ql-editor .ql-direction-rtl { + direction: rtl; + text-align: inherit; +} + +.ql-editor .ql-align-center { + text-align: center; +} + +.ql-editor .ql-align-justify { + text-align: justify; +} + +.ql-editor .ql-align-right { + text-align: right; +} + +.ql-editor.ql-blank::before { + color: rgba(0, 0, 0, 0.6); + content: attr(data-placeholder); + font-style: italic; + left: 15px; + pointer-events: none; + position: absolute; + right: 15px; +} + +.ql-bubble.ql-toolbar:after, +.ql-bubble .ql-toolbar:after { + clear: both; + content: ''; + display: table; +} + +.ql-bubble.ql-toolbar button, +.ql-bubble .ql-toolbar button { + background: none; + border: none; + cursor: pointer; + display: inline-block; + float: left; + height: 24px; + padding: 3px 5px; + width: 28px; +} + +.ql-bubble.ql-toolbar button svg, +.ql-bubble .ql-toolbar button svg { + float: left; + height: 100%; +} + +.ql-bubble.ql-toolbar button:active:hover, +.ql-bubble .ql-toolbar button:active:hover { + outline: none; +} + +.ql-bubble.ql-toolbar input.ql-image[type=file], +.ql-bubble .ql-toolbar input.ql-image[type=file] { + display: none; +} + +.ql-bubble.ql-toolbar button:hover, +.ql-bubble .ql-toolbar button:hover, +.ql-bubble.ql-toolbar button:focus, +.ql-bubble .ql-toolbar button:focus, +.ql-bubble.ql-toolbar button.ql-active, +.ql-bubble .ql-toolbar button.ql-active, +.ql-bubble.ql-toolbar .ql-picker-label:hover, +.ql-bubble .ql-toolbar .ql-picker-label:hover, +.ql-bubble.ql-toolbar .ql-picker-label.ql-active, +.ql-bubble .ql-toolbar .ql-picker-label.ql-active, +.ql-bubble.ql-toolbar .ql-picker-item:hover, +.ql-bubble .ql-toolbar .ql-picker-item:hover, +.ql-bubble.ql-toolbar .ql-picker-item.ql-selected, +.ql-bubble .ql-toolbar .ql-picker-item.ql-selected { + color: #fff; +} + +.ql-bubble.ql-toolbar button:hover .ql-fill, +.ql-bubble .ql-toolbar button:hover .ql-fill, +.ql-bubble.ql-toolbar button:focus .ql-fill, +.ql-bubble .ql-toolbar button:focus .ql-fill, +.ql-bubble.ql-toolbar button.ql-active .ql-fill, +.ql-bubble .ql-toolbar button.ql-active .ql-fill, +.ql-bubble.ql-toolbar .ql-picker-label:hover .ql-fill, +.ql-bubble .ql-toolbar .ql-picker-label:hover .ql-fill, +.ql-bubble.ql-toolbar .ql-picker-label.ql-active .ql-fill, +.ql-bubble .ql-toolbar .ql-picker-label.ql-active .ql-fill, +.ql-bubble.ql-toolbar .ql-picker-item:hover .ql-fill, +.ql-bubble .ql-toolbar .ql-picker-item:hover .ql-fill, +.ql-bubble.ql-toolbar .ql-picker-item.ql-selected .ql-fill, +.ql-bubble .ql-toolbar .ql-picker-item.ql-selected .ql-fill, +.ql-bubble.ql-toolbar button:hover .ql-stroke.ql-fill, +.ql-bubble .ql-toolbar button:hover .ql-stroke.ql-fill, +.ql-bubble.ql-toolbar button:focus .ql-stroke.ql-fill, +.ql-bubble .ql-toolbar button:focus .ql-stroke.ql-fill, +.ql-bubble.ql-toolbar button.ql-active .ql-stroke.ql-fill, +.ql-bubble .ql-toolbar button.ql-active .ql-stroke.ql-fill, +.ql-bubble.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill, +.ql-bubble .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill, +.ql-bubble.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill, +.ql-bubble .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill, +.ql-bubble.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill, +.ql-bubble .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill, +.ql-bubble.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill, +.ql-bubble .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill { + fill: #fff; +} + +.ql-bubble.ql-toolbar button:hover .ql-stroke, +.ql-bubble .ql-toolbar button:hover .ql-stroke, +.ql-bubble.ql-toolbar button:focus .ql-stroke, +.ql-bubble .ql-toolbar button:focus .ql-stroke, +.ql-bubble.ql-toolbar button.ql-active .ql-stroke, +.ql-bubble .ql-toolbar button.ql-active .ql-stroke, +.ql-bubble.ql-toolbar .ql-picker-label:hover .ql-stroke, +.ql-bubble .ql-toolbar .ql-picker-label:hover .ql-stroke, +.ql-bubble.ql-toolbar .ql-picker-label.ql-active .ql-stroke, +.ql-bubble .ql-toolbar .ql-picker-label.ql-active .ql-stroke, +.ql-bubble.ql-toolbar .ql-picker-item:hover .ql-stroke, +.ql-bubble .ql-toolbar .ql-picker-item:hover .ql-stroke, +.ql-bubble.ql-toolbar .ql-picker-item.ql-selected .ql-stroke, +.ql-bubble .ql-toolbar .ql-picker-item.ql-selected .ql-stroke, +.ql-bubble.ql-toolbar button:hover .ql-stroke-miter, +.ql-bubble .ql-toolbar button:hover .ql-stroke-miter, +.ql-bubble.ql-toolbar button:focus .ql-stroke-miter, +.ql-bubble .ql-toolbar button:focus .ql-stroke-miter, +.ql-bubble.ql-toolbar button.ql-active .ql-stroke-miter, +.ql-bubble .ql-toolbar button.ql-active .ql-stroke-miter, +.ql-bubble.ql-toolbar .ql-picker-label:hover .ql-stroke-miter, +.ql-bubble .ql-toolbar .ql-picker-label:hover .ql-stroke-miter, +.ql-bubble.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter, +.ql-bubble .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter, +.ql-bubble.ql-toolbar .ql-picker-item:hover .ql-stroke-miter, +.ql-bubble .ql-toolbar .ql-picker-item:hover .ql-stroke-miter, +.ql-bubble.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter, +.ql-bubble .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter { + stroke: #fff; +} + +@media (pointer: coarse) { + + .ql-bubble.ql-toolbar button:hover:not(.ql-active), + .ql-bubble .ql-toolbar button:hover:not(.ql-active) { + color: #ccc; + } + + .ql-bubble.ql-toolbar button:hover:not(.ql-active) .ql-fill, + .ql-bubble .ql-toolbar button:hover:not(.ql-active) .ql-fill, + .ql-bubble.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill, + .ql-bubble .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill { + fill: #ccc; + } + + .ql-bubble.ql-toolbar button:hover:not(.ql-active) .ql-stroke, + .ql-bubble .ql-toolbar button:hover:not(.ql-active) .ql-stroke, + .ql-bubble.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter, + .ql-bubble .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter { + stroke: #ccc; + } +} + +.ql-bubble { + box-sizing: border-box; +} + +.ql-bubble * { + box-sizing: border-box; +} + +.ql-bubble .ql-hidden { + display: none; +} + +.ql-bubble .ql-out-bottom, +.ql-bubble .ql-out-top { + visibility: hidden; +} + +.ql-bubble .ql-tooltip { + position: absolute; + transform: translateY(10px); +} + +.ql-bubble .ql-tooltip a { + cursor: pointer; + text-decoration: none; +} + +.ql-bubble .ql-tooltip.ql-flip { + transform: translateY(-10px); +} + +.ql-bubble .ql-formats { + display: inline-block; + vertical-align: middle; +} + +.ql-bubble .ql-formats:after { + clear: both; + content: ''; + display: table; +} + +.ql-bubble .ql-stroke { + fill: none; + stroke: #ccc; + stroke-linecap: round; + stroke-linejoin: round; + stroke-width: 2; +} + +.ql-bubble .ql-stroke-miter { + fill: none; + stroke: #ccc; + stroke-miterlimit: 10; + stroke-width: 2; +} + +.ql-bubble .ql-fill, +.ql-bubble .ql-stroke.ql-fill { + fill: #ccc; +} + +.ql-bubble .ql-empty { + fill: none; +} + +.ql-bubble .ql-even { + fill-rule: evenodd; +} + +.ql-bubble .ql-thin, +.ql-bubble .ql-stroke.ql-thin { + stroke-width: 1; +} + +.ql-bubble .ql-transparent { + opacity: 0.4; +} + +.ql-bubble .ql-direction svg:last-child { + display: none; +} + +.ql-bubble .ql-direction.ql-active svg:last-child { + display: inline; +} + +.ql-bubble .ql-direction.ql-active svg:first-child { + display: none; +} + +.ql-bubble .ql-editor h1 { + font-size: 2em; +} + +.ql-bubble .ql-editor h2 { + font-size: 1.5em; +} + +.ql-bubble .ql-editor h3 { + font-size: 1.17em; +} + +.ql-bubble .ql-editor h4 { + font-size: 1em; +} + +.ql-bubble .ql-editor h5 { + font-size: 0.83em; +} + +.ql-bubble .ql-editor h6 { + font-size: 0.67em; +} + +.ql-bubble .ql-editor a { + text-decoration: underline; +} + +.ql-bubble .ql-editor blockquote { + border-left: 4px solid #ccc; + margin-bottom: 5px; + margin-top: 5px; + padding-left: 16px; +} + +.ql-bubble .ql-editor code, +.ql-bubble .ql-editor pre { + background-color: #f0f0f0; + border-radius: 3px; +} + +.ql-bubble .ql-editor pre { + white-space: pre-wrap; + margin-bottom: 5px; + margin-top: 5px; + padding: 5px 10px; +} + +.ql-bubble .ql-editor code { + font-size: 85%; + padding: 2px 4px; +} + +.ql-bubble .ql-editor pre.ql-syntax { + background-color: #23241f; + color: #f8f8f2; + overflow: visible; +} + +.ql-bubble .ql-editor img { + max-width: 100%; +} + +.ql-bubble .ql-picker { + color: #ccc; + display: inline-block; + float: left; + font-size: 14px; + font-weight: 500; + height: 24px; + position: relative; + vertical-align: middle; +} + +.ql-bubble .ql-picker-label { + cursor: pointer; + display: inline-block; + height: 100%; + padding-left: 8px; + padding-right: 2px; + position: relative; + width: 100%; +} + +.ql-bubble .ql-picker-label::before { + display: inline-block; + line-height: 22px; +} + +.ql-bubble .ql-picker-options { + background-color: #444; + display: none; + min-width: 100%; + padding: 4px 8px; + position: absolute; + white-space: nowrap; +} + +.ql-bubble .ql-picker-options .ql-picker-item { + cursor: pointer; + display: block; + padding-bottom: 5px; + padding-top: 5px; +} + +.ql-bubble .ql-picker.ql-expanded .ql-picker-label { + color: #777; + z-index: 2; +} + +.ql-bubble .ql-picker.ql-expanded .ql-picker-label .ql-fill { + fill: #777; +} + +.ql-bubble .ql-picker.ql-expanded .ql-picker-label .ql-stroke { + stroke: #777; +} + +.ql-bubble .ql-picker.ql-expanded .ql-picker-options { + display: block; + margin-top: -1px; + top: 100%; + z-index: 1; +} + +.ql-bubble .ql-color-picker, +.ql-bubble .ql-icon-picker { + width: 28px; +} + +.ql-bubble .ql-color-picker .ql-picker-label, +.ql-bubble .ql-icon-picker .ql-picker-label { + padding: 2px 4px; +} + +.ql-bubble .ql-color-picker .ql-picker-label svg, +.ql-bubble .ql-icon-picker .ql-picker-label svg { + right: 4px; +} + +.ql-bubble .ql-icon-picker .ql-picker-options { + padding: 4px 0px; +} + +.ql-bubble .ql-icon-picker .ql-picker-item { + height: 24px; + width: 24px; + padding: 2px 4px; +} + +.ql-bubble .ql-color-picker .ql-picker-options { + padding: 3px 5px; + width: 152px; +} + +.ql-bubble .ql-color-picker .ql-picker-item { + border: 1px solid transparent; + float: left; + height: 16px; + margin: 2px; + padding: 0px; + width: 16px; +} + +.ql-bubble .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg { + position: absolute; + margin-top: -9px; + right: 0; + top: 50%; + width: 18px; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=''])::before, +.ql-bubble .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=''])::before, +.ql-bubble .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=''])::before, +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=''])::before, +.ql-bubble .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=''])::before, +.ql-bubble .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=''])::before { + content: attr(data-label); +} + +.ql-bubble .ql-picker.ql-header { + width: 98px; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-label::before, +.ql-bubble .ql-picker.ql-header .ql-picker-item::before { + content: 'Normal'; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="1"]::before, +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="1"]::before { + content: 'Heading 1'; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="2"]::before, +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="2"]::before { + content: 'Heading 2'; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="3"]::before, +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="3"]::before { + content: 'Heading 3'; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="4"]::before, +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="4"]::before { + content: 'Heading 4'; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="5"]::before, +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="5"]::before { + content: 'Heading 5'; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-label[data-value="6"]::before, +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="6"]::before { + content: 'Heading 6'; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="1"]::before { + font-size: 2em; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="2"]::before { + font-size: 1.5em; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="3"]::before { + font-size: 1.17em; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="4"]::before { + font-size: 1em; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="5"]::before { + font-size: 0.83em; +} + +.ql-bubble .ql-picker.ql-header .ql-picker-item[data-value="6"]::before { + font-size: 0.67em; +} + +.ql-bubble .ql-picker.ql-font { + width: 108px; +} + +.ql-bubble .ql-picker.ql-font .ql-picker-label::before, +.ql-bubble .ql-picker.ql-font .ql-picker-item::before { + content: 'Sans Serif'; +} + +.ql-bubble .ql-picker.ql-font .ql-picker-label[data-value=serif]::before, +.ql-bubble .ql-picker.ql-font .ql-picker-item[data-value=serif]::before { + content: 'Serif'; +} + +.ql-bubble .ql-picker.ql-font .ql-picker-label[data-value=monospace]::before, +.ql-bubble .ql-picker.ql-font .ql-picker-item[data-value=monospace]::before { + content: 'Monospace'; +} + +.ql-bubble .ql-picker.ql-font .ql-picker-item[data-value=serif]::before { + font-family: Georgia, Times New Roman, serif; +} + +.ql-bubble .ql-picker.ql-font .ql-picker-item[data-value=monospace]::before { + font-family: Monaco, Courier New, monospace; +} + +.ql-bubble .ql-picker.ql-size { + width: 98px; +} + +.ql-bubble .ql-picker.ql-size .ql-picker-label::before, +.ql-bubble .ql-picker.ql-size .ql-picker-item::before { + content: 'Normal'; +} + +.ql-bubble .ql-picker.ql-size .ql-picker-label[data-value=small]::before, +.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=small]::before { + content: 'Small'; +} + +.ql-bubble .ql-picker.ql-size .ql-picker-label[data-value=large]::before, +.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=large]::before { + content: 'Large'; +} + +.ql-bubble .ql-picker.ql-size .ql-picker-label[data-value=huge]::before, +.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=huge]::before { + content: 'Huge'; +} + +.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=small]::before { + font-size: 10px; +} + +.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=large]::before { + font-size: 18px; +} + +.ql-bubble .ql-picker.ql-size .ql-picker-item[data-value=huge]::before { + font-size: 32px; +} + +.ql-bubble .ql-color-picker.ql-background .ql-picker-item { + background-color: #fff; +} + +.ql-bubble .ql-color-picker.ql-color .ql-picker-item { + background-color: #000; +} + +.ql-bubble .ql-toolbar .ql-formats { + margin: 8px 12px 8px 0px; +} + +.ql-bubble .ql-toolbar .ql-formats:first-child { + margin-left: 12px; +} + +.ql-bubble .ql-color-picker svg { + margin: 1px; +} + +.ql-bubble .ql-color-picker .ql-picker-item.ql-selected, +.ql-bubble .ql-color-picker .ql-picker-item:hover { + border-color: #fff; +} + +.ql-bubble .ql-tooltip { + background-color: #444; + border-radius: 25px; + color: #fff; +} + +.ql-bubble .ql-tooltip-arrow { + border-left: 6px solid transparent; + border-right: 6px solid transparent; + content: " "; + display: block; + left: 50%; + margin-left: -6px; + position: absolute; +} + +.ql-bubble .ql-tooltip:not(.ql-flip) .ql-tooltip-arrow { + border-bottom: 6px solid #444; + top: -6px; +} + +.ql-bubble .ql-tooltip.ql-flip .ql-tooltip-arrow { + border-top: 6px solid #444; + bottom: -6px; +} + +.ql-bubble .ql-tooltip.ql-editing .ql-tooltip-editor { + display: block; +} + +.ql-bubble .ql-tooltip.ql-editing .ql-formats { + visibility: hidden; +} + +.ql-bubble .ql-tooltip-editor { + display: none; +} + +.ql-bubble .ql-tooltip-editor input[type=text] { + background: transparent; + border: none; + color: #fff; + font-size: 13px; + height: 100%; + outline: none; + padding: 10px 20px; + position: absolute; + width: 100%; +} + +.ql-bubble .ql-tooltip-editor a { + top: 10px; + position: absolute; + right: 20px; +} + +.ql-bubble .ql-tooltip-editor a:before { + color: #ccc; + content: "\D7"; + font-size: 16px; + font-weight: bold; +} + +.ql-container.ql-bubble:not(.ql-disabled) a { + position: relative; + white-space: nowrap; +} + +.ql-container.ql-bubble:not(.ql-disabled) a::before { + background-color: #444; + border-radius: 15px; + top: -5px; + font-size: 12px; + color: #fff; + content: attr(href); + font-weight: normal; + overflow: hidden; + padding: 5px 15px; + text-decoration: none; + z-index: 1; +} + +.ql-container.ql-bubble:not(.ql-disabled) a::after { + border-top: 6px solid #444; + border-left: 6px solid transparent; + border-right: 6px solid transparent; + top: 0; + content: " "; + height: 0; + width: 0; +} + +.ql-container.ql-bubble:not(.ql-disabled) a::before, +.ql-container.ql-bubble:not(.ql-disabled) a::after { + left: 0; + margin-left: 50%; + position: absolute; + transform: translate(-50%, -100%); + transition: visibility 0s ease 200ms; + visibility: hidden; +} + +.ql-container.ql-bubble:not(.ql-disabled) a:hover::before, +.ql-container.ql-bubble:not(.ql-disabled) a:hover::after { + visibility: visible; +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/element-ui.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/element-ui.scss new file mode 100644 index 00000000..bd09cfc6 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/element-ui.scss @@ -0,0 +1,112 @@ +// cover some element-ui styles + +.el-breadcrumb__inner, +.el-breadcrumb__inner a { + font-weight: 400 !important; +} + +.el-upload { + input[type="file"] { + display: none !important; + } +} + +.el-upload__input { + display: none; +} + +.cell { + .el-tag { + margin-right: 0px; + } +} + +.small-padding { + .cell { + padding-left: 5px; + padding-right: 5px; + } +} + +.fixed-width { + .el-button--mini { + padding: 7px 10px; + width: 60px; + } +} + +.status-col { + .cell { + padding: 0 10px; + text-align: center; + + .el-tag { + margin-right: 0px; + } + } +} + +// to fixed https://github.com/ElemeFE/element/issues/2461 +.el-dialog { + transform: none; + left: 0; + position: relative; + margin: 0 auto; + border-radius: 10px; + + .el-dialog__header { + padding: 0; + text-align: center; + background: #F0F2F5; + border-radius: 10px 10px 0 0; + + .el-dialog__title { + line-height: 64px; + font-size: 24px; + color: #333333; + + } + + .el-dialog__headerbtn { + font-size: 24px; + font-weight: 600; + } + } + + .el-dialog__footer { + text-align: center; + } +} + +// refine element ui upload +.upload-container { + .el-upload { + width: 100%; + + .el-upload-dragger { + width: 100%; + height: 200px; + } + } +} + +// dropdown +.el-dropdown-menu { + a { + display: block + } +} + +// fix date-picker ui bug in filter-item +.el-range-editor.el-input__inner { + display: inline-flex !important; +} + +// to fix el-date-picker css style +.el-range-separator { + box-sizing: content-box; +} + +.el-menu--collapse>div>.el-submenu>.el-submenu__title .el-submenu__icon-arrow { + display: none; +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/element-variables.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/element-variables.scss new file mode 100644 index 00000000..1615ff28 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/element-variables.scss @@ -0,0 +1,31 @@ +/** +* I think element-ui's default theme color is too light for long-term use. +* So I modified the default color and you can modify it to your liking. +**/ + +/* theme color */ +$--color-primary: #1890ff; +$--color-success: #13ce66; +$--color-warning: #ffba00; +$--color-danger: #ff4949; +// $--color-info: #1E1E1E; + +$--button-font-weight: 400; + +// $--color-text-regular: #1f2d3d; + +$--border-color-light: #dfe4ed; +$--border-color-lighter: #e6ebf5; + +$--table-border: 1px solid #dfe6ec; + +/* icon font path, required */ +$--font-path: '~element-ui/lib/theme-chalk/fonts'; + +@import "~element-ui/packages/theme-chalk/src/index"; + +// the :export directive is the magic sauce for webpack +// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass +:export { + theme: $--color-primary; +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/index.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/index.scss new file mode 100644 index 00000000..96095ef6 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/index.scss @@ -0,0 +1,191 @@ +@import './variables.scss'; +@import './mixin.scss'; +@import './transition.scss'; +@import './element-ui.scss'; +@import './sidebar.scss'; +@import './btn.scss'; + +body { + height: 100%; + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + text-rendering: optimizeLegibility; + font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Arial, sans-serif; +} + +label { + font-weight: 700; +} + +html { + height: 100%; + box-sizing: border-box; +} + +#app { + height: 100%; +} + +*, +*:before, +*:after { + box-sizing: inherit; +} + +.no-padding { + padding: 0px !important; +} + +.padding-content { + padding: 4px 0; +} + +a:focus, +a:active { + outline: none; +} + +a, +a:focus, +a:hover { + cursor: pointer; + color: inherit; + text-decoration: none; +} + +div:focus { + outline: none; +} + +.fr { + float: right; +} + +.fl { + float: left; +} + +.pr-5 { + padding-right: 5px; +} + +.pl-5 { + padding-left: 5px; +} + +.block { + display: block; +} + +.pointer { + cursor: pointer; +} + +.inlineBlock { + display: block; +} + +.clearfix { + &:after { + visibility: hidden; + display: block; + font-size: 0; + content: " "; + clear: both; + height: 0; + } +} + +aside { + background: #eef1f6; + padding: 8px 24px; + margin-bottom: 20px; + border-radius: 2px; + display: block; + line-height: 32px; + font-size: 16px; + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif; + color: #2c3e50; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + + a { + color: #337ab7; + cursor: pointer; + + &:hover { + color: rgb(32, 160, 255); + } + } +} + +//main-container全局样式 +.app-container { + padding: 20px; +} + +.components-container { + margin: 30px 50px; + position: relative; +} + +.pagination-container { + margin-top: 30px; +} + +.text-center { + text-align: center +} + +.sub-navbar { + height: 50px; + line-height: 50px; + position: relative; + width: 100%; + text-align: right; + padding-right: 20px; + transition: 600ms ease position; + background: linear-gradient(90deg, rgba(32, 182, 249, 1) 0%, rgba(32, 182, 249, 1) 0%, rgba(33, 120, 241, 1) 100%, rgba(33, 120, 241, 1) 100%); + + .subtitle { + font-size: 20px; + color: #fff; + } + + &.draft { + background: #d0d0d0; + } + + &.deleted { + background: #d0d0d0; + } +} + +.link-type, +.link-type:focus { + color: #337ab7; + cursor: pointer; + + &:hover { + color: rgb(32, 160, 255); + } +} + +.filter-container { + padding-bottom: 10px; + + .filter-item { + display: inline-block; + vertical-align: middle; + margin-bottom: 10px; + } +} + +//refine vue-multiselect plugin +.multiselect { + line-height: 16px; +} + +.multiselect--active { + z-index: 1000 !important; +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/mixin.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/mixin.scss new file mode 100644 index 00000000..06fa0612 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/mixin.scss @@ -0,0 +1,66 @@ +@mixin clearfix { + &:after { + content: ""; + display: table; + clear: both; + } +} + +@mixin scrollBar { + &::-webkit-scrollbar-track-piece { + background: #d3dce6; + } + + &::-webkit-scrollbar { + width: 6px; + } + + &::-webkit-scrollbar-thumb { + background: #99a9bf; + border-radius: 20px; + } +} + +@mixin relative { + position: relative; + width: 100%; + height: 100%; +} + +@mixin pct($pct) { + width: #{$pct}; + position: relative; + margin: 0 auto; +} + +@mixin triangle($width, $height, $color, $direction) { + $width: $width/2; + $color-border-style: $height solid $color; + $transparent-border-style: $width solid transparent; + height: 0; + width: 0; + + @if $direction==up { + border-bottom: $color-border-style; + border-left: $transparent-border-style; + border-right: $transparent-border-style; + } + + @else if $direction==right { + border-left: $color-border-style; + border-top: $transparent-border-style; + border-bottom: $transparent-border-style; + } + + @else if $direction==down { + border-top: $color-border-style; + border-left: $transparent-border-style; + border-right: $transparent-border-style; + } + + @else if $direction==left { + border-right: $color-border-style; + border-top: $transparent-border-style; + border-bottom: $transparent-border-style; + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/ruoyi.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/ruoyi.scss new file mode 100644 index 00000000..c4917ea6 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/ruoyi.scss @@ -0,0 +1,334 @@ + /** + * 通用css样式布局处理 + * Copyright (c) 2019 ruoyi + */ + + /** 基础通用 **/ + .pt5 { + padding-top: 5px; + } + + .pr5 { + padding-right: 5px; + } + + .pb5 { + padding-bottom: 5px; + } + + .mt5 { + margin-top: 5px; + } + + .mr5 { + margin-right: 5px; + } + + .mb5 { + margin-bottom: 5px; + } + + .mb8 { + margin-bottom: 8px; + // -webkit-box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.12), 0 0 5px 0 rgba(0, 0, 0, 0.04); + // box-shadow: 0px 2px 5px 0 rgba(0, 0, 0, 0.12), 0 0 5px 0 rgba(0, 0, 0, 0.04); + padding: 10px 5px; + margin: 0 !important; + } + + .ml5 { + margin-left: 5px; + } + + .mt10 { + margin-top: 10px; + } + + .mr10 { + margin-right: 10px; + } + + .mb10 { + margin-bottom: 10px; + } + + .ml10 { + margin-left: 10px; + } + + .mt20 { + margin-top: 20px; + } + + .mr20 { + margin-right: 20px; + } + + .mb20 { + margin-bottom: 20px; + } + + .ml20 { + margin-left: 20px; + } + + .h1, + .h2, + .h3, + .h4, + .h5, + .h6, + h1, + h2, + h3, + h4, + h5, + h6 { + font-family: inherit; + font-weight: 500; + line-height: 1.1; + color: inherit; + } + + .el-dialog:not(.is-fullscreen) { + margin-top: 6vh !important; + } + + .el-dialog__wrapper.scrollbar .el-dialog .el-dialog__body { + overflow: auto; + overflow-x: hidden; + max-height: 70vh; + padding: 10px 20px 0; + } + + .el-table { + + .el-table__header-wrapper, + .el-table__fixed-header-wrapper { + th { + word-break: break-word; + background-color: #f8f8f9; + color: #515a6e; + height: 40px; + font-size: 13px; + } + } + + .el-table__body-wrapper { + .el-button [class*="el-icon-"]+span { + margin-left: 1px; + } + } + } + + /** 表单布局 **/ + .form-header { + font-size: 15px; + color: #6379bb; + border-bottom: 1px solid #ddd; + margin: 8px 10px 25px 10px; + padding-bottom: 5px + } + + /** 表格布局 **/ + .pagination-container { + position: relative; + height: 25px; + margin-bottom: 10px; + margin-top: 15px; + padding: 10px 20px !important; + } + + /* tree border */ + .tree-border { + margin-top: 5px; + border: 1px solid #e5e6e7; + background: #FFFFFF none; + border-radius: 4px; + } + + .pagination-container .el-pagination { + right: 0; + position: absolute; + } + + @media (max-width : 768px) { + .pagination-container .el-pagination>.el-pagination__jump { + display: none !important; + } + + .pagination-container .el-pagination>.el-pagination__sizes { + display: none !important; + } + } + + .el-table .fixed-width .el-button--mini { + padding-left: 0; + padding-right: 0; + width: inherit; + } + + /** 表格更多操作下拉样式 */ + .el-table .el-dropdown-link { + cursor: pointer; + color: #409EFF; + margin-left: 5px; + } + + .el-table .el-dropdown, + .el-icon-arrow-down { + font-size: 12px; + } + + .el-tree-node__content>.el-checkbox { + margin-right: 8px; + } + + .list-group-striped>.list-group-item { + border-left: 0; + border-right: 0; + border-radius: 0; + padding-left: 0; + padding-right: 0; + } + + .list-group { + padding-left: 0px; + list-style: none; + } + + .list-group-item { + border-bottom: 1px solid #e7eaec; + border-top: 1px solid #e7eaec; + margin-bottom: -1px; + padding: 11px 0px; + font-size: 13px; + } + + .pull-right { + float: right !important; + } + + .el-card__header { + padding: 14px 15px 7px; + min-height: 40px; + } + + .el-card__body { + padding: 15px 20px 20px 20px; + } + + .card-box { + padding-right: 15px; + padding-left: 15px; + margin-bottom: 10px; + } + + /* button color */ + .el-button--cyan.is-active, + .el-button--cyan:active { + background: #20B2AA; + border-color: #20B2AA; + color: #FFFFFF; + } + + .el-button--cyan:focus, + .el-button--cyan:hover { + background: #48D1CC; + border-color: #48D1CC; + color: #FFFFFF; + } + + .el-button--cyan { + background-color: #20B2AA; + border-color: #20B2AA; + color: #FFFFFF; + } + + /* text color */ + .text-navy { + color: #1ab394; + } + + .text-primary { + color: inherit; + } + + .text-success { + color: #1c84c6; + } + + .text-info { + color: #23c6c8; + } + + .text-warning { + color: #f8ac59; + } + + .text-danger { + color: #ed5565; + } + + .text-muted { + color: #888888; + } + + /* image */ + .img-circle { + border-radius: 50%; + } + + .img-lg { + width: 120px; + height: 120px; + } + + .avatar-upload-preview { + position: absolute; + top: 50%; + transform: translate(50%, -50%); + width: 200px; + height: 200px; + border-radius: 50%; + box-shadow: 0 0 4px #ccc; + overflow: hidden; + } + + /* 拖拽列样式 */ + .sortable-ghost { + opacity: .8; + color: #fff !important; + background: #42b983 !important; + } + + .top-right-btn { + position: relative; + float: right; + } + + + +.el-table__row .el-button.el-button--text:hover { + color: #5153B3; +} + +.el-input.is-disabled .el-input__inner,.el-textarea.is-disabled .el-textarea__inner { + color: #7c7c7c; +} + +.el-input__inner::placeholder, .el-textarea__inner::placeholder, .el-date-editor .el-range-input::placeholder { + color: #939393 !important; +} + + +.el-upload, .el-upload-dragger{ + width: 100%; +} + +.customClass-Loading .el-icon-loading{ + font-size: 40px; +} +.customClass-Loading .el-loading-text{ + font-size: 30px; +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/sidebar.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/sidebar.scss new file mode 100644 index 00000000..02c8a5b3 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/sidebar.scss @@ -0,0 +1,250 @@ +#app { + + .main-container { + min-height: calc(100% - 90px); + transition: margin-left .28s; + margin-left: $base-sidebar-width; + position: relative; + background: #FBFBFB; + padding:15px 25px; + } + + .sidebarHide { + margin-left: 0!important; + } + + .sidebar-container { + -webkit-transition: width .28s; + transition: width 0.28s; + width: $base-sidebar-width !important; + background-color: $base-menu-background; + height: 100%; + position: absolute; + font-size: 0px; + top: 0; + bottom: 0; + left: 0; + z-index: 1001; + overflow: hidden; + -webkit-box-shadow: 2px 0 6px rgba(0,21,41,.35); + box-shadow: 2px 0 6px rgba(0,21,41,.35); + + // reset element-ui css + .horizontal-collapse-transition { + transition: 0s width ease-in-out, 0s padding-left ease-in-out, 0s padding-right ease-in-out; + } + + .scrollbar-wrapper { + overflow-x: hidden !important; + } + + .el-scrollbar__bar.is-vertical { + right: 0px; + } + + .el-scrollbar { + height: 100%; + } + + &.has-logo { + .el-scrollbar { + height: calc(100% - 50px); + } + } + + .is-horizontal { + display: none; + } + + a { + display: inline-block; + width: 100%; + overflow: hidden; + } + + .svg-icon { + margin-right: 16px; + } + + .el-menu { + border: none; + height: 100%; + width: 100% !important; + } + + .el-menu-item, .el-submenu__title { + overflow: hidden !important; + text-overflow: ellipsis !important; + white-space: nowrap !important; + } + + // menu hover + .submenu-title-noDropdown, + .el-submenu__title { + &:hover { + background-color: rgba(0, 0, 0, 0.06) !important; + } + } + + & .theme-dark .is-active > .el-submenu__title { + color: $base-menu-color-active !important; + } + + & .nest-menu .el-submenu>.el-submenu__title, + & .el-submenu .el-menu-item { + min-width: $base-sidebar-width !important; + + &:hover { + background-color: rgba(0, 0, 0, 0.06) !important; + } + } + + & .theme-dark .nest-menu .el-submenu>.el-submenu__title, + & .theme-dark .el-submenu .el-menu-item { + background-color: $base-sub-menu-background !important; + + &:hover { + background-color: $base-sub-menu-hover !important; + } + } + } + + .hideSidebar { + .sidebar-container { + width: 54px !important; + } + + .main-container { + margin-left: 54px; + } + + .submenu-title-noDropdown { + padding: 0 !important; + position: relative; + + .el-tooltip { + padding: 0 !important; + + .svg-icon { + margin-left: 20px; + } + } + } + + .el-submenu { + overflow: hidden; + + &>.el-submenu__title { + padding: 0 !important; + + .svg-icon { + margin-left: 20px; + } + + } + } + + .el-menu--collapse { + .el-submenu { + &>.el-submenu__title { + &>span { + height: 0; + width: 0; + overflow: hidden; + visibility: hidden; + display: inline-block; + } + } + } + } + } + + .el-menu--collapse .el-menu .el-submenu { + min-width: $base-sidebar-width !important; + } + .el-menu li.is-active>div.el-submenu__title{ + background-image: url(../images/libg.png); + background-size: contain; + background-repeat: no-repeat; + background-position: left; + background-color: #f2f2f2 !important; + font-weight: 600; + color: #409eff !important; + +} + .el-menu div.nest-menu li.is-active>div.el-submenu__title{ + background-image: none; + background-color: #f2f2f2 !important; + font-weight: 600; + color: rgb(64, 158, 255); + } + +.el-menu li.is-opened>ul>.nest-menu>a>li.is-active { + background-color: #3F8BFF !important; + font-weight: 600; + color: #fff !important; +} + // mobile responsive + .mobile { + .main-container { + margin-left: 0px; + } + + .sidebar-container { + transition: transform .28s; + width: $base-sidebar-width !important; + } + + &.hideSidebar { + .sidebar-container { + pointer-events: none; + transition-duration: 0.3s; + transform: translate3d(-$base-sidebar-width, 0, 0); + } + } + } + + .withoutAnimation { + + .main-container, + .sidebar-container { + transition: none; + } + } +} + +// when menu collapsed +.el-menu--vertical { + &>.el-menu { + .svg-icon { + margin-right: 16px; + } + } + + .nest-menu .el-submenu>.el-submenu__title, + .el-menu-item { + &:hover { + // you can use $subMenuHover + background-color: rgba(0, 0, 0, 0.06) !important; + } + } + + // the scroll bar appears when the subMenu is too long + >.el-menu--popup { + max-height: 100vh; + overflow-y: auto; + + &::-webkit-scrollbar-track-piece { + background: #d3dce6; + } + + &::-webkit-scrollbar { + width: 6px; + } + + &::-webkit-scrollbar-thumb { + background: #99a9bf; + border-radius: 20px; + } + } +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/transition.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/transition.scss new file mode 100644 index 00000000..4cb27cc8 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/transition.scss @@ -0,0 +1,48 @@ +// global transition css + +/* fade */ +.fade-enter-active, +.fade-leave-active { + transition: opacity 0.28s; +} + +.fade-enter, +.fade-leave-active { + opacity: 0; +} + +/* fade-transform */ +.fade-transform-leave-active, +.fade-transform-enter-active { + transition: all .5s; +} + +.fade-transform-enter { + opacity: 0; + transform: translateX(-30px); +} + +.fade-transform-leave-to { + opacity: 0; + transform: translateX(30px); +} + +/* breadcrumb transition */ +.breadcrumb-enter-active, +.breadcrumb-leave-active { + transition: all .5s; +} + +.breadcrumb-enter, +.breadcrumb-leave-active { + opacity: 0; + transform: translateX(20px); +} + +.breadcrumb-move { + transition: all .5s; +} + +.breadcrumb-leave-active { + position: absolute; +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/variables.scss b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/variables.scss new file mode 100644 index 00000000..da95f53c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/assets/styles/variables.scss @@ -0,0 +1,54 @@ +// base color +$blue:#324157; +$light-blue:#3A71A8; +$red:#C03639; +$pink: #E65D6E; +$green: #30B08F; +$tiffany: #4AB7BD; +$yellow:#FEC171; +$panGreen: #30B08F; + +// 默认菜单主题风格 +$base-menu-color:#bfcbd9; +$base-menu-color-active:#f2f2f5; +$base-menu-background:#304156; +$base-logo-title-color: #ffffff; + +$base-menu-light-color:rgba(0,0,0,.70); +$base-menu-light-background:#ffffff; +$base-logo-light-title-color: #001529; + +$base-sub-menu-background:#1f2d3d; +$base-sub-menu-hover:#001528; + +// 自定义暗色菜单风格 +/** +$base-menu-color:hsla(0,0%,100%,.65); +$base-menu-color-active:#fff; +$base-menu-background:#001529; +$base-logo-title-color: #ffffff; + +$base-menu-light-color:rgba(0,0,0,.70); +$base-menu-light-background:#ffffff; +$base-logo-light-title-color: #001529; + +$base-sub-menu-background:#000c17; +$base-sub-menu-hover:#001528; +*/ + +$base-sidebar-width: 200px; + +// the :export directive is the magic sauce for webpack +// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass +:export { + menuColor: $base-menu-color; + menuLightColor: $base-menu-light-color; + menuColorActive: $base-menu-color-active; + menuBackground: $base-menu-background; + menuLightBackground: $base-menu-light-background; + subMenuBackground: $base-sub-menu-background; + subMenuHover: $base-sub-menu-hover; + sideBarWidth: $base-sidebar-width; + logoTitleColor: $base-logo-title-color; + logoLightTitleColor: $base-logo-light-title-color +} diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Breadcrumb/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Breadcrumb/index.vue new file mode 100644 index 00000000..b34d9e81 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Breadcrumb/index.vue @@ -0,0 +1,92 @@ + + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/day.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/day.vue new file mode 100644 index 00000000..fe3eaf0c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/day.vue @@ -0,0 +1,161 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/hour.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/hour.vue new file mode 100644 index 00000000..4b1f1fcd --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/hour.vue @@ -0,0 +1,114 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/index.vue new file mode 100644 index 00000000..3963df28 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/index.vue @@ -0,0 +1,430 @@ + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/min.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/min.vue new file mode 100644 index 00000000..43cab900 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/min.vue @@ -0,0 +1,116 @@ + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/month.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/month.vue new file mode 100644 index 00000000..fd0ac384 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/month.vue @@ -0,0 +1,114 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/result.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/result.vue new file mode 100644 index 00000000..aea6e0e4 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/result.vue @@ -0,0 +1,559 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/second.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/second.vue new file mode 100644 index 00000000..e7b77617 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/second.vue @@ -0,0 +1,117 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/week.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/week.vue new file mode 100644 index 00000000..1cec700e --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/week.vue @@ -0,0 +1,202 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/year.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/year.vue new file mode 100644 index 00000000..5487a6c7 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Crontab/year.vue @@ -0,0 +1,131 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/DictData/index.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/DictData/index.js new file mode 100644 index 00000000..c2a0359c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/DictData/index.js @@ -0,0 +1,21 @@ +import Vue from 'vue' +import DataDict from '@/utils/dict' +import { getDicts as getDicts } from '@/api/system/dict/data' + +function install() { + Vue.use(DataDict, { + metas: { + '*': { + labelField: 'dictLabel', + valueField: 'dictValue', + request(dictMeta) { + return getDicts(dictMeta.type).then(res => res.data) + }, + }, + }, + }) +} + +export default { + install, +} \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/DictTag/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/DictTag/index.vue new file mode 100644 index 00000000..4c196c48 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/DictTag/index.vue @@ -0,0 +1,52 @@ + + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Editor/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Editor/index.vue new file mode 100644 index 00000000..28780126 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Editor/index.vue @@ -0,0 +1,322 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/FilePanel/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/FilePanel/index.vue new file mode 100644 index 00000000..8b41a52a --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/FilePanel/index.vue @@ -0,0 +1,493 @@ + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/FileUpload/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/FileUpload/index.vue new file mode 100644 index 00000000..aa2296b9 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/FileUpload/index.vue @@ -0,0 +1,209 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Hamburger/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Hamburger/index.vue new file mode 100644 index 00000000..368b0021 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Hamburger/index.vue @@ -0,0 +1,44 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/HeaderSearch/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/HeaderSearch/index.vue new file mode 100644 index 00000000..c44eff56 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/HeaderSearch/index.vue @@ -0,0 +1,190 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/IconSelect/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/IconSelect/index.vue new file mode 100644 index 00000000..b0ec9fa1 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/IconSelect/index.vue @@ -0,0 +1,68 @@ + + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/IconSelect/requireIcons.js b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/IconSelect/requireIcons.js new file mode 100644 index 00000000..99e5c54c --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/IconSelect/requireIcons.js @@ -0,0 +1,11 @@ + +const req = require.context('../../assets/icons/svg', false, /\.svg$/) +const requireAll = requireContext => requireContext.keys() + +const re = /\.\/(.*)\.svg/ + +const icons = requireAll(req).map(i => { + return i.match(re)[1] +}) + +export default icons diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/ImagePreview/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/ImagePreview/index.vue new file mode 100644 index 00000000..743d8d51 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/ImagePreview/index.vue @@ -0,0 +1,84 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/ImageUpload/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/ImageUpload/index.vue new file mode 100644 index 00000000..4068b672 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/ImageUpload/index.vue @@ -0,0 +1,212 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Pagination/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Pagination/index.vue new file mode 100644 index 00000000..9ec3e486 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Pagination/index.vue @@ -0,0 +1,114 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/PanThumb/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/PanThumb/index.vue new file mode 100644 index 00000000..1bcf4170 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/PanThumb/index.vue @@ -0,0 +1,142 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/ParentView/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/ParentView/index.vue new file mode 100644 index 00000000..7bf61489 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/ParentView/index.vue @@ -0,0 +1,3 @@ + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RightPanel/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RightPanel/index.vue new file mode 100644 index 00000000..fbf27eb4 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RightPanel/index.vue @@ -0,0 +1,149 @@ + + + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RightToolbar/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RightToolbar/index.vue new file mode 100644 index 00000000..b8130345 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RightToolbar/index.vue @@ -0,0 +1,97 @@ + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RuoYi/Doc/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RuoYi/Doc/index.vue new file mode 100644 index 00000000..75fa8641 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RuoYi/Doc/index.vue @@ -0,0 +1,21 @@ + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RuoYi/Git/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RuoYi/Git/index.vue new file mode 100644 index 00000000..bdafbaef --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/RuoYi/Git/index.vue @@ -0,0 +1,21 @@ + + + \ No newline at end of file diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Screenfull/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Screenfull/index.vue new file mode 100644 index 00000000..d4e539c2 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/Screenfull/index.vue @@ -0,0 +1,57 @@ + + + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/SizeSelect/index.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/SizeSelect/index.vue new file mode 100644 index 00000000..069b5de9 --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/SizeSelect/index.vue @@ -0,0 +1,56 @@ + + + diff --git a/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/SqlEditor/index copy.vue b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/SqlEditor/index copy.vue new file mode 100644 index 00000000..dbf1caaa --- /dev/null +++ b/sptcc_agile_etl/src/system/src/tags/agile-system-1.2.10/agile-system-console-ui/src/components/SqlEditor/index copy.vue @@ -0,0 +1,369 @@ +